成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

使用Agno實(shí)現(xiàn)AI代理設(shè)計的五個層級,由易到難

人工智能
構(gòu)建AI代理的核心在于夯實(shí)基礎(chǔ),而非追逐潮流或堆砌功能。從基本工具使用到完全異步的代理系統(tǒng),每一級別需建立在穩(wěn)固的架構(gòu)之上,方能增強(qiáng)能力。

AI代理設(shè)計指南

本指南將代理設(shè)計分解為五個實(shí)際難度級別,每個級別均提供可運(yùn)行的代碼示例。

無論開發(fā)者是初學(xué)者還是處理現(xiàn)實(shí)世界的復(fù)雜任務(wù),本指南都能幫助避免常見陷阱,構(gòu)建真正有效的代理。

這些級別包括:

?級別1:帶工具和指令的代理?級別2:帶知識和記憶的代理?級別3:帶長期記憶和推理的代理?級別4:多代理團(tuán)隊?級別5:代理系統(tǒng)

以下逐一介紹各級別。

圖片圖片

級別1:帶工具和指令的代理

此級別為基礎(chǔ)設(shè)置,涉及一個遵循指令并在循環(huán)中調(diào)用工具的大語言模型(LLM)。當(dāng)提到“代理是LLM加上工具使用”時,通常指這一級別,反映了基礎(chǔ)但功能有限的實(shí)現(xiàn)。

圖片圖片

指令明確代理的任務(wù),工具賦予其行動能力,例如獲取數(shù)據(jù)、調(diào)用API或觸發(fā)工作流程。盡管簡單,此設(shè)置已足以自動化某些任務(wù)。

from agno.agent importAgent
from agno.models.openai importOpenAIChat
from agno.tools.duckduckgo importDuckDuckGoTools


agno_assist =Agent(
  name="Agno AGI",
  model=OpenAIChat(id="gpt-4.1"),
  descriptinotallow=dedent("""\
Agno AGI是一個利用Agno框架構(gòu)建代理的自主AI代理。其目標(biāo)是通過提供解釋、可運(yùn)行的代碼示例以及可選的視覺和音頻解釋,幫助開發(fā)者理解和使用Agno的關(guān)鍵概念。"""),
  instructinotallow="搜索網(wǎng)絡(luò)以獲取關(guān)于Agno的信息。",
  tools=[DuckDuckGoTools()],
  add_datetime_to_instructinotallow=True,
  markdown=True,
)
agno_assist.print_response("Agno是什么?", stream=True)

級別2:帶知識和記憶的代理

許多任務(wù)需要模型不具備的外部信息。由于上下文容量有限,代理需在運(yùn)行時獲取知識,這通過代理式RAG或動態(tài)少樣本提示實(shí)現(xiàn)。

圖片圖片

搜索采用混合模式(全文+語義),并需重新排序。混合搜索結(jié)合重新排序是代理式檢索的最佳即插即用方案。

存儲功能為代理提供記憶。LLM默認(rèn)無狀態(tài),存儲過去的行動、消息和觀察結(jié)果使代理具備狀態(tài),能夠參考?xì)v史信息并優(yōu)化決策。

... imports
# 可參考 https://docs.agno.com/llms-full.txt 獲取完整文檔
knowledge_base =UrlKnowledge(
  urls=["https://docs.agno.com/introduction.md"],
  vector_db=LanceDb(
    uri="tmp/lancedb",
    table_name="agno_docs",
    search_type=SearchType.hybrid,
    embedder=OpenAIEmbedder(id="text-embedding-3-small"),
    reranker=CohereReranker(model="rerank-multilingual-v3.0"),
),
)
storage =SqliteStorage(table_name="agent_sessions", db_file="tmp/agent.db")


agno_assist =Agent(
  name="Agno AGI",
  model=OpenAIChat(id="gpt-4.1"),
  descriptinotallow=...,
  instructinotallow=...,
  tools=[PythonTools(),DuckDuckGoTools()],
  add_datetime_to_instructinotallow=True,
# 當(dāng)提供“knowledge”時,默認(rèn)啟用代理式RAG
  knowledge=knowledge_base,
# 將代理會話存儲在sqlite數(shù)據(jù)庫中
  storage=storage,
# 將聊天歷史添加到消息中
  add_history_to_messages=True,
# 歷史運(yùn)行次數(shù)
  num_history_runs=3,
  markdown=True,
)


if __name__ =="__main__":
# 加載知識庫,首次運(yùn)行后可注釋
# agno_assist.knowledge.load(recreate=True)
  agno_assist.print_response("Agno是什么?", stream=True)

級別3:帶長期記憶和推理的代理

長期記憶使代理能夠跨會話回憶細(xì)節(jié),例如用戶偏好、過去行為或失敗嘗試,并隨時間適應(yīng),從而實(shí)現(xiàn)個性化和連續(xù)性。自我學(xué)習(xí)——基于過去經(jīng)驗優(yōu)化行為——是此級別的重要潛力。

圖片圖片

推理能力進(jìn)一步提升代理表現(xiàn),幫助分解問題、優(yōu)化決策并更可靠地執(zhí)行多步驟指令。推理不僅關(guān)乎理解,還能提高每一步的成功率,是嚴(yán)肅代理開發(fā)者必須掌握的核心技能。

... imports


knowledge_base =...


memory =Memory(
# 使用任意模型創(chuàng)建記憶
  model=OpenAIChat(id="gpt-4.1"),
  db=SqliteMemoryDb(table_name="user_memories", db_file="tmp/agent.db"),
  delete_memories=True,
  clear_memories=True,
)


storage =...


agno_assist =Agent(
  name="Agno AGI",
  model=Claude(id="claude-3-7-sonnet-latest"),
# 用于記憶的用戶ID
  user_id="ava",
  descriptinotallow=...,
  instructinotallow=...,
# 賦予代理推理能力
  tools=[PythonTools(),DuckDuckGoTools(),
ReasoningTools(add_instructinotallow=True)],
...
# 將記憶存儲在sqlite數(shù)據(jù)庫中
  memory=memory,
# 讓代理管理其記憶
  enable_agentic_memory=True,
)


if __name__ =="__main__":
# 首次運(yùn)行后可注釋,代理會記住
  agno_assist.print_response("總是以‘hi ava’開始你的消息", stream=True)
  agno_assist.print_response("Agno是什么?", stream=True)

級別4:多代理

代理在專注于單一領(lǐng)域并配備精簡工具集(理想少于10個)時表現(xiàn)最佳。為應(yīng)對復(fù)雜或廣泛任務(wù),可將多個代理組成團(tuán)隊,每個代理處理問題的一部分,共同覆蓋更廣領(lǐng)域。

圖片圖片

然而,若團(tuán)隊領(lǐng)導(dǎo)者缺乏強(qiáng)大推理能力,處理細(xì)微問題時易失敗。當(dāng)前,自主多代理系統(tǒng)的可靠性不足,成功率低于50%,尚無法滿足實(shí)際需求。

某些架構(gòu)可簡化協(xié)調(diào)。例如,Agno支持協(xié)調(diào)、路由和協(xié)作三種執(zhí)行模式,并提供內(nèi)置的記憶和上下文管理。謹(jǐn)慎設(shè)計仍不可或缺,但這些功能使多代理工作更具可行性。

... imports


web_agent =Agent(
  name="Web Search Agent",
  role="處理網(wǎng)頁搜索請求",
  model=OpenAIChat(id="gpt-4o-mini"),
  tools=[DuckDuckGoTools()],
  instructinotallow="始終包含來源",
)


finance_agent =Agent(
  name="Finance Agent",
  role="處理金融數(shù)據(jù)請求",
  model=OpenAIChat(id="gpt-4o-mini"),
  tools=[YFinanceTools()],
  instructinotallow=[
"你是一個金融數(shù)據(jù)專家。提供簡潔準(zhǔn)確的數(shù)據(jù)。",
"使用表格展示股票價格、基本面(市盈率、總市值)",
],
)


team_leader =Team(
  name="Reasoning Finance Team Leader",
  mode="coordinate",
  model=Claude(id="claude-3-7-sonnet-latest"),
  members=[web_agent, finance_agent],
  tools=[ReasoningTools(add_instructinotallow=True)],
  instructinotallow=[
"使用表格展示數(shù)據(jù)",
"僅輸出最終答案,不包含其他文本。",
],
  show_members_respnotallow=True,
  enable_agentic_cnotallow=True,
  add_datetime_to_instructinotallow=True,
  success_criteria="團(tuán)隊已成功完成任務(wù)。",
)


if __name__ =="__main__":
  team_leader.print_response(
"""\
分析近期美國關(guān)稅對以下關(guān)鍵行業(yè)市場表現(xiàn)的影響:
-鋼鐵和鋁業(yè):(X, NUE, AA)
-技術(shù)硬件:(AAPL, DELL, HPQ)


對每個行業(yè):
1.比較關(guān)稅實(shí)施前后的股票表現(xiàn)
2.識別供應(yīng)鏈中斷和成本影響百分比
3.分析公司的戰(zhàn)略應(yīng)對(回岸生產(chǎn)、價格調(diào)整、供應(yīng)商多元化)""",
  stream=True,
  stream_intermediate_steps=True,
  show_full_reasnotallow=True,
)

級別5:代理系統(tǒng)

代理系統(tǒng)標(biāo)志著代理從工具轉(zhuǎn)變?yōu)榛A(chǔ)設(shè)施。此級別涉及完整API,接受用戶請求,啟動異步工作流程,并流式返回生成的結(jié)果。

圖片圖片

理論上流程清晰,實(shí)際操作極具挑戰(zhàn)。需在請求時持久化狀態(tài),啟動后臺作業(yè),跟蹤進(jìn)度,并流式輸出結(jié)果。WebSocket可提供支持,但擴(kuò)展和維護(hù)難度較大,后端復(fù)雜性常被低估。

這一級別是將代理轉(zhuǎn)化為實(shí)際產(chǎn)品的關(guān)鍵,不僅是構(gòu)建功能,而是打造完整系統(tǒng)。

從失敗到成功:代理設(shè)計的關(guān)鍵經(jīng)驗教訓(xùn)

構(gòu)建AI代理的核心在于夯實(shí)基礎(chǔ),而非追逐潮流或堆砌功能。從基本工具使用到完全異步的代理系統(tǒng),每一級別需建立在穩(wěn)固的架構(gòu)之上,方能增強(qiáng)能力。

失敗往往源于忽視基礎(chǔ)原則:清晰的模塊邊界、扎實(shí)的推理、有效的記憶管理,以及適時引入人工干預(yù)。

通過從簡單開始,逐步有針對性地增加復(fù)雜性,僅在解決實(shí)際問題時引入新功能,開發(fā)者能夠構(gòu)建出不僅有趣且真正可靠的代理系統(tǒng)。

責(zé)任編輯:武曉燕 來源: PyTorch研習(xí)社
相關(guān)推薦

2024-07-26 08:59:33

2024-12-05 08:15:00

2020-04-22 10:27:39

人工智能技術(shù)安全

2020-04-22 10:52:44

AI人工智能算法

2025-04-23 11:50:04

MCP服務(wù)器AI代理

2025-02-13 10:39:23

2024-01-04 18:27:04

AI人工智能GenAI

2015-10-12 17:20:21

產(chǎn)品設(shè)計層級

2021-11-24 08:55:38

代理網(wǎng)關(guān)Netty

2025-02-26 07:55:14

2023-12-27 17:20:09

2024-09-20 11:30:14

2022-04-09 17:53:56

Vue.js分支切換嵌套的effect

2013-11-27 10:36:47

命令行工具ping工具

2021-12-14 22:03:59

云計算云存儲數(shù)據(jù)

2009-07-09 17:47:40

使用JDBC

2024-07-05 11:34:07

2021-07-20 10:30:46

Golanghttp語言

2021-02-24 10:08:51

敏捷轉(zhuǎn)型敏捷性CIO

2025-03-03 07:54:51

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 亚洲国产网站 | 亚欧性视频| 日韩精品久久 | 99精品久久| 成人午夜视频在线观看 | 免费观看一级毛片 | www.日韩系列 | 久久久99精品免费观看 | 羞羞的视频免费在线观看 | 伊人网一区 | 亚洲一区视频在线 | 午夜一区二区三区在线观看 | 一区二区三区欧美 | 国产成人精品一区二区三区网站观看 | 一本一道久久a久久精品蜜桃 | 在线观看视频h | 国产一区二区三区精品久久久 | 国产精品成av人在线视午夜片 | 一级毛片视频在线观看 | 四虎成人在线播放 | 成人精品一区二区三区中文字幕 | 欧美激情精品久久久久久 | 国产人成精品一区二区三 | 久久黄网 | 一区二区三区四区在线 | 中文字字幕在线中文乱码范文 | 欧美国产亚洲一区二区 | 伊人精品在线视频 | 久久综合色综合 | 日韩视频中文字幕 | 99久久婷婷国产综合精品电影 | 亚洲播放| 国产精品a一区二区三区网址 | 亚洲激情一区二区 | 宅男噜噜噜66一区二区 | 成年人网站免费视频 | 中文字幕日韩欧美一区二区三区 | 国产福利视频 | 国产欧美一区二区三区久久手机版 | 国产精品美女一区二区 | 91麻豆精品国产91久久久资源速度 |