搜索
首页科技周边人工智能使用Smolagents为AI代理构建自定义工具

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。

使用Smolagents为AI代理构建自定义工具

代理接收输入为文本,使用语言的原因以及输出文本。工具在这里至关重要,提供了代理商用来生成其文本响应的值。行动可以从市场交易到图像生成。

使用Smolagents为AI代理构建自定义工具

工作流程是:理解 - >原因 - >互动或更广泛:思想 - >行动 - >观察。

AI代理的组件

AI代理包括:

  • 代理商的“大脑”(像Llama3,Phi4或GPT4这样的LLM)。
  • 代理可以调用​​的外部工具(API,其他代理,计算器等)。

smolagents允许您使用调用函数调用的LLM创建任何Python函数。我们的示例将包括使用QWEN LLM的狗事实,时区检索和图像生成工具。

工具的必要性

LLM不再只是文本完成工具。它们是较大系统中的组件,通常需要非生成AI零件的输入。

使用Smolagents为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中文网其他相关文章!

声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
及时工程中的思想图是什么及时工程中的思想图是什么Apr 13, 2025 am 11:53 AM

介绍 在迅速的工程中,“思想图”是指使用图理论来构建和指导AI的推理过程的新方法。与通常涉及线性S的传统方法不同

优化您的组织与Genai代理商的电子邮件营销优化您的组织与Genai代理商的电子邮件营销Apr 13, 2025 am 11:44 AM

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

Apache Pinot实时应用程序性能监视Apache Pinot实时应用程序性能监视Apr 13, 2025 am 11:40 AM

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

Chatgpt击中了10亿用户? Openai首席执行官说:'短短几周内翻了一番Chatgpt击中了10亿用户? Openai首席执行官说:'短短几周内翻了一番Apr 13, 2025 am 11:23 AM

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

pixtral -12b:Mistral AI'第一个多模型模型 - 分析Vidhyapixtral -12b:Mistral AI'第一个多模型模型 - 分析VidhyaApr 13, 2025 am 11:20 AM

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

生成AI应用的代理框架 - 分析Vidhya生成AI应用的代理框架 - 分析VidhyaApr 13, 2025 am 11:13 AM

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

生成AI在金融部门的应用生成AI在金融部门的应用Apr 13, 2025 am 11:12 AM

介绍 金融业是任何国家发展的基石,因为它通过促进有效的交易和信贷可用性来推动经济增长。交易的便利和信贷

在线学习和被动攻击算法指南在线学习和被动攻击算法指南Apr 13, 2025 am 11:09 AM

介绍 数据是从社交媒体,金融交易和电子商务平台等来源的前所未有的速度生成的。处理这种连续的信息流是一个挑战,但它提供了

See all articles

热AI工具

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前By尊渡假赌尊渡假赌尊渡假赌

热工具

DVWA

DVWA

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

EditPlus 中文破解版

EditPlus 中文破解版

体积小,语法高亮,不支持代码提示功能

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

螳螂BT

螳螂BT

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

安全考试浏览器

安全考试浏览器

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