首頁 > 科技週邊 > 人工智慧 > 通過擁抱臉的煙霧劑:在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
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板