Eidolon
An Open Source Agent Services Framework
Eidolon makes it easy to build, deploy, and manage agents and other generative ai services.
Step 0: Prerequisites
- Python 3.11
- OpenAI api key: You should have an envar OPENAI_API_KEY set to your OpenAI api key.
Step 1: Install Eidolon SDK
First, you need to install the Eidolon SDK. Open your terminal and run the following command:
pip install eidolon-ai-sdk
Step 2: Create an Agent
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}}"
Step 3: Run Eidolon Server
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.
⚠️ The -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.
Step 4: Try it out!
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.
Further Reading
For full documentation, visit www.eidolonai.com.
Metadata
Release files for eidolon-ai-sdk 0.1.20
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| eidolon_ai_sdk-0.1.20.tar.gz | 86.5 kB | Without provenance | Details for eidolon_ai_sdk-0.1.20.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| eidolon_ai_sdk-0.1.20-py3-none-any.whl | Python 3 | none | any | Details for eidolon_ai_sdk-0.1.20-py3-none-any.whl |
Total release size: 217.6 kB
Release files / eidolon_ai_sdk-0.1.20.tar.gz
| Download URL | eidolon_ai_sdk-0.1.20.tar.gz |
|---|---|
| Size | 86.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
a7bb8c5846331fc017b1185b20db93fd09f27f5ed261d086d4d7e0604165b4c1
|
|
BLAKE2b-256 checksum How to use checksums |
0a5596e3549ff1a86e290d6571ce5758633aec0c651d244f5dbed5130ecd610b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.2 CPython/3.10.12 Linux/6.5.0-1015-azure
|
Release files / eidolon_ai_sdk-0.1.20-py3-none-any.whl
| Download URL | eidolon_ai_sdk-0.1.20-py3-none-any.whl |
|---|---|
| Size | 131.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3a7e2983de07e055a15f1bfa7ada90bc551181096d62955571ca387e5f0f9bb0
|
|
BLAKE2b-256 checksum How to use checksums |
81246e894b5a00eaa7e962e092e0240ff9ad2da96b37faa889038b0fc5b3886f
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
poetry/1.8.2 CPython/3.10.12 Linux/6.5.0-1015-azure
|
Security for eidolon-ai-sdk 0.1.20
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.