原子代理
哲学
原子代理框架的设计目标是模块化、可扩展且易于使用。原子代理框架中的组件应尽可能小且单一用途,类似 Atomic Design 中的设计系统组件。尽管 Atomic Design 不能直接应用于 AI 代理架构,但很多理念都取自其中。由此产生的框架提供了一组工具和代理,可以组合创建强大的应用程序。该框架构建在 Instructor 之上,并利用 Pydantic 的数据验证和序列化功能。
安装
要安装原子代理,可以使用 pip 命令:
pip install atomic-agents
或者,在本地开发时,要从存储库中安装必要的依赖项,请在存储库的根目录中运行以下命令:
python -m venv venv
source venv/bin/activate # 在 Windows 上,使用 `venv\Scripts\activate.bat`
pip install -r requirements.txt
pip install -e .
快速入门
可以在 快速入门笔记本 中找到快速入门指南。更多指南和教程将很快添加! 同时,请浏览 示例 目录中的其他示例。
使用示例及文档
虽然我们尽力提供出色的文档,但我们意识到它并不完美。如果您发现有任何缺失或可以改进的地方,请不要犹豫,打开问题或提交拉取请求。
示例
所有示例可以在 示例 目录中找到。我们尽力对每个示例进行详细记录,但如果有不清楚的地方,请不要犹豫,打开问题或提交拉取请求以改进文档。
文档
文档可以在 文档 目录中找到。这里既有 API 文档,也有一些通用指南,例如 如何创建一个新工具。
Instructor 及模型兼容性
原子代理依赖于 Instructor 包。这意味着在所有使用 OpenAI 的示例中,任何其他由 Instructor 支持的 API 都可以使用,如 Cohere、Anthropic、Gemini 等。完整列表请参阅 Instructor 在其 GitHub 页面 上的文档。
此外,原子代理应该可以与 Ollama 或 LMStudio 一起使用。如果默认设置由于本地服务器不支持工具调用而无法工作,您可以将 mode
设置为 JSON。
格式化和代码检查
在提交代码之前,要格式化和检查代码,必须运行以下两个命令:
black atomic_agents
flake8 atomic_agents
测试
要运行测试,运行以下命令:
pytest --cov atomic_agents
要查看覆盖率报告,运行以下命令:
coverage html
贡献
我们欢迎贡献!请按照以下步骤进行贡献:
- Fork 这个存储库
- 创建一个新分支(
git checkout -b feature-branch
) - 进行更改
- 提交您的更改(
git commit -m 'Add some feature'
) - 推送到分支(
git push origin feature-branch
) - 打开一个拉取请求
许可证
该项目根据 MIT 许可证授权 - 详细信息请参阅 LICENSE 文件。