这是一个受 1rgs/nanocode 启发的极简 DeepSeek AI Agent 实现。它在核心逻辑上保持了高度简洁,专注于通过原生代码实现复杂的代理交互。
- 极简实现:参考 nanocode 思路,在约 300 行代码内实现了完整的 Agent 循环。
- 零第三方依赖:完全使用 Python 标准库(如
urllib.request处理网络请求,concurrent.futures处理并发),无需安装额外的 Pip 包。 - 并行工具执行:利用
ThreadPoolExecutor支持多个工具调用的并发执行,提升任务处理效率。 - 子代理架构:支持通过
explore工具派遣子代理处理海量搜索或总结任务。
- 设置环境变量:确保系统环境中包含 DeepSeek 的 API Key。
export DEEP_SEEK_AGENT_KEY="your_api_key_here"
`
- 配置模型:在
main.py中,你可以根据需求调整模型名称(默认使用deepseek-reasoner以启用思维链)。 - 运行程序:
uv run -m main
关于子代理(Sub-agent)的具体实现,你可以查看 src/tools.py 文件中的 explore 函数。
该工具展示了如何:
- 在工具内部重新实例化
DeepSeekLLM。 - 定义专用的系统提示词(
EXPLORE_SYSTEM_PROMPT)和受限的工具集(仅限read,glob,grep)。 - 通过递归调用
agent_loop让子代理独立完成任务并将结果返回给主代理。
MIT