
Case Study / 05
co11ap5e_agent(轻量 ReAct Agent 框架)
不依赖 LangChain 的轻量 ReAct Agent 框架,用原生 OpenAI SDK 从零构建,兼容 DeepSeek / DashScope / OpenAI。
Background
项目背景
从零构建一个不依赖重型框架的 Agent 运行内核:只保留 openai / pydantic / httpx,用原生 SDK 实现 ReAct 主循环、工具调用与记忆管理,目标是让每一层都能逐行解释。
Responsibility
我的职责
独立完成框架设计、实现与测试。 - 实现 Thought → Action → Observation 的 ReAct 核心循环 - 用 @tool 装饰器从函数签名自动生成 OpenAI Function Calling JSON Schema - 构建短期(摘要压缩)、工作(任务 scratchpad)、长期(JSON 持久化)三层记忆体系 - 实现容错 JSON 解析与 Plan-and-Execute 规划器 - 处理工具超时、连续失败与最大迭代保护
Workflow
业务流程
- 01
接收用户任务
- 02
规划器判断是否需要拆解子任务
- 03
进入 ReAct 循环:思考 → 调工具 → 观察结果
- 04
工具执行与参数容错解析
- 05
结果写入短期记忆并维护工作记忆
- 06
达到目标后输出最终回答
Architecture
技术架构
仅依赖 openai / pydantic / httpx,核心为自研 ReAct 循环;记忆分短期 / 工作 / 长期三层;工具系统基于函数签名自动生成 Schema;提供 astream_chat 流式输出。
Engineering
工程亮点
- 零框架依赖,核心循环全自研
- 三层记忆体系按任务生命周期管理
- 容错解析 LLM 输出的不规范 JSON
- 支持 DeepSeek / DashScope / OpenAI 多后端
Retrospective
项目复盘
Agent 框架的价值不在于炫技,而在于把「思考-行动-观察」的主循环、记忆边界和错误恢复设计清楚。自研让每个行为都可解释,也方便面试时讲清设计取舍。
