The Eidolon framework represents a sophisticated architecture for designing and operating agent-based systems. It is purpose-built to support the agile development of software agents—modular components designed to perform specific tasks autonomously within a distributed computing environment. At its core, the eidolon system facilitates an extensive range of functionalities, enabling developers to construct, customize, and scale agent operations effectively.
Deploy a Chatbot: Help Swifties learn about Kelce
- Python 3.11
- OpenAI api key: You should have an envar OPENAI_API_KEY set to your OpenAI api key.
First, you need to install the Eidolon SDK. Open your terminal and run the following command:
pip install eidolon-ai-sdk
Now it is time to create your first AgentProgram. Create a directory and add a yaml file to describe your resource.
mkdir hello_world
vim hello_world/hello_world_agent.yaml
apiVersion: eidolon/v1
kind: Agent
metadata:
name: hello_world
spec:
description: "This is an example of a generic agent which greets people by name."
system_prompt: "You are a friendly greeter who greets people by name while using emojis"
actions:
- user_prompt: "Hi, my name is {{name}}"
Finally, open a new terminal window and run your machine using eidolon-server.
eidolon-server -m local_dev hello_world
🚨 Getting command not found: eidolon-server
? Open a new terminal window and try the command again.
-m local_dev
option specifies using the local_dev
builtin Machine resource. This machine uses in-memory symbolic memory rather than mongo, so state will disappear between server restarts.
First create a process for your conversation.
curl -X POST http://0.0.0.0:8080/agents/hello_world/processes; echo
The result should be a json object with a process id. For example:
{"process_id":"hello_world-1"}
Now let's try to make a request to your server from another terminal window.
curl -X POST http://0.0.0.0:8080/agents/hello_world/processes/{process_id}/actions/converse -H 'Content-Type: application/json' -d '{"name": "World"}'; echo
Replace {process_id}
with the process id you received from the previous command.
You should now see something like Hello, World! 🌍👋
And that's it! You have successfully set up and used a basic project using the Eidolon SDK. To see more endpoints on your agent machine, visit the swagger ui.
For full documentation, visit www.eidolonai.com.