ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

Qwen-Agent 本地部署指南:函数调用和代码解释器在自己机器上跑,API 费用为零

2026/8/24 17:49:03 拓冰建站 浏览量
Qwen-Agent 本地部署指南:函数调用和代码解释器在自己机器上跑,API 费用为零 Qwen-Agent 本地部署指南函数调用和代码解释器在自己机器上跑API 费用为零【免费下载链接】Qwen-AgentAgent framework and applications built upon Qwen3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.项目地址: https://gitcode.com/GitHub_Trending/qw/Qwen-AgentQwen-Agent 是阿里开源的 Agent 框架能给你的模型接上函数调用、代码解释器和文档问答。但最有用的是它的另一面模型服务这一层是完全开放的你本地起一个 vLLM 服务整个 Agent 就能离线运行。想象一下你的合同 PDF 躺在本地硬盘上不想传到任何云服务器但你想让它自动读文档、调工具、画图表——这就是 Qwen-Agent 本地部署要解决的事。看懂 Qwen-Agent为本地部署而生的 Agent 框架一句话定位它把大模型和干活的能力拆成了两层——模型服务只负责思考和说话工具层负责真正执行搜网页、跑代码、读文件两层通过标准的 OpenAI 接口对接。这就是它能本地部署的原因你不需要绑死任何云厂商换掉模型服务地址就行。它的工具注册机制就像手机装 App用register_tool声明一下名字和参数塞进function_list列表就能用Agent 自己决定什么时候调。能力全景5 秒看完函数调用Function CallingAgent 自主决定调哪个工具支持并行调用多个代码解释器让 Agent 写 Python、在 Docker 沙箱里执行、返回图表文档问答RAG丢给它 PDF/Word/PPT它读完整份文档回答问题MCP 接入挂外部工具服务器比如 SQLite、文件系统Web GUI一行代码起 Gradio 聊天页面从零跑通最短路径整个流程三步装包、起本地模型服务、跑第一个 Agent。第一步装依赖。方括号里是功能开关code_interpreter和rag是你本地部署最常用的两个pip install -U qwen-agent[gui,rag,code_interpreter,mcp]第二步起本地模型服务。用 vLLM一个专门给大模型做高速推理的本地服务框架起一个 OpenAI 兼容接口模型建议从 8B 起步vllm serve Qwen/Qwen3-8B --port 8000注意Qwen3 系列不要加--enable-auto-tool-choice和--tool-call-parser hermes参数Qwen-Agent 自己会解析工具调用Qwen3-Coder 例外。第三步跑第一个 Agent。下面这段把模型指向 localhost给它挂上代码解释器工具让它画一张饼图from qwen_agent.agents import Assistant llm_cfg { model: Qwen3-8B, model_server: http://localhost:8000/v1, # vLLM 服务地址 api_key: EMPTY, } bot Assistant(llmllm_cfg, function_list[code_interpreter]) messages [{role: user, content: 四个季度营收是 100、200、150、250画一张饼图}] for rsp in bot.run(messages): print(rsp[-1][content], end)怎么算跑通了终端流式打出分析过程Agent 自己写代码调用了code_interpreter工作目录里多出一张能打开的.png饼图。到这一步一个不花 API 钱的本地 Agent 就有了。核心能力拆解三个最常用的本地玩法让 Agent 自己写代码执行本地代码解释器这个能力解决让模型动手而不是动嘴的问题数据分析、画图表、批量处理文件模型自己生成 Python 并在隔离环境里跑完。关键就在function_list[code_interpreter]这一行。它底层是一个 Docker 容器沙箱源码在qwen_agent/tools/code_interpreter.py首次使用会自动构建code-interpreter:latest镜像。实际用起来要注意Docker 必须已安装并在运行构建镜像那一下可能花几分钟之后每次会话秒开。让本地文档开口说话RAG 文档问答这个能力解决文档太长塞不进上下文的问题一份几十页的 PDF你只想问其中第三章讲了什么。用法比想象中简单——不需要你搭向量库Assistant直接把文件喂进去bot Assistant(llmllm_cfg, files[./report.pdf])它会解析文档PDF/Word/PPT/TXT/HTML 都支持解析逻辑在qwen_agent/tools/doc_parser.py然后按检索回答。实际用起来要注意超长的百万 token 级文档建议改用examples/assistant_rag.py里的 RAG 方案那是为超长文档专门做的。写一个自己的工具十五行插一个插件这个能力解决内置工具不够用的问题查本地数据库、调公司内部接口都能包成一个工具让 Agent 调用。下面是个查本地目录文件内容的最小例子注册完加进function_list就能用from qwen_agent.tools.base import BaseTool, register_tool register_tool(local_search) class LocalSearch(BaseTool): description 在本地 docs 目录里模糊搜索文件内容返回匹配行 parameters [{name: keyword, type: string, description: 要搜索的关键词, required: True}] def call(self, params, **kwargs): import json5, pathlib kw json5.loads(params)[keyword] hits [f{f}:{line} for f in pathlib.Path(docs).rglob(*) if f.is_file() for line in f.read_text(errorsignore).splitlines() if kw in line] return json5.dumps(hits[:20], ensure_asciiFalse)实际用起来要注意description写得越具体模型越知道什么时候该调它——这行文字就是模型眼中的工具说明书。按硬件配置不同机器怎么选模型场景推荐模型规格内存门槛一句话建议16G 内存笔记本Qwen3-4B Ollama8GB跑通流程就行别期待复杂多步工具调用24G 显卡如 4090Qwen3-8B vLLM10GB甜点配置本文所有功能全可用48G~80G 显卡Qwen3-32B vLLM40GB多步工具调用和复杂规划的差距在这里拉开多卡服务器Qwen3-235B-A22BMoE 混合专家模型160GB生产级私有化预算允许再上拿不准就按第二行配8B vLLM显存放得下、工具调用够稳跑顺了再升级。生成参数在generate_cfg里调记住三个方向的体感temperature调小趋近 0回答稳定但容易重复调大超过 1容易跑偏max_new_tokens是输出长度上限调大了等待时间和显存占用同步涨top_p控制候选词池大小0.8 左右是安全值。踩过的坑这些才是真会卡住你的症状Connection refused连不上 localhost:8000→ vLLM 没起来或者--port和model_server里的端口对不上 → 先跑curl http://localhost:8000/v1/models确认服务在列模型列表再回头改地址。症状模型开始胡言乱语式地输出工具调用Agent 解析不出来→ 起 vLLM 时加了--enable-auto-tool-choice --tool-call-parser hermes两套解析打架了 → 把这两个参数去掉Qwen3-Coder 除外它反而要开。症状第一次用 code_interpreter 卡很久或直接报 Docker 错误→ Docker 没装、没运行或者在等首次构建镜像 →docker ps确认 Docker 活着首次构建慢就手动预构建一次。症状模型加载直接 OOM进程被系统杀掉→ 模型规格超过显存或 KV cache 被长上下文撑爆 → 换 4B/8B 或上量化版同时在llm_cfg里设max_input_tokens限制输入长度。症状几十页的 PDF 一问就超时或答非所问→ 整份文档硬塞进上下文了 → 改用examples/assistant_rag.py的 RAG 方案按块检索而不是全量投喂。还能怎么玩三个进阶方向多 Agent 协作多个 Agent 分工对话、互相路由看qwen_agent/multi_agent_hub.py和qwen_agent/agents/group_chat.py。MCP 插件生态挂上 SQLite、文件系统、网页抓取等 MCP 服务器配置格式见qwen_agent/tools/mcp_manager.py和examples/assistant_mcp_sqlite_bot.py。浏览器端 Agent项目自带一个 Chrome 扩展 BrowserQwen把文档问答搬到网页上。如果你还想改框架源码clone 仓库https://gitcode.com/GitHub_Trending/qw/Qwen-Agent后pip install -e ./装成可编辑模式即可。到这里你的 Qwen-Agent 已经完全跑在本地了模型不出局域网文档不出硬盘。下一步建议直接打开examples/目录把assistant_qwen3.py的 GUI 模式文件末尾的app_gui()跑起来——一个能点选的聊天页面比终端输出更能让你确认这套东西真的能用。【免费下载链接】Qwen-AgentAgent framework and applications built upon Qwen3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.项目地址: https://gitcode.com/GitHub_Trending/qw/Qwen-Agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考