摆脱云端限制!Qwen3+MCP+Ollama 本地工具调用实战教程

发布于 2025-5-7 07:01
浏览
0收藏

通义千问3(Qwen3)是阿里巴巴通义千问团队发布的最新开源大语言模型,它具备强大的性能、高度的模块化特性以及出色的工具使用能力。

本文教你如何通过Ollama在本地运行通义千问3,并启用模型上下文协议(MCP),以使用代码解释器、数据获取、时间查询等工具。

通过学习,你会构建一个完全在本地机器上运行、由通义千问3驱动的智能助手,且无需云API密钥!开始吧!

1.为什么选择通义千问3 + Ollama + MCP

为了实现这些先进功能,阿里巴巴推出了模型上下文协议(MCP)。MCP允许模型通过调度命令行服务与外部工具进行交互,这让大语言模型能够以结构化且安全的方式获取时间、从网站抓取数据,或调用其他本地工具。

在通义千问智能体(Qwen-Agent)生态系统中,诸如​​mcp-server-time​​​和​​mcp-server-fetch​​之类的MCP工具,充当着端点的角色,模型可在需要时自行触发这些端点。这些工具通过一个字典进行配置,该字典会告知智能体每个功能应运行的命令。

  • 通义千问3:专为开源部署优化的前沿大语言模型。
  • Ollama:通过一条命令就能简化本地大语言模型(如通义千问3)的部署。
  • MCP:允许外部工具通过结构化消息进行通信(例如网页浏览或时间查询)。
  • 工具使用:拓展通义千问3的能力,使其超越静态文本处理——支持执行代码、调用API等更多功能!

2 在本地设置Ollama和通义千问3

步骤1:安装Ollama并运行通义千问3

在本地终端(Linux/macOS系统)运行以下命令:

# 安装Ollama
curl -fsSL https://ollama.com/install.sh | sh
# 启动Ollama服务器
ollama serve

然后拉取通义千问3模型:

ollama pull qwen3

这会获取通义千问3的模型权重,并通过​​http://localhost:11434/v1​​这个Ollama API端点,为在本地使用做好准备。

步骤2:克隆并安装通义千问智能体(Qwen-Agent)

接下来,克隆通义千问智能体的官方代码库,并安装支持图形用户界面(GUI)、检索增强生成(RAG)、代码解释以及MCP所需的额外组件。运行以下命令:

# 克隆代码库
git clone https://github.com/QwenLM/Qwen-Agent.git
# 安装所有额外组件
pip install -e ./Qwen-Agent"[gui, rag, code_interpreter, mcp]"

​-e​​标记确保以可编辑模式安装该软件包,方便在需要时深入研究其内部机制。安装完成后,你可以编写一个Python脚本来连接智能助手和Ollama,并启用工具使用功能。

步骤3:编写Python脚本

以下是通过MCP + Ollama运行一个支持工具使用的智能助手的完整代码:

from qwen_agent.agents import Assistant

# 步骤1:配置本地通义千问3模型(由Ollama提供服务)
llm_cfg = {
   'model': 'qwen3',
   'model_server': 'http://localhost:11434/v1',  # Ollama API
    'api_key': 'EMPTY',
}

# 步骤2:定义工具(MCP + 代码解释器)
tools = [
    {'mcpServers': {
            'time': {
                'command': 'uvx',
                'args': ['mcp-server-time', '--local-timezone=Asia/Shanghai']
            },
            'fetch': {
                'command': 'uvx',
                'args': ['mcp-server-fetch']
            }
        }
    },
    'code_interpreter',
]

# 步骤3:初始化通义千问智能体助手
bot = Assistant(llm=llm_cfg, function_list=tools)

# 步骤4:发送包含URL的用户消息
messages = [{'role': 'user', 'content': 'https://qwenlm.github.io/blog/ Introduce the latest developments of Qwen'}]

# 步骤5:运行智能助手并打印结果
for responses in bot.run(messages=messages):
    pass
print(responses)

这个脚本使用Ollama后端初始化通义千问3模型,并注册了两个MCP工具(​​time​​​和​​fetch​​​)以及内置的​​code_interpreter​​。在根据需求评估工具或代码后,智能助手会处理用户消息并返回响应。

3.总结

通义千问 3 搭配通义千问智能体(Qwen - Agent)、模型上下文协议(MCP)和 Ollama,可构建强大的本地人工智能助手,摆脱对外部云服务的依赖。该组合支持多轮对话、实时信息检索与 Python 代码执行,所有操作均可在本地环境完成。

对于重视隐私、追求灵活性与扩展性,且致力于构建智能体的开发者、研究人员和产品团队而言,这无疑是理想之选。随着通义千问 3 持续迭代,未来它将更有力地支持复杂任务,实现与自定义工具的无缝融合,为本地自主人工智能智能体的发展开拓广阔前景。

本文转载自​AI科技论谈​​​​,作者:AI科技论谈

收藏
回复
举报
回复
相关推荐