Skip to content

ReinerBRO/ShallowAgents

Repository files navigation

🌊 ShallowAgents: 轻量级智能体开发核心指南

Python License Code_Style

ShallowAgents 是一个专为开发者设计的 Agent 核心原理教学项目。

核心宗旨:拒绝过度封装,剔除所有非核心的兼容性逻辑与异步噪音。仅使用 Python 原生数据结构与 OpenAI SDK,用 < 400 行 的总代码量,拆解智能体(Agent)的底层运行机制。


💎 技术模块概览 (Core Matrix)

我们通过 8 个完全独立的脚本,解构了现代 Agent 的全套支柱。

序号 模块名称 核心功能 逻辑代码量 学习目标
01 基础调用 模型交互与角色定义 < 30 行 显式区分 system_prompt (规则) 与 user_prompt (指令)。
02 对话记忆 上下文维持机制 < 45 行 通过手动拼接历史对话 (Prompt Injection),还原记忆的物理本质。
03 工具调用 外部函数集成 < 80 行 实现 Function Calling 闭环:指令识别 -> 本地执行 -> 数据回传。
04 推理循环 自主决策引擎 (ReAct) < 70 行 基于 ReAct 模式,利用 while 循环驱动 Agent 实现思考-行动闭环。
05 知识检索 RAG 技术原型 < 50 行 实现"检索-增强-生成"全流程,解决模型时效性与幻觉问题。
06 自我反思 多轮审阅与修正 < 50 行 通过"生成-评审-优化"的博弈架构,提升复杂任务输出质量。
07 多智能体 协作与任务分发 < 60 行 学习不同 Agent (如 Planner 与 Executor) 之间如何通信与协作。
08 MCP 原型 工具发现与解耦 < 50 行 模拟 Model Context Protocol 协议,实现工具的动态发现与远程调用。

🛠️ 快速开始 (Quick Start)

1. 环境配置

只需安装最基础的依赖:

pip install openai python-dotenv

2. 密钥设置

参考仓库中的 .env.example 创建 .env 文件。

3. 运行实战

本项目各模块完全独立,没有任何耦合。你可以按顺序运行以下脚本来体验 Agent 的进化之路:

# [选修] 综合演示:体验集成多智能体与 MCP 理念的系统原型
python main.py

# 01. 体验最基础的 Agent 对话与人设切换
python 01_llm_basic.py

# 02. 体验具备"短期记忆"的对话(观察 Prompt 拼接过程)
python 02_memory_chat.py

# 03. 体验 Agent 如何自主操控 Python 函数(查天气)
python 03_tool_use.py

# 04. 体验 ReAct 循环:Agent 如何通过多步推理解决数学题
python 04_react_loop.py

# 05. 体验 RAG:Agent 如何检索外部知识库回答问题
python 05_simple_rag.py

# 06. 体验自我反思:Agent 如何通过禁词挑战完成自我修正
python 06_reflection.py

# 07. 体验多智能体协作:Planner (规划者) 与 Executor (执行者)
python 07_multi_agent.py

# 08. 体验 MCP 协议:模拟工具的动态发现与远程调用过程
python 08_mcp_concept.py

💡 为什么选择 ShallowAgents?

  • 透明 (Transparent):没有黑盒封装。没有复杂的类继承和 Pydantic 模型,代码即是最好的文档。
  • 解耦 (Decoupled):每个功能模块完全独立。你可以像查字典一样,运行并修改任意一个核心组件。
  • 标准 (Standardized):统一采用 invoke / chat 等行业标准命名,严格遵循 OpenAI 协议规范。

🔌 支持的模型供应商 (Supported Providers)

本项目基于 OpenAI SDK 标准协议,理论上支持所有兼容 OpenAI 格式的模型供应商。我们已经在 .env.example 中提供了以下厂商的配置模板:

  • OpenAI (GPT-4o, GPT-4o-mini 等)
  • DeepSeek (性价比首选,深度求索系列)
  • Alibaba Qwen (阿里通义千问系列)
  • Zhipu AI (智谱 GLM 系列)
  • 各中转代理服务 (如智增增等)

Enjoy Coding! 🚀

About

轻量级智能体开发核心指南

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages