{"repo": "altergom/go-agent", "files": {"README.md": {"8575a1e1003d3068c4aafb472db9b9295dcb220e": {"t": 1785674252.672224, "n": 13217, "h": "1ecf4a4476317d67", "c": "# Go-Agent\n\n
\n \n
\n
\n
\n
\n 祝大家2026offer多多福满年❤️
\n
\n \n
\n
\n
\n
\n 祝大家2026offer多多福满年❤️
\n
\n \n
\n
\n
Built with ❤️ by the Go-Agent Community
\n"}, "08f366c9a8e65e0467b52042723f4b96739ff582": {"t": 1785766584.1414912, "n": 1587, "h": "3a1a22b30b15f114", "c": "# Go-Agent: 大模型工程化实践与教学项目\n\n[](https://go.dev/)\n[](https://github.com/cloudwego/eino)\n\n## 📌 项目定位\n\n本项目不仅是一个基于 **CloudWeGo-Eino** 构建的 AI Agent 示例,更是一份深度面向**大模型工程化面试与实战**的教学指南。我们旨在通过具体的代码实现,向开发者展示如何将 RAG、MCP、HITL等前沿技术落地于生产环境。\n\n---\n\n## 🏗️ 核心架构设计\n\n项目采用组件化设计,严格遵循 Eino 的编排理念,将 AI 能力抽象为可插拔的节点:\n\n### 1. 模型层 (Model & Embedding)\n\n* **多模型工厂**: 统一封装了 Ark (豆包)、OpenAI、Qwen、DeepSeek 等主流模型。\n* **配置驱动**: 通过环境变量实现模型热切换。\n\n### 2. 闭环 SFT 系统 (Self-Evolution Loop)\n\n这是本项目的核心亮点,实现了一套“自我进化”的数据工厂:\n\n* **自动采集**: 通过 Eino Callbacks 机制,无侵入式拦截 ChatModel 的输入输出。\n* **自动标注**: 引入“教师模型”对原始响应进行打分和修正,实现间接蒸馏。\n\n### 3. 推理加速组件 (Inference Optimization)\n\n* **投机采样 (Speculative Sampling)**: 模拟应用层投机采样逻辑,利用“学生模型”抢跑,“教师模型”核验。\n* **TTFT 优化**: 侧重于首字响应延迟优化,通过流式差异化更新提升用户感知速度。\n\n---\n\n## 📂 目录结构说明\n\n```bash\n├── api/ # 接入层:RESTful 路由与业务逻辑转换\n├── config/ # 配置层:环境变量加载与全局单例管理\n├── model/ # 抽象层:ChatModel 与 EmbeddingModel 的工厂实现\n│ ├── chat_model/ # 支持多厂商注册与按需实例化\n├── rag/ # 核心层:检索增强生成(RAG)的完整编排\n│ ├── tools/ # RAG 原子组件:Loader, Splitter, Indexer, Retriever\n│ ├── compose/ # 编排逻辑:Graph 有向无环图的构建\n├── tool/ # 工具层:SFT 采集、标注、投机采样逻辑\n│ ├── sft/ # 包含自动标注器、存储管理与导出工具\n├── main.go # 入口:全局组件初始化与 Web 服务启动\n```\n\n---\n\n## 🚀 快速开始\n\n请参考 `.env.example` 配置你的 API Key,然后运行:\n\n```bash\ngo run .\n```\n\n---\n\n## 🎓 教学目标\n\n我们希望通过本项目,让你掌握:\n\n1. 如何设计一个高可扩展的模型工厂。\n2. 如何利用 Eino 的 **Graph (DAG)** 编排复杂的多节点逻辑。\n3. 如何构建自动化数据闭环,为模型微调积累高质量语料。\n4. 如何在业务层实现推理加速策略,平衡成本、智力与速度。\n"}, "ff8051f582868a1b0904f14f5e65f0445d346e41": {"t": 1785766585.3351574, "n": 1538, "h": "868b64ba18724cd1", "c": "# go-agent\n\n基于 Eino 构建的数据分析/处理智能体示例项目,目标是尽可能覆盖常见 LLM 技术栈,作为入门与实践参考。\n\n当前实现重点在 RAG 方向,后续计划扩展 Multi-Agent 与 HITL。\n\n## 功能特性\n\n- 基础对话与流式对话接口\n- RAG 文档入库与召回答复\n- Milvus 向量数据库集成\n- 简单的前端/HTML 测试页面\n- 支持 Ark / OpenAI ChatModel(Embedding 当前使用 Ark)\n\n## 目录结构\n\n- `api/`:HTTP 接口与路由\n- `config/`:配置与环境变量加载\n- `model/`:聊天模型封装\n- `rag/`:RAG 相关工具与编排\n- `tool/`:通用工具函数\n- `front/`:前端相关(预留/实验)\n- `template/`:模板资源(预留/实验)\n- `*.html`:本地测试页面\n\n## 快速开始\n\n### 1) 环境准备\n\n- Go 1.20+(建议)\n- Milvus(本地或 Docker)\n\nMilvus 启动参考:`rag/README.md`\n\n### 2) 配置环境变量\n\n在项目根目录创建 `.env`,示例:\n\n```env\n# 模型类型(ChatModel 支持 ark/openai)\nCHAT_MODEL_TYPE=ark\nEMBEDDING_MODEL_TYPE=ark\n\n# Ark 配置\nARK_KEY=your_api_key\nARK_CHAT_MODEL=your_chat_model\nARK_EMBEDDING_MODEL=your_embedding_model\n\n# OpenAI 配置(当 CHAT_MODEL_TYPE=openai 时生效)\nOPENAI_KEY=your_api_key\nOPENAI_CHAT_MODEL=gpt-4\n\n# Milvus 配置\nMILVUS_ADDR=localhost:27017\nMILVUS_USERNAME=\nMILVUS_PASSWORD=\nMILVUS_COLLECTION=eino_collection\nSIMILARITY_THRESHOLD=\nMILVUS_TOPK=10\n```\n\n### 3) 启动服务\n\n```bash\ngo run .\n```\n\n服务默认监听 `:8080`。\n\n## 测试页面\n\n该页面在分支:`retrieve-fix`生效\n\n启动后可直接访问\n\n- `http://localhost:8080/chat_test.html`:基础对话测试\n- `http://localhost:8080/rag_index.html`:RAG 文档入库\n- `http://localhost:8080/rag_ask.html`:RAG 召回答复\n\n根路径 `/` 会自动跳转到可用的测试页面。\n\n## API 简要说明\n\n- `POST /api/chat/test`:常规对话\n- `POST /api/chat/test/stream`:流式对话\n- `POST /api/document/insert`:文档入库\n- `POST /api/rag/ask`:RAG 问答\n- `GET /api/milvus/collections`:列出集合\n- `DELETE /api/milvus/collections/:name`:删除集合\n\nRAG 说明\n\nRAG 构建、Milvus 启动与相关说明见 `rag/README.md`。\n\n## 许可\n\n本项目采用 `LICENSE` 中声明的开源协议。\n"}, "65aa2b4b1471eddc4087e8805a50e2895714ad16": {"t": 1785766586.825964, "n": 55, "h": "35ebd95942bb9576", "c": "# go-agent\n基于Eino实现数据分析处理智能体,目标尽可能的综合常见llm技术使该项目成为入门教程\n"}}}}