Project Setup

Get an overview of the section and the essential supporting functions that we will build for the AutoGPT project, ensuring that all necessary components are in place for further development.

In this lesson, we’ll start setting up our project using the Rust concepts that we’ve learned so far. Let’s first get the gist of the supporting functions that we’ll use throughout our project.

Agents

Our project will consist of various agents, each with a distinct role. They will be built using similar characteristics, but their extended functionality will be different. Let’s discuss what each agent is supposed to be doing.

Project manager

This agent will be the one calling the shots and directing other agents to do the required work. It’ll start by creating the required agents for the project. This agent will have access to a fact sheet that contains all of the requirements that the project must fulfill in order to be considered complete. The project manager gives the solutions architect agent a description of the project that the user wants them to create.

Solutions architect

The solutions architect will define the scope of the project and will assign tasks to the backend developer. For example, the solutions architect will use the project description to determine whether any external APIs are required for the application and, based on that information, generate URLs for APIs that the backend developer can use.

Backend developer

The backend developer will use the data provided by both the project manager and the solutions architect to write the code required for the application. It should also be noted that the backend developer uses an existing code template as a reference for the code it writes. After it is done writing the code, it will also perform unit testing to confirm if the code is safe to run and performing as expected.

Workflow

As mentioned, our project will involve three agents, each performing specific tasks. The managing agent will manage all other agents. We’re going with the solutions architect and the backend developer. In this lesson, we’ll equip our agents with some abilities, which will allow them to make calls to a large language model and get back some kind of results, therefore we’ll need to ensure a couple of things:

  1. The agents will have the ability to call the AI functions that we’ll make.

Recall that AI functions, which will be output as text, will prompt a large language model to predict their outputs.
  1. The agents can convert the AI function into a structure that ChatGPT can understand. This means we’ll need to make sure our agents follow the API structure as defined in the documentation.

  2. The agents use a format that ensures ChatGPT returns the information we need for our project in the structure we need it.

Structuring the project

After creating our project with the cargo new command, we will structure it into separate modules tailored to our needs.

Get hands-on with 1400+ tech skills courses.