首页 > 科技周边 > 人工智能 > 通过拥抱脸的烟雾剂:在30行以下建造AI代理

通过拥抱脸的烟雾剂:在30行以下建造AI代理

Jennifer Aniston
发布: 2025-03-11 11:19:09
原创
479 人浏览过

新年快乐!我在2025年对AI特工的探索使我拥抱了Face的Smolagents框架。让我们潜入!

Hugging Face的Smolagents库于2025年推出,简化了使用最少代码的强大代理。它的易用性,集线集成和广泛的LLM兼容性使其非常适合代理工作流程。

目录

  • 什么是Smolagents?
  • 了解AI代理
  • 多步代理示例
  • Smolagents的关键功能
  • Smolagents功能:
    • 代码代理
    • 当地的Python口译员
    • E2B代码执行人
  • 在行动中的Smolagents:
    • 演示1:研究代理
    • 演示2:股价检索
  • 结论

什么是Smolagents?

Smolagents是一个简洁,有力的库,用于建造和运行代理。它的紧凑设计(约1,000行代码)优先考虑易于使用而无需牺牲功能。它擅长支持“代码代理”,该代码代理生成和执行代码,并通过E2B等沙盒环境提供增强的安全性。它还使用JSON或基于文本的操作支持传统的工具。 Smolagents与各种LLM(通过LITELLM的拥抱脸推理API,OpenAI,人类等)和拥抱脸部集线器上的共享工具存储库集成。

了解AI代理

AI代理是代表用户或其他系统执行任务的自主系统。他们通过策划工作流和使用外部工具(Web搜索,代码执行等)来实现这一目标。 llms为这些代理提供动力,将工具用法集成以获取实时信息。从本质上讲,它们桥接了LLM和外部世界,实现了行动和决策。代理商存在于频谱上,LLMS对系统动作的控制程度不同。

代理水平 描述 姓名 例子
☆☆☆ LLM输出对程序流没有影响 简单处理器 process_llm_output(llm_response)
⭐☆☆ LLM输出确定IF/else Switch 路由器 if llm_decision(): path_a() else: path_b()
⭐⭐☆ LLM输出确定功能执行 工具呼叫者 run_function(llm_chosen_tool, llm_chosen_args)
⭐⭐⭐ LLM输出控制迭代和程序延续 多步代理 while llm_should_continue(): execute_next_step()
⭐⭐⭐ 一个代理工作流启动另一个 多代理 if llm_trigger(): execute_agent()

多步代理示例

通过拥抱脸的烟雾剂:在30行以下建造AI代理

代理通过使用多种工具来处理复杂的任务并适应不同的情况。与具有严格工作流程的传统程序不同,代理人更有效地管理复杂性和不可预测性。

Smolagents的关键功能

对于简单的任务,自定义代码就足够了。但是,对于复杂的行为(工具调用,多步代理),Smolagents提供了必不可少的结构:

  • 工具调用:代理输出遵循特定格式(例如,“思想:使用'get_weather'。操作:get_weather(paris)。”)。该系统促使该格式引导LLM。
  • 多步代理: LLM提示是根据以前的迭代量身定制的,需要内存以进行上下文。

Smolagents无缝集成这些组件:LLM,工具,解析器,系统提示,内存和错误处理。

Smolagents功能

代码代理

由于其效率,合成性,对象管理功能,一般性以及与LLM培训数据的兼容性,因此使用代码(而不是JSON)进行工具操作非常出色。

通过拥抱脸的烟雾剂:在30行以下建造AI代理

当地的Python口译员

代码使用具有控制的导入,操作限制和预定义的操作的安全LocalPythonInterpreter

E2B代码执行人

为了增强安全性,Smolagents与E2B集成以进行沙盒代码执行。

来自Smolagents Import codeagent,请访问webpagetool,hfapimodel
agent = codeagent(tools = [访问webpagetool()],model = hfapimodel(),author_authorized_imports = [“ requests”,“ markdownify”],use_e2b_executor = true)
特工。(“亚伯拉罕·林肯的首选宠物是什么?”)
登录后复制

Smolagents在行动中

演示1:研究代理

!PIP安装Smolagents
来自SmolAgents Importeagent,Duckduckgosearchtool,Hfapimodel
model = litellmmodel(model_,api_key =“ your_api_key”)#替换your_api_key
agent = codeagent(tools = [duckduckgosearchtool()],模型=模型)
agent.run(“告诉我有关分析的Vidhya”) 
登录后复制

通过拥抱脸的烟雾剂:在30行以下建造AI代理

演示2:股价检索

!PIP安装Smolagents
导入为yf
model = litellmmodel(model_,api_key =“ your_api_key”)#替换your_api_key
agent = codeagent(tools = [duckduckgosearchtool()],附加_authorized_imports = [“ yfinance”],model = model)
响应= Agent.run(“获取Apple Inc的股票价格(NASDAQ:AAPL)。使用YFINANCE库。”)
打印(响应) 
登录后复制

通过拥抱脸的烟雾剂:在30行以下建造AI代理

结论

Smolagents简化了AI代理的开发。它的关键优势是简单,多功能性,安全性,代码用于工具操作及其集成生态系统。它是构建适应性和可扩展代理系统的宝贵工具。考虑探索代理AI先驱计划,以进行更深入的见解。

以上是通过拥抱脸的烟雾剂:在30行以下建造AI代理的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板