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中文網其他相關文章!