综合介绍
Archon 是由开发者 Cole Medin(GitHub 用户名 coleam00)打造的全球首个“Agenteer”项目——一个专注于自主构建、优化和迭代 AI 智能体的开源框架。它既是开发者的实用工具,也是一个展示智能体系统进化过程的教育平台。Archon 当前版本为 V4,采用全面优化的 Streamlit UI,提供直观的管理界面。项目基于 Python 开发,整合 Pydantic AI、LangGraph 和 Supabase 等技术,从简单的智能体生成逐步进化到复杂的工作流协作。Archon 通过规划、反馈循环和领域知识整合,展示现代 AI 开发的三大原则:智能推理、知识嵌入和可扩展架构。
Archon 我愿称之为其他智能体开发框架 的“寄生兽”,Archon 可以构建并优化其他智能体开发框架,同时他本身也是一个智能体。
功能列表
- 智能体自动生成:根据用户输入需求,生成定制化的 AI 智能体代码。
- 文档爬取与索引:爬取 Pydantic AI 等文档,生成向量嵌入并存储至 Supabase。
- RAG 系统支持:利用检索增强生成技术,提供精准的代码建议和优化。
- Streamlit UI 管理:通过可视化界面配置环境变量、数据库和智能体服务。
- 多智能体协作:基于 LangGraph 实现推理、编码和任务路由的协调工作流。
- 本地与云端兼容:支持 OpenAI、Anthropic、OpenRouter API 或本地 Ollama 模型。
- Docker 容器化部署:提供主容器和 MCP 容器,确保生产环境开箱即用。
- MCP 集成:支持与 AI IDE(如 Windsurf、Cursor)集成,管理文件和依赖。
- 社区支持:通过 oTTomator Think Tank 论坛提供用户交流平台。
使用帮助
Archon 是一个功能丰富的开源框架,旨在帮助用户快速开发和管理 AI 智能体。以下是详细的安装和使用指南,确保你能轻松上手。
安装流程
Archon V4 支持两种安装方式:Docker(推荐)和本地 Python 安装。以下是具体步骤:
方式 1:Docker 安装(推荐)
- 准备环境
- 确保安装 Docker 和 Git。
- 获取 Supabase 账户(用于向量数据库)。
- 准备 OpenAI/Anthropic/OpenRouter API 密钥,或本地运行 Ollama。
- 克隆仓库
在终端运行:git clone https://github.com/coleam00/archon.git cd archon
- 运行 Docker 脚本
执行以下命令构建并启动容器:python run_docker.py
- 脚本会自动构建两个容器:主 Archon 容器(运行 Streamlit UI 和 Graph 服务)和 MCP 容器(支持 AI IDE 集成)。
- 若存在
.env
文件,环境变量将自动加载。
- 访问界面
打开浏览器,访问http://localhost:8501
,进入 Streamlit UI。
方式 2:本地 Python 安装
- 准备环境
- 确保 Python 3.11+ 已安装。
- 获取 Supabase 账户和 API 密钥。
- 克隆仓库
git clone https://github.com/coleam00/archon.git cd archon
- 创建虚拟环境并安装依赖
python -m venv venv source venv/bin/activate # Windows: venv\Scripts\activate pip install -r requirements.txt
- 启动 Streamlit UI
streamlit run streamlit_ui.py
- 访问界面
打开浏览器,访问http://localhost:8501
。
环境变量配置
无论是 Docker 还是本地安装,首次运行需配置环境变量。创建一个 .env
文件,内容示例:
OPENAI_API_KEY=your_openai_api_key
SUPABASE_URL=your_supabase_url
SUPABASE_SERVICE_KEY=your_supabase_service_key
PRIMARY_MODEL=gpt-4o-mini
REASONER_MODEL=o3-mini
这些信息可在 Supabase 仪表板和 API 提供商处获取。
功能操作流程
安装完成后,Streamlit UI 提供五个主要功能模块,逐步引导你完成设置和使用。
1. 环境配置(Environment)
- 操作步骤:
- 进入“Environment”标签。
- 输入 API 密钥(如 OpenAI 或 OpenRouter)和模型设置(如
gpt-4o-mini
)。 - 点击“保存”,配置会存储到
env_vars.json
。
- 注意:若使用本地 Ollama,需确保服务运行在
localhost:11434
,并仅 OpenAI 支持 UI 流式传输。
2. 数据库设置(Database)
- 操作步骤:
- 进入“Database”标签。
- 输入 Supabase URL 和服务密钥。
- 点击“初始化数据库”,系统自动创建
site_pages
表。 - 检查连接状态,确认成功。
- 表结构:
CREATE TABLE site_pages ( id UUID PRIMARY KEY DEFAULT uuid_generate_v4(), url TEXT, chunk_number INTEGER, title TEXT, summary TEXT, content TEXT, metadata JSONB, embedding VECTOR(1536) );
3. 文档爬取与索引(Documentation)
- 操作步骤:
- 进入“Documentation”标签。
- 输入目标文档 URL(如 Pydantic AI 文档)。
- 点击“开始爬取”,系统将文档分块、生成嵌入并存储至 Supabase。
- 完成后可在 UI 查看索引进度。
- 用途:为 RAG 系统提供知识基础。
4. 智能体服务(Agent Service)
- 操作步骤:
- 进入“Agent Service”标签。
- 点击“启动服务”,运行 LangGraph 工作流。
- 通过日志监控服务状态。
- 功能:协调推理、编码和任务路由,确保生成智能体的核心逻辑正常运行。
5. 创建智能体(Chat)
- 操作步骤:
- 进入“Chat”标签。
- 输入需求,如“生成一个分析 JSON 文件的智能体”。
- 系统结合 RAG 系统检索知识,生成代码并显示。
- 复制代码到本地运行,或通过服务部署。
- 示例:
输入:“生成一个查询实时天气的智能体”。
输出示例:from pydantic_ai import Agent, OpenAIModel agent = Agent(OpenAIModel("gpt-4o-mini"), system_prompt="查询实时天气") result = agent.run("获取北京今天的天气") print(result.data)
可选:MCP 配置
- 操作步骤:
- 进入“MCP”标签。
- 配置与 AI IDE(如 Cursor)的集成。
- 启动 MCP 容器,连接 Graph 服务。
- 用途:支持智能体代码在 IDE 中自动创建文件和管理依赖。
使用示例
假设你想开发一个“日志分析智能体”:
- 在“Chat”输入:“生成一个解析 Nginx 日志的 Pydantic AI 智能体”。
- Archon 检索相关文档,生成代码:
from pydantic_ai import Agent, OpenAIModel
agent = Agent(OpenAIModel("gpt-4o-mini"), system_prompt="解析Nginx日志")
result = agent.run("分析access.log并提取IP地址")
print(result.data)
- 将代码保存到本地,运行前确保配置 API 密钥。
注意事项
- 模型兼容性:仅 OpenAI 支持 Streamlit UI 的流式输出,其他模型(如 Ollama)仅支持非流式。
- 网络要求:爬取文档和调用 API 需稳定网络。
- 调试:若出错,可查看 UI 日志或终端输出。
通过以上步骤,你可以充分利用 Archon 的功能,快速生成和管理 AI 智能体,无论是学习还是实际开发都得心应手。