⚛️ AtomAgent
AtomAgent is a lightweight Python AI Agent framework that supports both synchronous and asynchronous modes, providing a clean tool registration mechanism for building intelligent agents with function calling capabilities.
✨ Key Features
- 🔌 Minimal Dependencies: Only depends on pure Python libraries, no Rust dependencies
- 🎯 OpenAI API Compatible: Supports all OpenAI API compatible LLMs
- 🔧 Flexible Tool System: Easy tool registration with decorators
- 🚀 Async Support: Full async implementation for high concurrency
- 📡 Multi-Tool Calling: Supports OpenAI's latest tools protocol
- 🔄 Streaming Output: Real-time streaming responses
- 📝 Detailed Logging: Built-in hierarchical logging system
📦 Installation
# Basic installation
pip install atomagent
🚀 Quick Start
from atomagent import AsyncAgent
# Create an agent
agent = AsyncAgent(
name="Assistant",
model="gpt-3.5-turbo",
api_key="your_api_key"
)
# Register a tool
@agent.tool()
def get_weather(city: str) -> str:
"""Get weather information for a city"""
return f"The weather in {city} is sunny"
# Run the agent
import asyncio
async def main():
response = await agent.run("What's the weather in Beijing?")
print(response)
asyncio.run(main())
📖 Documentation
For detailed documentation and examples, visit: https://github.com/liuyunrui123/AtomAgent
🤝 Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
📄 License
This project is licensed under the MIT License.
Metadata
Release files for atomagent 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| atomagent-0.1.0.tar.gz | 28.5 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| atomagent-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 44.0 kB
Release files / atomagent-0.1.0.tar.gz
| Download URL | atomagent-0.1.0.tar.gz |
|---|---|
| Size | 28.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b8f71b73cd39260d44820f1e6df7734c02279d2fbd9b3f782e088e30fdd3261c
|
|
BLAKE2b-256 checksum How to use checksums |
64eb8688969f4e46d2f7a222a225edf76435a951a729e1a0afccd9c0faa1d486
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|
Release files / atomagent-0.1.0-py3-none-any.whl
| Download URL | atomagent-0.1.0-py3-none-any.whl |
|---|---|
| Size | 15.5 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d46edbdff19bd049a68668a57afcbddbe1e707d6f6287f55b9fb5490f036bc20
|
|
BLAKE2b-256 checksum How to use checksums |
096adda0c707ab2264bbe360458e01783aff06f23aeca38c454b720e09c8b58d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.10.11
|