LLM正在彻底改变各个领域,超越基于Web的聊天机器人,将其集成到企业和政府中。一个重大进步是使用smolagents
为AI代理创建自定义工具,从而扩大其功能。 smolagents
赋予了AI代理的能力,可以利用工具,在定义的环境中执行操作,甚至与其他代理进行交互。
这种方法增强了LLM驱动的AI Systems的自主权,从而提高了其可靠性,以完成端到端任务执行。
smolagents
用于现实世界中的Smolagents集成和部署AI代理方面,获得实践经验。smolagents
增强AI代理功能的自定义工具。*本文是***数据科学博客马拉松的一部分。
smolagents
库该教程针对熟悉基本LLM的中级开发人员和数据专业人员。假定以下内容:
transformers
图书馆的基本了解。最佳学习的进一步推荐背景:
考虑chatgpt:它回答问题,写代码等等。此功能扩展到任务完成 - 您提供了请求,并且执行了整个任务。
例如,LLM可以搜索网络和原因;结合起来,它可以创建旅行行程。您可能会问:“计划于4月1日至7日的喜马al尔邦度假,重点关注雪,滑雪,绳索和绿色景观。找到从加尔各答的最便宜的航班。”
然后,AI将比较飞行成本,建议地点并找到酒店,并在AI中展示了一种代理方法。
代理使用仅通过文本与外部世界互动的LLM。
代理接收输入为文本,使用语言的原因以及输出文本。工具在这里至关重要,提供了代理商用来生成其文本响应的值。行动可以从市场交易到图像生成。
工作流程是:理解 - >原因 - >互动或更广泛:思想 - >行动 - >观察。
AI代理包括:
smolagents
允许您使用调用函数调用的LLM创建任何Python函数。我们的示例将包括使用QWEN LLM的狗事实,时区检索和图像生成工具。
LLM不再只是文本完成工具。它们是较大系统中的组件,通常需要非生成AI零件的输入。
工具弥合了Genai和其他系统组件之间的差距。 LLM有局限性:
确定性工具解决了这些问题。
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
装饰器。@工具 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中文网其他相关文章!