企业级AI Agent开发:基于Qwen3.5-4B与自定义工具集成
企业级AI Agent开发:基于Qwen3.5-4B与自定义工具集成
1. 为什么企业需要智能Agent
现代企业运营中,重复性工作占据了大量人力成本。以我们接触过的某电商客户为例,客服团队每天需要处理数百次天气查询和邮件通知,这些工作看似简单,却消耗了30%的有效工作时间。这正是AI Agent能够大显身手的场景。
Qwen3.5-4B作为当前最先进的开源大模型之一,其工具调用能力让构建智能助手变得前所未有的简单。不同于传统RPA只能执行固定流程,基于大模型的Agent可以理解自然语言指令,自主规划任务步骤,并调用各类工具完成复杂工作流。
2. 开发环境准备
2.1 基础环境配置
建议使用Python 3.9+环境,主要依赖库包括:
pip install transformers>=4.34.0
pip install fastapi uvicorn # 用于构建工具服务
pip install requests # 工具调用必备
2.2 模型部署方案
在星图GPU平台部署Qwen3.5-4B只需三个步骤:
- 登录控制台选择"Qwen3.5-4B"镜像
- 配置GPU资源(建议A10/A100)
- 点击部署获取API端点
部署完成后会获得类似这样的访问地址: https://your-instance.ai.csdn.net/v1
3. 构建天气查询+邮件发送Agent
3.1 定义工具功能
首先需要明确Agent需要使用的工具。我们以两个典型办公场景为例:
天气查询工具:
def get_weather(location: str, date: str = None):
"""
获取指定地点的天气信息
:param location: 城市名称,如"北京"
:param date: 可选,查询日期(默认当天)
:return: 天气情况字符串
"""
# 实际实现中这里调用天气API
return f"{location}今天晴,气温25-32℃"
邮件发送工具:
def send_email(to: str, subject: str, content: str):
"""
发送电子邮件
:param to: 收件人邮箱
:param subject: 邮件主题
:param content: 邮件内容
:return: 发送结果
"""
# 实际实现中接入企业邮件系统
return f"邮件已发送至{to}"
3.2 设计工具调用Prompt
关键是要让模型理解工具的使用方式和调用规则。以下是经过验证的有效Prompt结构:
你是一个智能助手,可以调用以下工具完成任务:
工具列表:
1. get_weather: 查询天气
- 参数: location(必填), date(选填)
2. send_email: 发送邮件
- 参数: to(必填), subject(必填), content(必填)
调用工具时,请严格按以下格式响应:
<|startofthink|>
{"function": "工具名", "parameters": {"参数1": "值1", ...}}
<|endofthink|>
我会返回工具执行结果。请根据任务需求规划步骤,必要时可以多次调用工具。
3.3 实现执行逻辑闭环
核心是构建"模型决策→工具执行→结果反馈"的循环:
import json
from transformers import AutoModelForCausalLM, AutoTokenizer
model = AutoModelForCausalLM.from_pretrained("Qwen/Qwen3.5-4B")
tokenizer = AutoTokenizer.from_pretrained("Qwen/Qwen3.5-4B")
def process_query(query):
# 初始提示
messages = [{"role": "system", "content": prompt},
{"role": "user", "content": query}]
while True:
response = model.chat(tokenizer, messages)
# 检测工具调用
if "<|startofthink|>" in response:
tool_call = json.loads(response.split("<|startofthink|>")[1].split("<|endofthink|>")[0])
# 执行工具
if tool_call["function"] == "get_weather":
result = get_weather(**tool_call["parameters"])
elif tool_call["function"] == "send_email":
result = send_email(**tool_call["parameters"])
messages.append({"role": "tool", "content": result})
else:
return response # 最终回复
4. 实际应用案例演示
假设用户提出复合请求:"查下北京天气,然后发邮件告诉王总记得带伞"
Agent的执行过程如下:
-
识别需要先查询天气
{"function": "get_weather", "parameters": {"location": "北京"}} -
收到天气结果:"北京今天有雨,气温20-25℃"
-
自动生成邮件内容并发送
{"function": "send_email", "parameters": { "to": "ceo@company.com", "subject": "北京天气提醒", "content": "王总您好,北京今天有雨,建议带伞出行。" }}
整个过程无需人工干预,Agent自动完成多步骤规划与执行。
5. 进阶优化方向
要让Agent真正达到企业级可用,还需要考虑以下方面:
工具扩展性:通过配置文件动态加载工具,避免每次修改代码。可以创建一个tools目录,每个工具对应一个.py文件,自动注册到系统中。
权限控制:为不同工具设置访问权限。比如邮件发送工具可能需要主管审批才能调用,可以在工具定义中添加权限标记。
执行监控:记录完整的工具调用历史,包括参数、结果、耗时等,便于后续审计和优化。建议使用SQLite或企业级日志系统存储这些数据。
性能优化:对于高频使用的工具,可以添加缓存机制。比如天气查询结果可以缓存1小时,减少API调用次数。
获取更多AI镜像
想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。
更多推荐

所有评论(0)