用途:在 Bitlysis 项目中构建或修改 LLM 功能、设计 AI 智能体工作流(ReAct、工具调用、多智能体)、实现 RAG 管道、编写评估测试用例或黄金数据集、集成 LLM API(OpenAI、Anthropic、Google Gemini)、开发 MCP 服务器。适用于 /agents/、/llm/、/rag/、/eval/、/mcp/ 等目录下的文件。
主要能力与规范:
- 安全优先:API 密钥仅通过环境变量读取,禁止硬编码;将外部内容(用户上传、网页抓取、爬取文档)视为潜在提示注入,需净化或沙箱处理;禁止将原始用户输入直接拼入系统提示。
- 工具/函数调用:为所有工具定义严格 schema(如 zod),使用前验证工具输出。
- 可观测性与日志:使用结构化日志记录 trace_id、模型、token 用量与延迟,失败时记录错误。
- RAG 管道:查询→嵌入(与索引同模型)→向量搜索(HNSW、余弦相似度)→混合重排→过滤(相关性>0.75)→上下文组装(带来源引用)→LLM 生成→带引用来源的响应。分块建议 512 token、50 token 重叠,存储元数据,使用稠密向量+BM25 稀疏混合搜索。
- 智能体架构:设置最大迭代次数(如 10)防止无限循环,超出则抛出超时错误。
- 评估:维护黄金测试用例 JSON,包含输入、期望包含/不包含内容、最低忠实度分数,使用 pytest 运行。
- 限流与成本控制:使用 tenacity 重试(最多 3 次,指数退避 4-60 秒)。
输出要求:所有 LLM 功能必须包含带 trace_id 的结构化日志、输入/输出 schema 验证、带用户可见消息的错误处理,以及至少一个评估黄金测试用例。
限制:资料未提供具体安装命令、收费信息或平台支持细节;部分代码示例为示意,实际实现需结合项目环境。