Skip to content

Commit

Permalink
fix(docs): edits to agentverse my agents section to solve issues (#225)
Browse files Browse the repository at this point in the history
  • Loading branch information
FelixNicolaeBucsa authored Oct 27, 2023
1 parent ca9612e commit 0475533
Show file tree
Hide file tree
Showing 15 changed files with 78 additions and 36 deletions.
4 changes: 2 additions & 2 deletions pages/concepts.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -88,8 +88,8 @@ import { GuideBox } from "../components/feature-guide-tabs";
<Grid2>
<GuideBox
content={{
title: "Agentverse Hosting 🚢",
description: "The Agentverse hosting platform enables all users to get started quickly and to deploy agents to the cloud to start connecting and automating.",
title: "Agentverse: My Agents 🚢",
description: "The Agentverse My Agent platform enables all users to get started quickly and to deploy agents to the cloud to start connecting and automating.",
path: "/concepts/agent-services/agent-hosting"
}}
/>
Expand Down
2 changes: 1 addition & 1 deletion pages/concepts/agent-services/_meta.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,6 @@
"why-agentverse": "Why Agentverse \uD83E\uDD14\uD83D\uDCA1",
"getting-started": "Getting started \uD83C\uDFAF",
"agent-explorer": "The Agentverse Explorer \uD83E\uDD16\uD83C\uDF10",
"agent-hosting": "Agentverse Hosting \uD83D\uDEA2",
"agent-hosting": "Agentverse: My Agents \uD83D\uDEA2",
"agent-mail": "Mailroom / IoT Gateway \uD83D\uDCEB"
}
12 changes: 9 additions & 3 deletions pages/concepts/agent-services/agent-hosting.mdx
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# Hosting / My Agents 🚢
import { Callout } from 'nextra/components'

# Agentverse: My Agents 🚢

## An agent for everyone

Expand All @@ -10,11 +12,15 @@ With the world moving every increasingly towards and automated future, everyone

Deploying a new agent is quick and easy. You can have a new running agent deployed in a matter of a few clicks, and with many pre-made examples you can have an active agents doing tasks for you with ease. You can either choose to build an agent from a blank script, by clicking on **+ Agents**, or you can choose to create your agent based on a specified template, by clicking on **+ Use Case**.

The Agentverse Hosting section manages all the important steps about making sure that your agent stays online. With a targeted 100% uptime, your agent will not sleep unless you tell it to. By being a hosted agent it ensures that the agent is always kept up to date on the [Almanac ↗️](/references/contracts/uagents-almanac/almanac-overview) contract. It also manages your agent private keys for you too, keeping these safe and secure.
<Callout type="info" emoji="ℹ️">
You can checkout the [Creating a hosted agent 🤖 ↗️](/guides/agentverse/creating-a-hosted-agent) guide to get yourself started with creating an agent in the Agentverse.
</Callout>

The Agentverse My Agent section manages all the important steps about making sure that your agent stays online. With a targeted 100% uptime, your agent will not sleep unless you tell it to. By being a hosted agent it ensures that the agent is always kept up to date on the [Almanac ↗️](/references/contracts/uagents-almanac/almanac-overview) contract. It also manages your agent private keys for you too, keeping these safe and secure.

## Scaling

The Agentverse Hosting product is designed to scale automatically with the number of messages that your agent receives. The benefit for you is that you do not have to carry the hassle of deploying your agents continuously, given that we run them for you using cloud technology. This means that your agents will continue running and receive messages without the need of your presence for them to be deployed. Thus, as a developer, you can focus on making the most awesome agent code!
The Agentverse My Agent product is designed to scale automatically with the number of messages that your agent receives. The benefit for you is that you do not have to carry the hassle of deploying your agents continuously, given that we run them for you using cloud technology. This means that your agents will continue running and receive messages without the need of your presence for them to be deployed. Thus, as a developer, you can focus on making the most awesome agent code!

![](../../../src/images/scaling-hosting.png)

Expand Down
96 changes: 66 additions & 30 deletions pages/guides/agentverse/creating-a-hosted-agent.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -4,47 +4,68 @@ import { Callout } from 'nextra/components'

## Introduction

On the [Agentverse ↗️](https://agentverse.ai/), within the [Managed Agents ↗️](/concepts/agent-services/agent-hosting) section you are able to build and host any type of agent you wish to create. Bear in mind that managed agents are currently a beta feature and because of this, they do not fully support the complete uAgents toolset for development. Improvements and upgrades are foreseen in the future!
On the [Agentverse ↗️](https://agentverse.ai/), within the [My Agents ↗️](/concepts/agent-services/agent-hosting) section you are able to build and host any type of agent you wish to create. Bear in mind that managed agents are currently a beta feature and because of this, they do not fully support the complete [AI Agents ↗️](/concepts/agents/agents) toolset for development. Improvements and upgrades are foreseen in the future!

There are 2 different ways through which you can start creating your agents.

You can either choose to build an agent:
There are 2 different ways through which you can start creating your agents. You can either choose to build an agent:

1. From a blank script, by clicking on **+ Agents**.
2. From a specified use case, by clicking on **+ Use Case**.

## Creating an agent

By choosing the **+ Agents** button, you will first need to provide a name for the agent you plan to build.
Once you select it, your agent will be ready to be coded and a box will appear in the **Managed Agents** page with different data being displayed about the agent you have just created, including the agent's **name** and **address**.
You can create your AI Agent from a blank script by navigating towards the [Agentverse ↗️](https://agentverse.ai/), [sign in ↗️](/concepts/agent-services/getting-started) and choosing the **My Agents** tab. Here, click on the **+ Agents** button.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_1.png)

By choosing the **+ Agents** button, you will first need to provide a name for the agent you plan to build. For instance, let's create an agent named **alice**.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_2.png)

Once you select it, your agent will be ready to be coded and a box will appear in the **My Agents** page with different data being displayed about the agent you have just created, including the agent's **name** and **address**.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_3.png)

By clicking on this box, the code editor will appear allowing you to code your agent straightforwardly. This is the **Agent Editor**. You can use this editor to build the code for the agent you have in mind, edit, and refine it all in one place. The Agent Editor provides you with different fundamental information about your agent, including the **agent's address** and **wallet address**.

<Callout type="info" emoji="ℹ️">
The Agent Editor provides you with the possibility of structuring your project into multiple file windows located on the left side of the Editor window. You just need to provide a name to the new file being added.
</Callout>
<Callout type="info" emoji="ℹ️">
For additional information on AI Agent addresses, have a look at our dedicated documentation: [Getting an agent addresses 🤖📫 ↗️](/guides/agents/getting-uagent-address).
</Callout>

On this code editor, there is a built-in **agent.py** file that enables you to start coding straight away! To begin, you can use the `@agent.on_interval` decorator to create a simple script that prints something on the terminal every 3 seconds:
On the Agent Editor, there is a built-in **agent.py** file that enables you to start coding straight away! The Agent Editor provides you with the possibility of structuring your project into multiple file windows located on the left side of the Editor window. You just need to provide a name to the new file being added. An additional feature of the Agent Editor is that at the end of it you can find the **Agents Logs**, which is a built-in terminal displaying the output of your script after it is being run.

<Callout type="info" emoji="ℹ️">
This way, we aim at making agents' development as quick and efficient as possible. This is a great tool to determine if your code runs smoothly and to check if any error arises so for you to directly intervene and solve it if needed!
</Callout>

![](../../../src/images/agentverse/create-agent/agentverse-myagent_4.png)

## Create your first agent on the Agentverse!

You are now ready to start using the Agentverse to create and edit your agents in few minutes! To begin with, you can create a simple agent printing **"Hello world!"** in the Agent Logs on an interval of 3 seconds by using the `.on_interval()` decorator.

Here's an example:

```py copy
@agent.on_interval(period=3.0)
async def say_hello(ctx: Context):
print("Hello World!")
```
![](../../../src/images/agentverse/create-agent/agentverse-myagent_5.png)

To run the agent, simply click on the **Run** button. You can stop the script by clicking on the **Stop** button.

An additional feature of the Agent Editor is that at the end of it you can find the **Agents Logs**, which is a built-in terminal displaying the output of your script after it is being run. When running the example above you will observe "Hello World!" printed on the terminal.
The output will be printed in the Agent Logs window:

![](../../../src/images/agentverse/create-agent/agentverse-myagent_6.png)

<Callout type="info" emoji="ℹ️">
This way, we aim at making agents' development as quick and efficient as possible. This is a great tool to determine if your code runs smoothly and to check if any error arises so for you to directly intervene and solve it if needed!
</Callout>
<Callout type="info" emoji="ℹ️">
Within the Agent Editor, you can import and utilize a predefined set of modules to develop your ideas. These pre-approved modules offer a diverse range of functionalities, allowing you to build complex agents. For further information on modules being available within the Agentverse Editor, have a look at the following resource: [Agentverse: allowed imports ↗️](/guides/agentverse/allowed-imports).
</Callout>

## Create an agent based on a template

By choosing **+ Use Case**, you will be able to create an agent based on a specific **template**. There are different categories you can choose from:
You can also create an agent by choosing **+ Use Case** button. In this case you will be able to create an agent based on a specific **template**.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_7.png)

There are different categories you can choose from:

![](../../../src/images/agentverse/create-agent/agentverse-myagent_8.png)

1. **Getting Started**: this category helps you in creating basic agents using the uAgents technology.
You can:
Expand All @@ -67,19 +88,34 @@ By choosing **+ Use Case**, you will be able to create an agent based on a speci

You can choose among:

- **Weather Agents**: this allows you to develop agents retrieving weather data from weather services API.
- **Weather Data Provider and Consumer Agents**: this use case allows you to create two different agents, one providing weather data and another one consuming such data.
- **Weather Data Seller and Buyer Agents**: this use case allows you to create two different agents, one selling weather data and another one buying such data.
- **Weather Oracle Provider and Consumer Agents**: this use case allows you to create two different agents, one updating an oracle contract with weather data and another one requesting such data to the oracle by paying a small fee.
- _Weather Agents_: this allows you to develop agents retrieving weather data from weather services API.
- _Weather Data Provider and Consumer Agents_: this use case allows you to create two different agents, one providing weather data and another one consuming such data.
- _Weather Data Seller and Buyer Agents_: this use case allows you to create two different agents, one selling weather data and another one buying such data.
- _Weather Oracle Provider and Consumer Agents_: this use case allows you to create two different agents, one updating an oracle contract with weather data and another one requesting such data to the oracle by paying a small fee.

4. **DeltaV examples**: this category allows you to develop AI Agents offering different services which are then made available through the [DeltaV ↗️](/concepts/deltav/intro) Chat based on a given template. These agents and related services need to register within the dedicated [Agentverse services ↗️](/guides/agentverse/registering-agent-services) tab first so for them to be available for queries from users operating and interacting DeltaV AI Agent.

You can choose to:

- Create a DeltaV compatible agent requesting stock price of a share.

Let's assume you want to create your agent using the **Your first agent template**, from the **Getting Started** window.
Each template available presents a small number in the bottom right corner indicating the number of agents available for that particular template.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_9.png)

Whenever you choose one of the templates available to start building your agent, in the Agent Editor you will see some additional information appearing when clicking on the use case chosen, alongside with the baseline code needed to make it runnable. You can use this as a starting point for your ideas.

![](../../../src/images/agentverse/create-agent/agentverse-myagent_10.png)

The output in this case would be the following:

<Callout type="info" emoji="ℹ️">
Whenever you choose one of the templates available to start building your agent, in the **Agent Editor** you will see some additional information appearing when clicking on the use case chosen, alongside with the code needed to make it runnable. Additionally, each template available presents a small number in the right corner indicating the number of agents available for that particular template.
</Callout>
![](../../../src/images/agentverse/create-agent/agentverse-myagent_11.png)

## Register Domain Name

You can also provide a **Web3 Agent Name** to your agent. To do so, just click on **+ Register Web3 Name** and fill in the dedicated field for this. This way, your agent will be given a unique name, making it easier for other agents to find and communicate with it.

<Callout type="warning" emoji="⚠️">
The only requirement is _the name being in lowercase with no whitespaces in between_.
</Callout>
<Callout type="warning" emoji="⚠️">
The only requirement is _the name being in lowercase with no whitespaces in between_.
</Callout>
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 0475533

Please sign in to comment.