Ollama Chat With Mcp

Ollama Chat With Mcp

🚀 🔍 🤖 🌐 Ollama 聊天与 MCP 集成

本项目是一个强大的演示,展示了如何将本地大语言模型(LLM)与实时网络搜索功能相结合,通过模型上下文协议(MCP)实现。借助此集成,可极大扩展本地语言模型的能力。

🚀 快速开始

先决条件

  • Python 3.11+ 版本
  • 已安装并运行的 Ollama
  • 一个 Serper.dev API 密钥(免费层可用)
  • 网络连接以进行搜索

安装步骤

  1. 克隆仓库:

    git clone https://github.com/redbuilding/ollama-chat-with-mcp.git
    cd ollama-chat-with-mcp
    
  2. 安装依赖项:

    pip install -r requirements.txt
    
  3. 在项目根目录中创建一个 .env 文件,并添加您的 Serper.dev API 密钥:

    SERPER_API_KEY=your_serper_api_key_here
    
  4. 确保 Ollama 已安装并且预设模型可用(默认为 qwen2.5:14b):

    ollama pull qwen2.5:14b
    

使用方法

启动网页界面

要使用基于网页的界面,执行以下命令:

python chat_frontend.py

这将启动 Gradio 网页界面,默认访问地址为 http://localhost:7860

使用终端客户端

要使用命令行界面,执行以下命令:

python chat_client.py

搜索命令

在两个界面中,您可以使用特殊命令来触发网络搜索:

  • 搜索并总结:#search for "金融市场2025年4月展望"
  • 搜索并回答问题:#search for "这周的实境电视节目" 以及最近发生了什么?

其他命令

  • 清除对话历史记录:clear
  • 显示可用命令列表:help

✨ 主要特性

  • 🔎 网络增强聊天:在对话过程中实时获取网络搜索结果
  • 🧠 本地模型执行:使用 Ollama 在您自己的硬件上运行模型
  • 🔌 MCP 集成:展示 MCP 实际应用的实现
  • 🌐 双界面:选择终端 CLI 或网页 GUI
  • 📊 结构化搜索结果:以清晰格式呈现网络搜索数据,便于理解
  • 🔄 对话记忆:在整个聊天会话中保持上下文

📚 详细文档

概述

Ollama 聊天与 MCP 展示了如何通过工具使用扩展本地语言模型的功能。此应用程序结合了本地运行的 LLM 通过 Ollama 提供的强大功能,以及通过 MCP 服务器提供的实时网络搜索功能。

该项目由三个主要组件组成:

  • MCP 网络搜索服务器:使用 Serper.dev API 提供网络搜索功能
  • 终端客户端:用于聊天和搜索交互的命令行界面(CLI)
  • 网页前端:基于 Gradio 的用户友好型网络界面

通过这种架构,应用程序展示了 MCP 如何使本地模型访问外部工具和数据源,显著增强其能力。

工作原理

  1. MCP 网络搜索服务器接收来自客户端的搜索请求。
  2. 使用 Serper.dev API 执行实际的网络搜索。
  3. 结果被格式化并返回给客户端,供用户查看和分析。
  4. 客户端通过 Ollama 进行进一步处理,生成相关响应。

文件结构

  • MCP 网络搜索服务器:负责接收和处理搜索请求。
  • 终端客户端:提供命令行界面以与 MCP 交互。
  • 网页前端:基于 Gradio 的用户友好型界面,便于直观操作。

自定义

可以根据具体需求自定义多个方面:

  • 修改搜索范围和参数
  • 更换网络爬取工具
  • 定制输出格式和样式

🤝 贡献

我们欢迎社区贡献!请参考 Contributing.md 了解如何参与。

📄 许可证

项目在 LICENSE 下发布,详细许可信息请查阅相关文件。

  • 0 关注
  • 0 收藏,8 浏览
  • system 提出于 2025-09-22 16:54

相似服务问题