胶州城阳网站建设,汽车租赁网站怎么做,网站域名到期登不上是怎么回事,北京网站开发公司飞沐✨点击这里✨#xff1a;#x1f680;原文链接#xff1a;#xff08;更好排版、视频播放、社群交流、最新AI开源项目、AI工具分享都在这个公众号#xff01;#xff09;
Qwen-Agent#xff1a;Qwen2加持#xff0c;强大的多代理框架 - 函数调用、代码解释器以及 RAG原文链接更好排版、视频播放、社群交流、最新AI开源项目、AI工具分享都在这个公众号
Qwen-AgentQwen2加持强大的多代理框架 - 函数调用、代码解释器以及 RAG Qwen-Agent是一个开发框架。开发者可基于该框架开发 Agent应用 充分利用基于通义千问模型Qwen的指令遵循、工具使用、规划、记忆能力。该项目也提供了浏览器助手、代码解释器、自定义助手等示例应用。 Githubhttps://github.com/QwenLM/Qwen-Agent
Hello大家好我是Aitrainee
阿里巴巴最近发布了新的 Qwen 2 大型语言模型和升级后的 Qwen Agent 框架这个框架集成了 Qwen 2 模型支持 函数调用、代码解释、RAG检索增强生成 等功能还包含了 Chrome 扩展。Qwen Agent 能处理从 8K 到 100 万 tokens 的文档性能超越了 RAG 和原生长上下文模型并用于生成训练新长上下文模型的数据。
Qwen Agent 框架可用于创建复杂的 AI 代理展示了其强大的任务处理能力。新框架采用四步法开发初始模型开发、代理开发、数据综合和模型微调。通过 RAG 算法处理长文档将文档分成小块保留最相关的部分从而提升上下文处理能力。
具体步骤包括检索增强生成、逐块阅读和逐步推理等三层复杂性使用 RAG 算法处理并优化文档片段以便提供准确的上下文理解和生成能力。实验表明Qwen Agent 能显著提升模型的上下文长度和性能。
建议观看之前的视频以获取更多实用示例Qwen 2 是目前最强大的开源语言模型之一推荐尝试使用。框架操作简便有详细教程帮助用户快速上手。
这一框架的目标是创建复杂的AI代理其表现优于其他代理框架。 下面视频 展示了如何利用Qwen-2模型及其8K上下文窗口理解包含百万级词汇的文档这比RAG和原生长上下文模型表现更好。
Qwen-Agent 开发步骤 1. 初始模型 从8K上下文聊天模型开始。 2. 代理开发 使用模型开发强大的代理处理百万上下文。 3. 数据合成 合成细化数据进行自动过滤确保质量。 4. 模型微调 利用合成数据微调预训练模型最终得到强大的聊天机器人。
分层复杂性
Qwen-Agent在构建过程中分为三层复杂性每层在前一层基础上构建 1. 增强型信息检索生成RAG 使用RAG算法将上下文分成不超过512词的块仅保留最相关的内容。 2. 逐块阅读 采用暴力策略每512词块检查相关性保留最相关的内容生成答案。 3. 逐步推理 使用多跳推理回答复杂问题采用工具调用代理解决复杂查询。
下面提供官方的 文档介绍、相关资源、部署教程 等进一步支撑你的行动以提升本文的帮助力。
 开始上手
安装 • 安装稳定的版本 pip install -U qwen-agent • 或者直接从源代码安装最新的版本 git clone https://github.com/QwenLM/Qwen-Agent.git cd Qwen-Agent pip install -e ./
如需使用内置GUI支持请安装以下可选依赖项
pip install -U gradio4.0 modelscope-studio0.2.1准备模型服务
Qwen-Agent支持接入阿里云 DashScope 服务提供的Qwen模型服务也支持通过OpenAI API方式接入开源的Qwen模型服务。 • 如果希望接入DashScope提供的模型服务只需配置相应的环境变量 DASHSCOPE_API_KEY 为您的DashScope API Key。 • 或者如果您希望部署并使用您自己的模型服务请按照Qwen2的README中提供的指导进行操作以部署一个兼容OpenAI接口协议的API服务。具体来说请参阅 vLLM 一节了解高并发的GPU部署方式或者查看 Ollama 一节了解本地CPUGPU部署。
快速开发
框架提供了大模型LLM继承自 class BaseChatModel 并提供了 Function Calling 功能和工具Tool继承自 class BaseTool 等原子组件也提供了智能体Agent等高级抽象组件继承自 class Agent 。
以下示例演示了如何增加自定义工具并快速开发一个带有设定、知识库和工具使用能力的智能体
import pprint
import urllib.parse
import json5
from qwen_agent.agents import Assistant
from qwen_agent.tools.base import BaseTool, register_tool # 步骤 1可选添加一个名为 my_image_gen 的自定义工具。
register_tool(my_image_gen)
class MyImageGen(BaseTool): # description 用于告诉智能体该工具的功能。 description AI 绘画图像生成服务输入文本描述返回基于文本信息绘制的图像 URL。 # parameters 告诉智能体该工具有哪些输入参数。 parameters [{ name: prompt, type: string, description: 期望的图像内容的详细描述, required: True }] def call(self, params: str, **kwargs) - str: # params 是由 LLM 智能体生成的参数。 prompt json5.loads(params)[prompt] prompt urllib.parse.quote(prompt) return json5.dumps( {image_url: fhttps://image.pollinations.ai/prompt/{prompt}}, ensure_asciiFalse) # 步骤 2配置您所使用的 LLM。
llm_cfg { # 使用 DashScope 提供的模型服务 model: qwen-max, model_server: dashscope, # api_key: YOUR_DASHSCOPE_API_KEY, # 如果这里没有设置 api_key它将读取 DASHSCOPE_API_KEY 环境变量。 # 使用与 OpenAI API 兼容的模型服务例如 vLLM 或 Ollama # model: Qwen2-7B-Chat, # model_server: http://localhost:8000/v1, # base_url也称为 api_base # api_key: EMPTY, # 可选 LLM 的超参数 generate_cfg: { top_p: 0.8 }
} # 步骤 3创建一个智能体。这里我们以 Assistant 智能体为例它能够使用工具并读取文件。
system_instruction 你是一个乐于助人的AI助手。
在收到用户的请求后你应该
- 首先绘制一幅图像得到图像的url
- 然后运行代码request.get以下载该图像的url
- 最后从给定的文档中选择一个图像操作进行图像处理。
用 plt.show() 展示图像。
你总是用中文回复用户。
tools [my_image_gen, code_interpreter] # code_interpreter 是框架自带的工具用于执行代码。
files [./examples/resource/doc.pdf] # 给智能体一个 PDF 文件阅读。
bot Assistant(llmllm_cfg, system_messagesystem_instruction, function_listtools, filesfiles) # 步骤 4作为聊天机器人运行智能体。
messages [] # 这里储存聊天历史。
while True: # 例如输入请求 绘制一只狗并将其旋转 90 度。 query input(用户请求: ) # 将用户请求添加到聊天历史。 messages.append({role: user, content: query}) response [] for response in bot.run(messagesmessages): # 流式输出。 print(机器人回应:) pprint.pprint(response, indent2) # 将机器人的回应添加到聊天历史。 messages.extend(response)除了使用框架自带的智能体实现如 class Assistant 您也可以通过继承 class Agent 来自行开发您的智能体实现。更多使用示例请参阅 examples 目录。
FAQ
支持函数调用也称为工具调用吗
支持LLM类提供了 函数调用 的支持。此外一些Agent类如FnCallAgent和ReActChat也是基于函数调用功能构建的。
如何让AI基于超长文档进行问答
我们已发布了一个 快速的RAG解决方案 以及一个虽运行成本较高但 准确度较高的智能体 用于在超长文档中进行问答。它们在两个具有挑战性的基准测试中表现出色超越了原生的长上下文模型同时更加高效并在涉及100万字词上下文的“大海捞针”式单针查询压力测试中表现完美。欲了解技术细节请参阅 博客 。 应用BrowserQwen
BrowserQwen 是一款基于 Qwen-Agent 构建的浏览器助手。如需了解详情请参阅其 文档 。
文档https://pypi.org/project/qwen-agent/
博客https://qwenlm.github.io/blog/qwen-agent
知音难求自我修炼亦艰
抓住前沿技术的机遇与我们一起成为创新的超级个体
把握AIGC时代的个人力量
** **
** 点这里 关注我记得标星哦 **
一键三连「分享」、「点赞」和「在看」
科技前沿进展日日相见 ~ 预览时标签不可点
微信扫一扫 关注该公众号
轻触阅读原文 AI进修生 收藏