
Archon 是一个用于构建、优化和管理 AI 代理的项目,被称为世界上第一个 “Agenteer”,即能够自主构建、改进和优化其他 AI 代理的 AI 代理。以下是对该仓库的详细介绍:
项目概述
- 核心功能:Archon 旨在展示现代 AI 开发中的三个关键原则,即代理推理、领域知识集成和可扩展架构。它可以作为开发者的实用工具,也可以作为教育框架,展示代理系统的发展。
- 版本迭代:项目采用迭代开发的方式,从简单的 Pydantic AI 代理开始,逐步发展到使用 LangGraph 的完整代理工作流,能够使用任何框架构建其他 AI 代理。
当前版本(V4)
- 特点:V4 版本进行了大规模的 Streamlit UI 改造,提供了一个全面的仪表盘界面,用于管理 Archon。
- 重要更新:环境变量系统进行了彻底的改进,更加直观,分为 LLM 和嵌入提供者的单独部分,方便在不同提供者之间切换和管理配置文件。
项目结构
- 主目录:包含主要的运行脚本(如
run_docker.py)、依赖文件(如requirements.txt)和 UI 脚本(如streamlit_ui.py)。 archon/目录:包含核心功能代码,如crawl_pydantic_ai_docs.py用于爬取和处理 Pydantic AI 文档,pydantic_ai_coder.py可能用于实现 Pydantic AI 代理的编码逻辑。streamlit_pages/目录:包含 Streamlit UI 的各个页面,如agent_service.py、chat.py、database.py等,分别对应不同的功能模块。iterations/目录:包含项目的各个迭代版本的代码,如v1-single-agent、v2-agentic-workflow、v3-mcp-support和v4-streamlit-ui-overhaul。mcp/目录:可能包含 MCP(Multi – Container Platform)相关的代码和配置。
数据库设置
- SQL 文件:
utils/site_pages.sql和iterations/v2-agentic-workflow/ollama_site_pages.sql用于创建和配置 PostgreSQL 数据库,包括启用pgvector扩展、创建site_pages表、添加索引和定义搜索函数等。
Docker 支持
- 脚本:
run_docker.py和iterations/v4-streamlit-ui-overhaul/run_docker.py用于构建和运行 Archon 的 Docker 容器,包括构建 MCP 容器和主 Archon 容器,处理环境变量,并在容器已运行时停止和删除现有容器。
数据结构
ChatMessage类:在Archon/iterations/v1-single-agent/streamlit_ui.py中定义,用于表示发送到浏览器或 API 的消息的格式,包含role、timestamp和content字段。ProcessedChunk类:在多个文件中定义,如Archon/archon/crawl_pydantic_ai_docs.py、Archon/iterations/v1-single-agent/crawl_pydantic_ai_docs.py等,用于表示处理后的文档块,包含url、chunk_number、title、summary、content、metadata和embedding字段。
快速开始
前提条件
- Docker(可选但推荐)
- Python 3.11+
- Supabase 账户(用于向量数据库)
- OpenAI/Anthropic/OpenRouter API 密钥或 Ollama 用于本地大语言模型
安装步骤
- Docker 方式(推荐):
- 克隆仓库:
git clone https://github.com/coleam00/archon.git && cd archon - 运行 Docker 脚本:
python run_docker.py - 访问 Streamlit UI:
http://localhost:8501
- 克隆仓库:
- 本地 Python 安装方式:
- 克隆仓库:
git clone https://github.com/coleam00/archon.git && cd archon - 创建虚拟环境并安装依赖:
python -m venv venv && source venv/bin/activate && pip install -r requirements.txt - 启动 Streamlit UI:
streamlit run streamlit_ui.py - 访问 Streamlit UI:
http://localhost:8501
- 克隆仓库:
重要链接
- V4 文档:V4 Documentation
- 社区论坛:Archon community
- GitHub 看板:GitHub Kanban board