Qwen3.5-4B-AWQ轻量Agent构建:Function Calling+ReAct模式实战

1. 项目概述

Qwen3.5-4B-AWQ-4bit是阿里云通义千问团队推出的轻量级稠密模型,经过4bit AWQ量化后显存占用仅约3GB,可在RTX 3060/4060等消费级显卡上流畅运行。该模型在保持轻量化的同时,性能表现优异:

  • 性能表现:MMLU-Pro得分接近Qwen3-30B-A3B,OmniDocBench击败GPT-5-Nano
  • 能力覆盖:支持201种语言、原生多模态(图文)、长上下文、工具调用
  • 适用场景:轻量Agent、知识库、智能客服等资源受限场景

2. 环境准备与快速部署

2.1 基础环境要求

  • 硬件:NVIDIA显卡(推荐RTX 3060/4060及以上)
  • 显存:至少4GB(AWQ量化后约占用3GB)
  • 系统:Linux(推荐Ubuntu 20.04+)

2.2 一键部署方法

项目已预配置supervisor服务管理,可通过以下命令快速操作:

# 启动服务
supervisorctl start qwen35-4b-awq

# 停止服务
supervisorctl stop qwen35-4b-awq

# 重启服务
supervisorctl restart qwen35-4b-awq

2.3 访问WebUI

服务启动后,通过浏览器访问:

http://localhost:7860

3. Function Calling实战指南

3.1 基础工具调用示例

Qwen3.5-4B-AWQ原生支持工具调用功能,以下是一个简单的天气查询示例:

from qwen_agent.agents import Assistant

agent = Assistant(model='Qwen3.5-4B-AWQ-4bit')

# 定义天气查询工具
def get_weather(location: str):
    """查询指定城市的天气情况"""
    return f"{location}当前天气:晴,25℃"

# 注册工具
agent.add_tool(get_weather)

# 执行对话
response = agent.run("查询北京的天气")
print(response)

3.2 多工具协同工作

模型支持同时调用多个工具完成复杂任务:

# 定义多个工具
def search_flights(departure: str, arrival: str, date: str):
    """查询航班信息"""
    return f"找到{date}从{departure}飞往{arrival}的3个航班"

def book_hotel(location: str, check_in: str, nights: int):
    """预订酒店"""
    return f"已为{location}预订{check_in}起{nights}晚的酒店"

# 注册工具集
agent.add_tools([search_flights, book_hotel])

# 执行复杂任务
response = agent.run(
    "帮我规划下周去上海的行程,需要航班和酒店"
)
print(response)

4. ReAct模式实现智能Agent

4.1 ReAct基础架构

ReAct(Reasoning+Acting)模式结合了推理和行动能力:

from qwen_agent.agents import ReActAgent

# 初始化ReAct Agent
react_agent = ReActAgent(
    model='Qwen3.5-4B-AWQ-4bit',
    tools=[get_weather, search_flights, book_hotel]
)

# 执行带推理的任务
task = """
我需要在下周三去北京出差,请帮我:
1. 查询北京当天的天气
2. 查找从上海到北京的航班
3. 预订两晚的酒店
"""
response = react_agent.run(task)
print(response)

4.2 高级推理能力展示

模型可处理复杂的多步推理任务:

# 定义知识库查询工具
def query_knowledgebase(question: str):
    """模拟知识库查询"""
    knowledge = {
        "公司报销政策": "国内出差每日住宿标准不超过800元",
        "航班偏好": "优先选择上午10点后的航班"
    }
    return knowledge.get(question, "未找到相关信息")

# 创建带知识库的Agent
agent.add_tool(query_knowledgebase)

# 执行符合公司政策的行程规划
response = agent.run(
    "根据公司政策,帮我规划下周一去广州的差旅安排"
)
print(response)

5. 常见问题解决

5.1 GPU显存问题处理

如果遇到显存不足错误,可尝试以下方法:

# 检查显存占用
nvidia-smi

# 终止残留进程
ps aux | grep VLLM | awk '{print $2}' | xargs kill -9

# 重新启动服务
supervisorctl start qwen35-4b-awq

5.2 日志查看与调试

# 实时查看运行日志
tail -f /root/Qwen3.5-4B-AWQ-4bit/logs/webui.log

# 查看错误日志
tail -f /root/Qwen3.5-4B-AWQ-4bit/logs/webui.err.log

6. 总结与进阶建议

Qwen3.5-4B-AWQ-4bit作为轻量级模型,通过AWQ量化技术实现了在消费级显卡上的高效运行。结合Function Calling和ReAct模式,可以构建出功能强大的智能Agent系统:

  1. 核心优势

    • 低资源消耗(3GB显存)
    • 完整的工具调用能力
    • 强大的多步推理功能
  2. 进阶建议

    • 尝试结合LangChain等框架扩展能力
    • 探索多Agent协作场景
    • 针对垂直领域进行微调优化
  3. 适用场景扩展

    • 智能客服系统
    • 自动化工作流
    • 个性化知识助手

获取更多AI镜像

想探索更多AI镜像和应用场景?访问 CSDN星图镜像广场,提供丰富的预置镜像,覆盖大模型推理、图像生成、视频生成、模型微调等多个领域,支持一键部署。

Logo

欢迎加入DeepSeek 技术社区。在这里,你可以找到志同道合的朋友,共同探索AI技术的奥秘。

更多推荐