例如,像 Windsurf 這樣的現代?AI Agent?可以幫助任何人快速生成、運行、編輯、構建和部署全棧 Web 應用程序。它支持多種 Web 技術和數據庫的代碼生成與應用構建,如 Astro、Vite、Next.js、Superbase 等。

企業中 Multi-Agent 的應用案例 

Agentic AI 系統在企業環境中有著廣泛的應用,尤其是在執行自動化和重復任務方面。以下是 AI Agent 在企業領域中有用的關鍵應用場景:

2024 五大 Agent 框架 

你可以使用多個 Python 框架來創建并將 Agent 添加到應用程序和服務中。這些框架包括無代碼(可視化 AI Agent 構建器)、低代碼和中代碼工具。現在我將向你介紹 2024 年五個頂尖的的基于 Python 的 Agent 構建器,你可以根據自己的業務需求進行自由選擇。

1  Phidata

Phidata 是一個基于 Python 的框架,可將 LLM 轉化為 AI 產品中的 Agent。它支持主流大廠的閉源和開源 LLM,如 OpenAI、Anthropic、Cohere、Ollama 和 Together AI 等。通過其對數據庫和向量存儲的支持,我們可以輕松地將 AI 系統連接到 Postgres、PgVector、Pinecone、LanceDb 等。使用 Phidata,我們可以構建基礎 Agent,也可以通過函數調用、結構化輸出和微調來創建高級 Agent。

Phidata 的主要功能

現在我將向你展示如何使用 Phidata 框架和 OpenAI 的 LLM 在 Python 中構建一個查詢 Yahoo Finance 的金融數據的基本 AI Agent。該 Agent 旨在通過 Yahoo Finance 匯總各公司分析師的推薦意見。

安裝依賴項:

新建一個 financial_agent.py:

import openai
from phi.agent import Agent
from phi.model.openai import OpenAIChat
from phi.tools.yfinance import YFinanceTools
from dotenv import load_dotenv
import os

# 從 .env 文件加載環境變量
load_dotenv()

# 從環境中獲取 API 密鑰
openai.api_key = os.getenv("OPENAI_API_KEY")

# 初始化 Agent
finance_agent = Agent(
name="Finance AI Agent",
model=OpenAIChat(id="gpt-4o"),
tools=[
YFinanceTools(
stock_price=True,
analyst_recommendations=True,
company_info=True,
company_news=True,
)
],
instructions=["Use tables to display data"],
show_tool_calls=True,
markdown=True,
)

# 輸出分析師對 NVDA 的推薦摘要
finance_agent.print_response("Summarize analyst recommendations for NVDA", stream=True)

上述代碼:

  1. 導入模塊和加載 API 密鑰
    首先,導入所需的模塊和包,并通過 .env 文件加載 OpenAI 的 API 密鑰。這種加載 API 密鑰的方式同樣適用于其他模型提供商,如 Anthropic、Mistral 和 Groq。
  2. 創建代理
    使用 Phidata 的 Agent 類創建一個新的 Agent,并指定其獨特的功能和特性,包括模型、工具、指令等。
  3. 打印響應
    調用 print_response 方法輸出代理對問題的響應,并指定是否以流式方式顯示(stream=True)。

2  Swarm

Swarm 是 OpenAI 最近發布的一種開源實驗性 Agent 框架,是一種輕量級的 Multi-Agent 編排框架。

注意:Swarm 仍處于實驗階段??捎糜陂_發和教育目的,但不建議用于生產環境。最新的信息可以去參考官方倉庫:

https://github.com/openai/swarm

Swarm 使用 Agents 和 Handoffs(交接) 作為抽象概念,用于 Agent 的編排和協調。它是一種輕量級框架,便于測試和管理。Swarm 的 Agent 可以配置工具、指令和其他參數,以執行特定任務。

除了其輕量和簡單的架構,Swarm 還具備以下關鍵特性:

  1. 對話交接:Swarm 支持構建 Multi-Agent 系統,一個 Agent 可以在任意時間將對話交接給其他 Agent。
  2. 可擴展性:憑借其簡化的交接架構,Swarm 易于構建能夠支持數百萬用戶的 Agent 系統。
  3. 可擴展性:Swarm 設計上具有很高的可定制性,可用于創建完全定制化的 Agent 體驗。
  4. 內置檢索系統和內存處理:Swarm 內置了存儲和處理對話內容的功能。
  5. 隱私保護:Swarm 主要在客戶端運行,并且不會在調用之間保留狀態,極大地提高了數據隱私性。
  6. 教育資源:Swarm 提供了一系列基礎到高級的 Multi-Agent 應用示例,可供開發者測試和學習。

接下來,我給你演示一下如何使用 Swarm:

from swarm import Swarm, Agent

# 初始化 Swarm 客戶端
client = Swarm()
mini_model = "gpt-4o-mini"

# 定義協調函數,用于將任務交接給 Agent B
def transfer_to_agent_b():
return agent_b

# 定義 Agent A
agent_a = Agent(
name="Agent A",
instructions="You are a helpful assistant.",
functions=[transfer_to_agent_b],
)

# 定義 Agent B
agent_b = Agent(
name="Agent B",
model=mini_model,
instructions="You speak only in Finnish.",
)

# 運行 Agent 系統并獲取響應
response = client.run(
agent=agent_a,
messages=[{"role": "user", "content": "I want to talk to Agent B."}],
debug=False,
)

# 打印 Agent B 的響應
print(response.messages[-1]["content"])

上述代碼

  1. 初始化
  2. 交接邏輯
  3. 運行代理系統

如果將 agent_b 的指令中語言更改為其他語言(如英語、瑞典語、芬蘭語),將會得到相應語言的響應結果。

3  CrewAI

CrewAI 是最受歡迎的基于 Agent 的 AI 框架之一,可快速構建 AI Agent 并將其集成到最新的 LLM 和代碼庫中。像 Oracle、Deloitte、Accenture 等大公司都在使用并信任 CrewAI。

與其他基于 Agent 的框架相比,CrewAI 功能更加豐富,特性更加多樣。

  1. 可擴展性支持集成 700 多種應用程序,包括 Notion、Zoom、Stripe、Mailchimp、Airtable 等。
  2. 工具
  3. 部署你可以使用自己喜歡的部署方式,將開發的 Agent 快速遷移到生產環境。
  4. Agent 監控像 Phidata 一樣,CrewAI 提供直觀的儀表盤,用于監控 Agent 的進度和性能。
  5. 內置訓練工具使用 CrewAI 的內置訓練和測試工具,提高 Agent 的性能和效率,并確保其響應質量。

首先我們需要安裝 CrewAI:

上述命令會安裝 CrewAI 及其工具,并驗證安裝是否成功。

安裝完成后,可運行以下命令創建一個新的 CrewAI 項目:

運行該命令后,系統會提示我們從以下模型提供商列表中選擇一個,例如 OpenAI、Anthropic、xAI、Mistral 等。選擇提供商后,還可以從列表中選擇具體模型,例如 gpt-4o-mini。

以下命令可用于創建 Multi-Agent 系統:

完整的 CrewAI 應用已上傳到 GitHub 倉庫,可通過以下命令下載并運行:

https://github.com/GetStream/stream-tutorial-projects/tree/main/AI/Multi-Agent-AI

運行后,你將看到類似以下的響應結果:

4  Autogen

Autogen 是一個開源框架,用于構建 Agent 系統。借助該框架,可以創建 Multi-Agent 協作和 LLM 工作流。

Autogen 具備以下關鍵功能:

  1. 跨語言支持使用 Python 和 .NET 等編程語言構建 Agent。
  2. 本地 Agent可在本地運行和實驗 Agent,以確保更高的隱私性。
  3. 異步消息通信使用異步消息進行 Agent 之間的通信。
  4. 可擴展性支持開發者構建分布式 Agent 網絡,適用于不同組織之間的協作。
  5. 可定制性通過其可插拔組件,自定義構建完全個性化的 Agent 系統體驗。

下面的代碼塊構建了一個簡單的 AI 天氣 Agent 系統:

import asyncio
from autogen_agentchat.agents import AssistantAgent
from autogen_agentchat.task import Console, TextMentionTermination
from autogen_agentchat.teams import RoundRobinGroupChat
from autogen_ext.models import OpenAIChatCompletionClient

import os
from dotenv import load_dotenv

load_dotenv()

# 定義工具
async def get_weather(city: str) -> str:
return f"The weather in {city} is 73 degrees and Sunny."

async def main() -> None:
# 定義 Agent
weather_agent = AssistantAgent(
name="weather_agent",
model_client=OpenAIChatCompletionClient(
model="gpt-4o-mini",
api_key=os.getenv("OPENAI_API_KEY"),
),
tools=[get_weather],
)

# 定義終止條件
termination = TextMentionTermination("TERMINATE")

# 定義 Agent 團隊
agent_team = RoundRobinGroupChat([weather_agent], termination_condition=termination)

# 運行團隊并將消息流至控制臺
stream = agent_team.run_stream(task="What is the weather in New York?")
await Console(stream)

asyncio.run(main())

上述代碼

  1. 工具定義:get_weather 是一個示例工具函數,返回城市天氣信息。
  2. 代理定義:使用 AssistantAgent 定義 Agent,并設置模型客戶端為 OpenAI 的 GPT-4o-mini。API 密鑰從 .env 文件中加載。
  3. 終止條件:通過 TextMentionTermination 定義終止條件,當提及 “TERMINATE” 時終止任務。
  4. Agent 團隊:使用 RoundRobinGroupChat 創建一個 Agent 團隊,以輪詢方式分配任務。

運行此代碼后,控制臺將顯示類似于以下的輸出結果:

5  LangGraph

LangGraph 是基于節點的 AI 框架,專為構建處理復雜任務的 Multi-Agent 系統而設計。作為 LangChain 生態系統的一部分,LangGraph 是一種圖結構的 Agent 框架。用戶可以通過節點和邊來構建線性、層次化和順序化的工作流。其中,節點(node)表示 Agent 的動作,邊(edge)表示動作之間的轉換,狀態(state)則是 LangGraph Agent 的另一重要組成部分。

LangGraph 的優勢和主要功能

  1. 免費開源LangGraph 是一個免費的庫,遵循 MIT 開源許可證。
  2. 流式支持提供逐字流式支持,展示 Agent 的中間步驟和思考過程。
  3. 部署選項支持多種大規模部署方式,可通過 LangSmith 監控 Agent 性能。企業版選項允許完全在用戶自有基礎設施上部署 LangGraph。
  4. 企業適配Replit 使用 LangGraph 為其 AI 編碼 Agent 提供支持,證明了 LangGraph 的企業適用性。
  5. 高性能在處理復雜的 Agent 工作流時,不會增加代碼負擔。
  6. 循環與可控性可以輕松定義包含循環的 Multi-Agent 工作流,并對 Agent 的狀態進行完全控制。
  7. 持久化LangGraph 會在圖中每一步操作后自動保存 Agent 狀態,還支持在任意點暫停和恢復圖的執行。

本文章轉載微信公眾號@PyTorch研習社

上一篇:

本地部署資訊問答機器人:Langchain+Ollama+RSSHub實現RAG

下一篇:

AIAgent框架——MetaGPT技術詳解
#你可能也喜歡這些API文章!

我們有何不同?

API服務商零注冊

多API并行試用

數據驅動選型,提升決策效率

查看全部API→
??

熱門場景實測,選對API

#AI文本生成大模型API

對比大模型API的內容創意新穎性、情感共鳴力、商業轉化潛力

25個渠道
一鍵對比試用API 限時免費

#AI深度推理大模型API

對比大模型API的邏輯推理準確性、分析深度、可視化建議合理性

10個渠道
一鍵對比試用API 限時免費