LLM正在彻底改变各个领域,超越基于Web的聊天机器人,将其集成到企业和政府中。一个重大进步是使用smolagents
为AI代理创建自定义工具,从而扩大其功能。 smolagents
赋予了AI代理的能力,可以利用工具,在定义的环境中执行操作,甚至与其他代理进行交互。
这种方法增强了LLM驱动的AI Systems的自主权,从而提高了其可靠性,以完成端到端任务执行。
学习目标
- 了解AI代理,与传统LLM的区别以及使用自定义工具在现代AI应用中的作用。
- 探索为什么AI代理需要自定义工具以实时数据访问,操作执行和改进的决策。
- 在使用
smolagents
用于现实世界中的Smolagents集成和部署AI代理方面,获得实践经验。 - 学会创建和集成使用
smolagents
增强AI代理功能的自定义工具。 - 使用您的自定义工具,掌握托管和与AI代理进行互动,创建更具交互性和智能的聊天机器人体验。
*本文是***数据科学博客马拉松的一部分。
目录
- 先决条件
- 了解生成AI中的代理
- 代理工作流程
- AI代理的组件
- 工具的必要性
-
smolagents
库 - 我们的代码库
- 构建我们的第一个工具
- 最后一步:部署
- 概括
- 常见问题
先决条件
该教程针对熟悉基本LLM的中级开发人员和数据专业人员。假定以下内容:
- 中级Python编程技能。
- 代码中的基本LLM使用情况。
- 熟悉Genai生态系统。
- 对Python的拥抱面平台和
transformers
图书馆的基本了解。
最佳学习的进一步推荐背景:
- 具有LLM图书馆或Ollama等LLM图书馆的经验。
- 基本的机器学习理论知识。
- API使用和解决问题的API响应。
了解生成AI中的代理
考虑chatgpt:它回答问题,写代码等等。此功能扩展到任务完成 - 您提供了请求,并且执行了整个任务。
例如,LLM可以搜索网络和原因;结合起来,它可以创建旅行行程。您可能会问:“计划于4月1日至7日的喜马al尔邦度假,重点关注雪,滑雪,绳索和绿色景观。找到从加尔各答的最便宜的航班。”
然后,AI将比较飞行成本,建议地点并找到酒店,并在AI中展示了一种代理方法。
代理工作流程
代理使用仅通过文本与外部世界互动的LLM。
代理接收输入为文本,使用语言的原因以及输出文本。工具在这里至关重要,提供了代理商用来生成其文本响应的值。行动可以从市场交易到图像生成。
工作流程是:理解 - >原因 - >互动或更广泛:思想 - >行动 - >观察。
AI代理的组件
AI代理包括:
- 代理商的“大脑”(像Llama3,Phi4或GPT4这样的LLM)。
- 代理可以调用的外部工具(API,其他代理,计算器等)。
smolagents
允许您使用调用函数调用的LLM创建任何Python函数。我们的示例将包括使用QWEN LLM的狗事实,时区检索和图像生成工具。
工具的必要性
LLM不再只是文本完成工具。它们是较大系统中的组件,通常需要非生成AI零件的输入。
工具弥合了Genai和其他系统组件之间的差距。 LLM有局限性:
- 知识截止日期。
- 幻觉。
- 不可预测的拒绝回答。
- 次优的Web搜索选择。
确定性工具解决了这些问题。
smolagents
库
smolagents
(拥抱的脸)是建筑物代理的框架。与某些输出JSON的库不同, smolagents
直接输出Python代码,从而提高效率。
我们的代码库
GitHub存储库包含:
-
Gradio_UI.py
:用于用户交互的Gradio UI代码。 -
agent.json
:代理配置。 -
requirements.txt
:项目依赖性。 -
prompts.yaml
:YAML:示例提示和响应(使用Jinja模板)。 -
app.py
:核心应用程序逻辑。
构建我们的第一个工具
我们将使用狗事实API( https://www.php.cn/link/0feaf58e2a12936c84c2510541b6e75a )。使AI代理可用的Python函数:
- 使用
@tool
装饰器。 - 写一个清晰的docstring。
- 添加类型注释。
- 确保清晰的回报值。
- 包括充分的评论。
@工具 def get_amazing_dog_fact() - > str: “”“从公共API中获取随机的狗事实。 #...(API呼叫和错误处理)...
时区工具:
@工具 def get_current_time_in_timezone(时区:str) - > str: “”“在指定的时区获取当前时间。”“” #...(时区处理)...
图像生成工具也可以集成:
image_generation_tool = load_tool(“ agestents course/text-to-image”,trust_remote_code = true)
使用QWEN2.5-CODER-32B-INSTRUCT模型(需要访问应用程序):
型号= hfapimodel( max_tokens = 2096, 温度= 0.5, model_id ='qwen/qwen2.5-coder-32b-instruct', #... )
提示从prompts.yaml
加载。创建代理:
代理= codeagent( 模型=模型, 工具= [get_amazing_dog_fact,get_current_time_in_timezone,image_generation_tool], #... )
tools
参数列出了可用功能。
最后一步:部署
代理可以部署在拥抱面孔的空间上。
概括
AI代理通过工具集成增强LLM功能,增加自主权并实现复杂的任务完成。 smolagents
简化了代理的创建,自定义工具将功能扩展到标准LLM之外。在拥抱面积之类的平台上的部署有助于易于共享和互动。
常见问题
Q1。什么是AI代理? AI代理是LLM驱动的系统,该系统与执行任务的工具相互作用。
Q2。为什么需要自定义工具?它们可以实时数据访问,命令执行和LLM功能以外的操作。
Q3。什么是smolagents
?使用自定义工具创建AI代理的拥抱面部框架。
Q4。如何创建自定义工具?定义功能,用@tool
进行装饰,然后集成到代理中。
Q5。在哪里部署?诸如拥抱面孔的平台。
(注意:假定图像如原始输入所包含。)
以上是使用Smolagents为AI代理构建自定义工具的详细内容。更多信息请关注PHP中文网其他相关文章!

介绍 恭喜!您经营一家成功的业务。通过您的网页,社交媒体活动,网络研讨会,会议,免费资源和其他来源,您每天收集5000个电子邮件ID。下一个明显的步骤是

介绍 在当今快节奏的软件开发环境中,确保最佳应用程序性能至关重要。监视实时指标,例如响应时间,错误率和资源利用率可以帮助MAIN

“您有几个用户?”他扮演。 阿尔特曼回答说:“我认为我们上次说的是每周5亿个活跃者,而且它正在迅速增长。” “你告诉我,就像在短短几周内翻了一番,”安德森继续说道。 “我说那个私人

介绍 Mistral发布了其第一个多模式模型,即Pixtral-12b-2409。该模型建立在Mistral的120亿参数Nemo 12B之上。是什么设置了该模型?现在可以拍摄图像和Tex

想象一下,拥有一个由AI驱动的助手,不仅可以响应您的查询,还可以自主收集信息,执行任务甚至处理多种类型的数据(TEXT,图像和代码)。听起来有未来派?在这个a


热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

DVWA
Damn Vulnerable Web App (DVWA) 是一个PHP/MySQL的Web应用程序,非常容易受到攻击。它的主要目标是成为安全专业人员在合法环境中测试自己的技能和工具的辅助工具,帮助Web开发人员更好地理解保护Web应用程序的过程,并帮助教师/学生在课堂环境中教授/学习Web应用程序安全。DVWA的目标是通过简单直接的界面练习一些最常见的Web漏洞,难度各不相同。请注意,该软件中

EditPlus 中文破解版
体积小,语法高亮,不支持代码提示功能

Dreamweaver CS6
视觉化网页开发工具

螳螂BT
Mantis是一个易于部署的基于Web的缺陷跟踪工具,用于帮助产品缺陷跟踪。它需要PHP、MySQL和一个Web服务器。请查看我们的演示和托管服务。

安全考试浏览器
Safe Exam Browser是一个安全的浏览器环境,用于安全地进行在线考试。该软件将任何计算机变成一个安全的工作站。它控制对任何实用工具的访问,并防止学生使用未经授权的资源。