ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Qwen-Agent 如何快速本地化部署:零基础用 vLLM 搭起带函数调用的 AI 助手

Qwen-Agent 如何快速本地化部署:零基础用 vLLM 搭起带函数调用的 AI 助手 Qwen-Agent 如何快速本地化部署零基础用 vLLM 搭起带函数调用的 AI 助手【免费下载链接】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用 Qwen-Agent 配合本地 vLLM 模型服务你可以把一个带函数调用、代码执行、文档问答能力的 AI 助手完整跑在自己机器上请求全部走内网数据不出本机。跟着本文操作从安装到第一次对话大约只需 10 分钟。部署完成后你的 Agent 能做什么装好框架并接通本地模型后Qwen-Agent 开箱即用的能力包括函数调用模型自主决定调用哪个工具、传什么参数支持并行调用多个工具代码解释器Agent 自己写 Python、在 Docker 沙箱里执行并返回图表结果适合数据分析和可视化文档问答把 PDF、Word、PPT、TXT 直接丢给 Agent基于 RAG 检索回答支持百万 token 级长文档自定义工具继承一个基类、注册一个名字就能把你的内部 API 变成 Agent 可调用的工具上图是 Agent 基于多个网页资料自动撰写带引用来源的长文右侧是它的推理过程与参考资料列表。最小配置跑起本地模型服务只需两条命令一个装框架一个起模型服务。git clone https://gitcode.com/GitHub_Trending/qw/Qwen-Agent cd Qwen-Agent pip install -U qwen-agent[gui,rag,code_interpreter] pip install vllm vllm serve Qwen/Qwen2.5-7B-Instruct --port 8000方括号里的可选依赖按需选择gui提供 Gradio 界面rag提供文档检索code_interpreter提供代码沙箱。vLLM 启动后会暴露一个 OpenAI 兼容接口--port 8000指定端口。服务就绪后执行curl http://localhost:8000/v1/models返回包含Qwen2.5-7B-Instruct的 JSON 即说明服务正常。三步完成首次本地对话下面这段是完整可运行的最小示例保存为local_chat.py即可执行from qwen_agent.agents import Assistant bot Assistant(llm{ model: Qwen/Qwen2.5-7B-Instruct, model_server: http://localhost:8000/v1, # 本地 vLLM 的 OpenAI 兼容地址 api_key: EMPTY, generate_cfg: {top_p: 0.8} }) for rsp in bot.run([{role: user, content: 用一句话介绍你自己}]): print(rsp)model_server指向 vLLM 地址本地服务无需密钥所以填EMPTYgenerate_cfg是透传给模型的采样参数。想换成 Ollama 部署的模型只需改这两个字段。想加图形界面只需两行from qwen_agent.gui import WebUI然后WebUI(bot).run()浏览器打开就能聊。模型能按指令返回完整回答且终端逐条打印流式输出说明链路已打通。接入代码解释器让 Agent 自己执行 Python在function_list里加入内置的code_interpreter工具名即可Agent 会按需生成代码并在沙箱中运行messages [{role: user, content: 生成 100 个随机数据点用 matplotlib 画折线图并显示}] for rsp in bot.run(messages): print(rsp)⚠️ 该工具依赖本地 Docker 做隔离用前确保 Docker 已启动首次运行要构建容器镜像耗时视网况而定属正常现象。工具实现可参考 code_interpreter 源码。执行成功后回复里会包含 Thought思考→ Action调 code_interpreter→ Observation代码输出和图表三段最后一项就是渲染出来的图。上图展示了 Agent 收到人口数据提问后自主调用代码解释器执行plt.pie(...)并回传饼图的完整过程。本地文档问答直接把 PDF 扔给 Agent文档问答不用额外装组件——消息体里用file字段带上本地文件路径框架会自动做解析和 RAG 检索messages [{role: user, content: [ {text: 这份报告的三个核心结论是什么}, {file: ./reports/q1_2026.pdf} ]}] for rsp in bot.run(messages): print(rsp)对于需要多路并行检索再汇总的超长文档场景框架还提供了专用 Agent示例见 parallel_doc_qa.py。回答内容应能对应到 PDF 原文中的段落而不是泛泛而谈说明检索链路工作正常。上图是 Agent 读取 Transformer 论文 PDF 后直接回答这篇论文的结论是什么的实际效果。注册一个自定义工具把内部接口暴露给 Agent 只需继承BaseTool并注册from qwen_agent.tools.base import BaseTool, register_tool import json5 register_tool(city_weather) class CityWeather(BaseTool): description 查询指定城市的实时天气 parameters [{name: city, type: string, required: True}] def call(self, params: str, **kwargs) - str: city json5.loads(params)[city] # params 是模型生成的 JSON 字符串 return json5.dumps({city: city, temp: 25C}, ensure_asciiFalse)description和parameters会被写进系统提示词模型靠它们决定何时调用、传什么参数call的返回值会作为工具结果反馈给模型。基类定义在 工具基类源码。创建 bot 时传入function_list[city_weather, code_interpreter]问一句北京现在多少度Agent 会自动调用你的工具并给出答案。硬件与量化选型对照模型规模量化显存/内存占用适用场景7B4-bit约 6–8 GB函数调用验证、开发调试14B8-bit约 16–20 GB日常助手、多工具编排32B4-bit约 20–24 GB复杂规划、长文档 RAG选型建议先拿 7B 把工具链路全部跑通再按任务质量升级到更大规模generate_cfg里的max_input_tokens务必按模型实际上下文长度设置避免超长输入被截断后工具调用解析失败。高频问题速查连接被拒绝Connection refused→ 现象请求 8000 端口报错。排查确认 vLLM 进程还在运行curl http://localhost:8000/v1/models能返回模型列表再重跑脚本。工具调用不触发或解析乱码→ 现象模型输出了类似 JSON 的文本但没有真的调工具。排查Qwen3、QwQ 系列启动 vLLM 时不要加--enable-auto-tool-choice和--tool-call-parser hermes解析交给 Qwen-Agent 自己做Qwen3-Coder 相反建议开启并用use_raw_api。code_interpreter 启动报错→ 现象工具调用阶段抛 Docker 相关异常。排查docker ps确认 Docker 在运行首次运行卡住是镜像构建中等待即可。响应慢→ 现象首 token 等待时间过长。排查开流式输出调小max_new_tokens量化位宽或模型规模降一档。✅ 按上面顺序走完你应该已经拥有一个跑在本地的、可调用工具和执行代码的 AI 助手。下一步Qwen-Agent 的抽象层把模型、工具、Agent 拆成了三类可扩展组件模型适配见 LLM 抽象层源码更多完整示例MCP、多 Agent、RAG 等集中在 examples 目录系统性讲解见 官方文档。建议先通读一遍 README 的 FAQ 部分再按你的业务场景挑一个示例改造即可开始真正的定制开发。【免费下载链接】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),仅供参考
返回列表