AI Agent Framework for building intelligent agents with multiple LLM providers
Project description
Demiurg
A flexible AI agent framework for building intelligent agents with support for multiple LLM providers.
Features
- 🚀 Simple, minimal API for quick agent creation
- 🔌 Support for multiple LLM providers (OpenAI, Anthropic, Google, etc.)
- 📬 Built-in messaging system with conversation history
- 📁 File handling capabilities (images, audio, text)
- 🔧 Extensible tool system with Composio integration
- 🏗️ Production-ready with built-in queue management
- 🐳 Designed for both cloud and local container deployment
Installation
pip install demiurg
Quick Start
from demiurg import Agent
# Create an agent with default configuration
agent = Agent()
# Or customize your agent
agent = Agent(
name="My Custom Agent",
model="gpt-4",
temperature=0.7,
provider="openai"
)
Basic Usage
Sending Messages
from demiurg import send_text, send_file
# Send a text message
await send_text(conversation_id, "Hello from my agent!")
# Send a file
await send_file(conversation_id, "/path/to/file.png", caption="Check this out!")
Getting Conversation History
from demiurg import get_conversation_history
# Get formatted conversation history
messages = await get_conversation_history(
conversation_id,
limit=50,
provider="openai" # Format for specific LLM provider
)
Custom Agent Implementation
from demiurg import Agent
class MyAgent(Agent):
def __init__(self):
super().__init__(
name="Helpful Assistant",
model="gpt-4",
system_prompt="You are a helpful AI assistant."
)
async def process_message(self, message, provider="openai"):
# Add custom logic here
response = await super().process_message(message, provider)
return response
agent = MyAgent()
Environment Variables
The framework uses environment variables for configuration:
DEMIURG_BACKEND_URL: Backend API URL (default:http://backend:3000)DEMIURG_AGENT_TOKEN: Authentication tokenDEMIURG_AGENT_ID: Unique agent identifierOPENAI_API_KEY: OpenAI API key (for OpenAI provider)COMPOSIO_API_KEY: Composio API key (for tool integration)
Provider Support
Currently supported:
- ✅ OpenAI (GPT-3.5, GPT-4, etc.)
Coming soon:
- 🚧 Anthropic (Claude)
- 🚧 Google (Gemini)
- 🚧 Cohere
- 🚧 Local models
Development
For development access and contribution guidelines, please contact support@demiurg.ai.
License
Copyright © 2024 Demiurg AI. All rights reserved.
This is proprietary software. See LICENSE file for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file demiurg-0.1.2.tar.gz.
File metadata
- Download URL: demiurg-0.1.2.tar.gz
- Upload date:
- Size: 18.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
6cef897a692485e991ce2e94eedcffb9569f28a88aa9f27d8576a6df28fe8947
|
|
| MD5 |
6746c114a31bc8ae4cbecb35bbef5876
|
|
| BLAKE2b-256 |
754d975b9f305b04620e665a0869d184dd9fc7319c9ae08bb6d367eeb5b0f437
|
File details
Details for the file demiurg-0.1.2-py3-none-any.whl.
File metadata
- Download URL: demiurg-0.1.2-py3-none-any.whl
- Upload date:
- Size: 23.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c53359b6e633cd77f2fc61b65fa5869fbd2048de6604263d6fd570bf4dabdd06
|
|
| MD5 |
8ccd43e95eb8fc41d293e503bc47a408
|
|
| BLAKE2b-256 |
7b91802fde127e0d4496163f37332454d1b176718e3fc1cc36352ba8642d8cf2
|