欢迎来到 Ollama Pydantic 项目!该项目展示了如何使用本地 Ollama 模型与 Pydantic 代理框架相结合来创建一个智能代理。该代理通过连接到 MCP 服务器来利用工具,并使用 Streamlit 提供用户友好的界面。
此项目是博客文章的一部分:构建 TypeScript MCP 服务器:集成现有服务指南。访问博客以了解更多关于此项目的概念和实现细节。
该项目的主要目标是展示以下内容:
在设置项目之前,请确保满足以下条件:
ollama serve
http://localhost:11434/v1 上运行。按照以下步骤设置项目:
克隆仓库:
git clone <repository-url>
cd ollama-pydantic-project
创建虚拟环境:
python3 -m venv venv
激活虚拟环境:
source venv/bin/activate
venv\Scripts\activate
安装依赖项:
pip install -r requirements.txt
确保 Ollama 服务器正在运行: 按照预备条件中的说明启动 Ollama 服务器。
运行应用程序: 启动 Streamlit 应用程序:
streamlit run src/streamlit_app.py
一旦应用程序运行起来,在浏览器中打开提供的 URL(通常是 http://localhost:8501)。您可以通过在输入框中键入查询与聊天机器人互动。代理将使用 Ollama 模型和 MCP 服务器提供的工具处理您的查询。
以下是与代理交互时聊天机器人界面的示例:

项目组织如下:
ollama-pydantic-project/
├── src/
│ ├── streamlit_app.py # 主 Streamlit 应用程序
│ ├── agents/
│ │ ├── base_agent.py # 代理的抽象基类
│ │ ├── ollama_agent.py # Ollama 代理的实现
│ ├── utils/
│ ├── config.py # 配置设置
│ ├── logger.py # 日志实用工具
├── requirements.txt # Python 依赖项
├── README.md # 项目文档
├── assets/
│ ├── ollama_agent_mcp_example.png # 示例交互图像
├── .gitignore # Git 忽略文件
此项目与另一个 GitHub 项目密切相关,该项目演示了如何设置 MCP 服务器:Hello World MCP 服务器。与该项目相关的博客文章,构建 TypeScript MCP 服务器:集成现有服务指南,提供了补充此项目的额外背景和实现细节。
http://localhost:11434/v1 上运行。本项目根据 MIT 许可证发布。您可以根据许可证条款自由使用、修改和分发此项目。请参阅 LICENSE 文件获取更多详细信息。
欢迎贡献!请随意打开问题或提交拉取请求。