来源:互联网 更新时间:2026-06-23 07:24
搭建AI智能体,听起来是不是总让人觉得门槛很高?其实,Qwen-Agent的部署远没有想象中那么复杂——哪怕你此前没有任何AI开发经验,只要跟着清晰的指引一步步来,从环境准备到让智能体真正运行起来,完全是可以做到的。

这篇文章的目的,就是把这套流程用最直白的方式拆解开来。从环境准备到最终的启动运行,每一个关键步骤都会有明确的指引,帮助你真正实现“从0到1”搞定Qwen-Agent。
在动手之前,先把基础环境收拾利索。推荐使用conda来管理Python环境,这样可以避免很多版本冲突的问题。
# 创建并激活conda环境
conda create --name qwen-agent python=3.12
conda activate qwen-agent
# 克隆Qwen-Agent仓库
git clone https://github.com/QwenLM/Qwen-Agent.git
cd Qwen-Agent
# 安装核心依赖包
pip install -e ./"[rag,code_interpreter,python_executor]"
关于硬件和系统,有几个硬性条件需要满足:
模型部署是整个流程中最关键的一步。Qwen-Agent提供了两种方案,大家可以按自己的情况来选。
如果你不想折腾本地GPU资源,直接用云服务是最省心的。配置起来也很清爽:
# 文本模型配置
llm_cfg = {
'model': 'qwen-plus-2025-01-25',
'model_type': 'qwen_dashscope',
'api_key': '你的API密钥', # 在阿里云平台申请
'generate_cfg': {
'top_p': 0.8
}
}
如果你手头有足够的GPU算力,或者就是想体验一把自建模型服务的感觉,那本地部署会是更好的选择。需要配置的内容会多一些:
# 本地文本模型配置
llm_cfg = {
'model': 'Qwen/Qwen2.5-14B-Instruct',
'model_server': 'http://127.0.0.1:9995/v1',
'api_key': 'EMPTY',
'generate_cfg': {
'top_p': 0.9
}
}
# 多模态模型配置
llm_cfg_vl = {
'model': 'Qwen/Qwen2-VL-7B-Instruct',
'model_server': 'http://127.0.0.1:9993/v1',
'api_key': 'EMPTY',
'generate_cfg': {
'top_p': 0.9
}
}
接下来,我们来创建一个能处理文档问答的智能体。这也是最直观、最容易上手的应用场景之一。
from qwen_agent.agents import Assistant
# 配置LLM模型
llm_cfg = {
'model': 'Qwen/Qwen2.5-14B-Instruct',
'model_server': 'http://127.0.0.1:9995/v1',
'api_key': 'EMPTY',
'generate_cfg': {
'top_p': 0.9
}
}
def test():
# 初始化助手
bot = Assistant(llm=llm_cfg)
# 构建消息:用户查询+文档文件
messages = [{
'role': 'user',
'content': [{
'text': '介绍图一'
}, {
'file': '/path/to/your/document.pdf' # 替换为你的文档路径
}]
}]
# 运行智能体并获取响应
for rsp in bot.run(messages):
print(rsp)
if __name__ == '__main__':
test()
这段代码演示了Qwen-Agent最核心的能力之一:读取PDF文档内容,然后回答用户关于文档的问题。对于初次尝试的朋友来说,这是很理想的入门实验。
Qwen-Agent真正强大的地方,在于它能调用各种外部工具。我们来看一个天气预报助手的例子:
import os
from qwen_agent.agents import Assistant
# 设置高德地图API密钥(需要自行申请)
os.environ['AMAP_TOKEN'] = '你的高德API密钥'
# 模型配置
llm_cfg = {
'model': 'Qwen/Qwen2.5-14B-Instruct',
'model_server': 'http://127.0.0.1:9995/v1',
'api_key': 'EMPTY',
'generate_cfg': {
'top_p': 0.9
}
}
# 定义系统指令
system_instruction = (
'你扮演一个天气预报助手,你具有查询天气和画图能力。'
'你需要查询相应地区的天气,然后调用画图工具绘制一张城市的图。'
)
# 创建智能体
bot = Assistant(
llm=llm_cfg,
system_message=system_instruction,
function_list=['weather_query', 'image_gen'] # 天气查询和图像生成工具
)
这样一来,这个智能体就不只是能聊天的“嘴皮子”,而是能查询真实天气数据并生成可视化结果的实用工具了。
当任务变得复杂,比如既要处理图像又要调用工具时,一个智能体可能忙不过来。这时就需要多Agent协作系统出场了。
from qwen_agent.agents import Assistant, ReActChat, Router
# 文本模型配置
llm_cfg = {...}
# 多模态模型配置
llm_cfg_vl = {...}
def init_agent_service():
tools = ['image_gen', 'code_interpreter']
# 创建多模态助手
bot_vl = Assistant(
llm=llm_cfg_vl,
name='多模态助手',
description='可以理解图像内容。',
function_list=tools
)
# 创建工具助手
bot_tool = ReActChat(
llm=llm_cfg,
name='工具助手',
description='可以使用画图工具和运行代码来解决问题',
function_list=tools,
)
# 创建路由器,管理多个智能体
bot = Router(
llm=llm_cfg,
agents=[bot_vl, bot_tool],
)
return bot
这种架构的思路很清晰:系统会自动判断当前任务更适合哪个智能体来处理——图像理解类的任务交给多模态助手,工具使用类的任务则路由到工具助手手里。各司其职,效率自然就高了。
如果内置的工具库不够用,你完全可以根据自己的需求开发新工具。来看看怎么做:
from qwen_agent.tools.base import BaseTool, register_tool
import json5
import urllib.parse
@register_tool('my_image_gen')
class MyImageGen(BaseTool):
description = 'AI绘画服务,输入文本描述,返回基于文本信息绘制的图像URL。'
parameters = [{
'name': 'prompt',
'type': 'string',
'description': '期望的图像内容的详细描述',
'required': True
}]
def call(self, params: str, **kwargs) -> str:
prompt = json5.loads(params)['prompt']
prompt = urllib.parse.quote(prompt)
return json5.dumps({
'image_url': f'https://image.pollinations.ai/prompt/{prompt}'
}, ensure_ascii=False)
核心逻辑很简单:继承BaseTool类,实现call方法,再通过@register_tool注册一下,你的自定义工具就能被智能体调用了。不管是接自己的API还是外部服务,操作起来都非常灵活。
无论准备得多充分,实际动手时总会遇到一些小磕绊。这里把几个最常碰到的问题列出来:
当你成功跑通第一个智能体之后,还有不少值得深入探索的方向:
写到这里,相信你已经对从零搭建一个Qwen-Agent智能体有了完整的概念。从环境配置到最终的智能体运行,每一步都有章可循,并没有想象中那么遥不可及。
Qwen-Agent这个框架的价值在于,它把构建AI智能体的所有基础工具都给你准备好了。无论你是想做简单的问答机器人,还是打算构建一套复杂的多模态应用系统,它都能提供足够的支持。关键在于,先动手试试看。
《Off Campus》第二季官宣:这对CP还在,但不再是主角
币安Binance虚拟货币交易平台 币安官方APP安卓苹果下载入口
客单价碾压宝马奥迪!极氪5月交付新车34377辆:连续4个月双增长
HBO 奇幻剧《龙之家族》第三季定档 6 月 22 日,最终预告片曝光喉道海战
帅气继父网名女生可爱英文(精选100个)
帅到极致的网名女生霸气(精选100个)
折后价近千元 澳洲一店主将真老鼠缝到内裤上当时尚单品卖
如何在夸克浏览器中开启网页视频的倍速播放功能?
蒙古上单是什么梗
DOTA2 TI时隔七年重返上海!门票6月10日开抢,国服享受优先购买!
作家助手如何上传自制封面 作家助手如何设置小说的封面
韦一敏是什么梗
韩漫小少爷网名大全女生(精选100个)
archiveofourown 实战指南:常见用法整理
网络热词聊污是什么意思
抖音最火沙雕男生网名(精选100个)
有寓意的易经网名男生(精选100个)
欧易OKX官方网站直达入口 2026欧易官方App安卓版v7.1.0下载安装
阿里发布Qwen3.7-Max大模型,全球第五、国产第一
小众游戏抖音网名男生(精选100个)
手机号码测吉凶
本站所有软件,都由网友上传,如有侵犯你的版权,请发邮件haolingcc@hotmail.com 联系删除。 版权所有 Copyright@2012-2013 haoling.cc