这个仓库用于记录 Agent、MCP 和 RAG 的基础练习代码。每个目录都是一个相对独立的小 demo,可以单独进入对应目录运行。
.
├── 01-简单的ReAct基础/
├── 02-如何书写自己的MCP/
└── 03-简单的RAG/
一个简单的 ReAct Agent 示例,演示如何让模型按照“思考、行动、观察”的流程调用工具并完成任务。
运行方式:
cd "01-简单的ReAct基础"
uv run agent.py result运行前需要在该目录下创建 .env:
OPENROUTER_API_KEY=xxx
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
OPENROUTER_MODEL=openai/gpt-4o一个 MCP Server 示例,位于:
02-如何书写自己的MCP/weather
其中 weather.py 定义了两个 MCP tool:
get_alerts:根据美国州代码查询天气预警get_forecast:根据经纬度查询天气预报
这个 MCP 使用 stdio transport,不需要手动启动长期运行的 HTTP server。只要在 Cline 等支持 MCP 的工具里配置好启动命令,客户端会在需要时自动拉起 Python 进程。
一个简单的 RAG 示例,流程包括:
- 读取
doc.md - 将文档切分成 chunks
- 使用 embedding 模型生成向量
- 将向量写入 ChromaDB
- 根据 query 召回相关片段
- 使用 CrossEncoder rerank
- 使用 OpenRouter 兼容 OpenAI SDK 生成最终回答
运行方式:
cd "03-简单的RAG/rag"
uv run main.py运行前需要在 03-简单的RAG/rag 下创建 .env:
OPENROUTER_API_KEY=xxx
OPENROUTER_BASE_URL=https://openrouter.ai/api/v1
OPENROUTER_MODEL=openai/gpt-4o项目使用 uv 管理 Python 依赖。每个 demo 都有自己的 pyproject.toml,建议进入具体 demo 目录后再运行 uv run。
仓库不会提交真实 .env 文件,也不会提交 .venv 虚拟环境目录。需要配置密钥时,请参考对应目录下的 .env.example。