Sider.ai
  • 聊天
  • Wisebase
  • 工具
  • 瀏覽器插件
  • 客户端
  • 定價
立即下載
登入

透過 Sider 更快學習、更深入思考、更聰明成長。

產品
應用程式
  • 擴充功能
  • iOS
  • Android
  • Mac OS
  • Windows
Wisebase
  • Wisebase
  • Deep Research
  • Scholar Research
  • Math Solver
  • Rec NoteNew
  • Audio To Text
  • Gamified Learning
  • Interactive Reading
  • ChatPDF
工具
  • 網站產生器New
  • AI 投影片New
  • AI 論文寫作
  • Nano Banana Pro
  • Nano Banana Infographic
  • AI 圖像生成器
  • 意大利腦洞
  • 背景移除器
  • 背景更換器
  • 照片橡皮擦
  • 文字移除器
  • 修補
  • 圖像升級器
  • 創建
  • AI 翻譯器
  • 圖像翻譯器
  • PDF 翻譯器
Sider
  • 聯絡我們
  • 幫助中心
  • 下載
  • 定價
  • 教育優惠
  • 最新消息
  • 部落格
  • 社群
  • 合作夥伴
  • 聯盟
  • 邀請
©2026 版權所有
使用條款
隱私政策
  • 首頁
  • 部落格
  • AI 工具
  • 如何使用 CrewAI:多代理工作流程實用指南

如何使用 CrewAI:多代理工作流程實用指南

更新於 2025年9月22日

11 分鐘


如何使用 CrewAI:多代理工作流程實用指南

大膽承諾:如果您曾希望可以複製您最好的隊友,以更快地完成專案,那麼 CrewAI 就能讓您更接近這個目標——它會協調多個 AI 代理,共同規劃、協作和交付工作成果。
在這份著重實用、以解決方案為導向的指南中,您將確切地學習如何使用 CrewAI:從安裝框架和定義代理,到建構角色、工具、任務和結構化的多代理工作流程,以交付實際成果。我們將涵蓋研究、內容、資料分析和程式碼產生等模式——以及如何避免常見的陷阱,例如代理死胡同、提示臃腫和工具過度使用。
我們的重點是:為您提供一個逐步的「今天就試試看」的路徑,其中包含複製貼上的程式碼、經過實戰考驗的最佳實踐,以及一些您可以調整的工作流程藍圖。無論您是自動化市場調查,還是從工單建構產品規格,這都是您有效使用 CrewAI 的起點。

什麼是 CrewAI(以及它有何不同)

  • CrewAI 是一個用於建構多代理系統的框架,其中每個代理都有角色、目標、工具和規則。然後,該框架協調這些代理——交接任務、共享上下文,並迭代以達成輸出。
  • 與單個 LLM 提示不同,CrewAI 強制執行結構:代理是明確的、任務是模組化的、工具是經過授權的,並且結果是可稽核的。
  • 好處是:分解的工作流程 (研究 → 綜合 → 寫作 → 品質保證),反映了真實團隊的工作方式——只是更快、可擴展且可重現。

快速入門:如何在 10 分鐘內使用 CrewAI

以下是一個最小的模式,可讓您從零開始到建立一個可運作的多代理團隊。我們將假設使用 Python。

1) 安裝和設定

pip install crewai langchain-openai python-dotenv
建立一個 .env 檔案,其中包含您的 LLM 提供者金鑰:
OPENAI_API_KEY=sk-your-key
# 或您的堆疊支援的其他提供者

2) 定義您的代理 (角色 + 目標 + 工具)

from crewai import Agent
from langchain_openai import ChatOpenAI
llm = ChatOpenAI(model="gpt-4o-mini", temperature=0.2)
researcher = Agent(
role="市場研究員",
goal="尋找關於目標市場和競爭對手的可信、最新的見解。",
backstory=(
"你是一位勤奮的分析師,會驗證聲明、引用來源,並總結"
"來自信譽良好的出版物的信號。"
),
tools=[], # 稍後新增網路/搜尋/抓取工具
llm=llm
)
strategist = Agent(
role="產品策略師",
goal="將研究綜合為清晰的定位和路線圖選項。",
backstory="您優先考慮清晰度、可行性和可衡量的成果。",
tools=[],
llm=llm
)
writer = Agent(
role="內容寫手",
goal="製作結構良好的簡報,其中包含範例和後續步驟。",
backstory="您以簡潔、有說服力的英語寫作,並遵循風格指南。",
tools=[],
llm=llm
)

3) 建立任務 (輸入、輸出和驗收標準)

from crewai import Task
research_task = Task(
description=(
"研究 2025 年美國中小企業專案管理軟體市場。"
"找出主要競爭對手、定價層級、ICP 和三個未滿足的需求。"
"以項目符號形式傳回,並提供 3–5 個引文。"
),
expected_output=(
"一份 Markdown 簡報,包含以下章節:市場規模、主要參與者、定價、ICP、"
"未滿足的需求、來源 (附連結)。"
),
agent=researcher
)
synthesis_task = Task(
description=(
"使用研究簡報,產生一份定位聲明、2–3 個差異化因素,"
"以及一份包含里程碑的 90 天路線圖。"
),
expected_output="一份簡潔的策略備忘錄 (<= 400 字)。",
agent=strategist
)
writing_task = Task(
description=(
"將策略備忘錄變成一份公開的一頁式文件。包含標題、"
"價值主張、功能要點和 CTA。"
),
expected_output="一份適用於登陸頁面的 Markdown 一頁式文件。",
agent=writer
)

4) 協調團隊 (流程 + 記憶)

from crewai import Crew
crew = Crew(
agents=[researcher, strategist, writer],
tasks=[research_task, synthesis_task, writing_task],
process="sequential", # 依序交接輸出
verbose=True
)
result = crew.kickoff
print(result)
那是您的第一個可運作的管道。您定義了代理、連接了任務,並執行了循序流程。若要擴展它,請新增工具 (搜尋、抓取、程式碼執行)、驗證步驟和平行階段。

CrewAI 專案的心理模型

像專案經理一樣思考:
  • 角色:誰做什麼?研究員、分析師、工程師、審閱者。
  • 規則:必須符合哪些標準?風格指南、引文、測試。
  • 工具:允許哪些功能?網路搜尋、向量資料庫、Python、API。
  • 任務:我們如何分解問題?輸入、輸出、驗收標準。
  • 交接:傳遞什麼?人工產物、元資料、約束。
  • 回饋:誰驗證?品質保證代理、人工迴路或測試。
透過 CrewAI,您的程式碼會編碼此操作模型。

如何將 CrewAI 用於實際工作:5 種經過驗證的模式

1) 研究 → 綜合 → 起草 (內容和報告)

  • 代理:研究員、編輯、寫手、事實查核員。
  • 工具:網路搜尋、來源檢查器、風格指南。
  • 提示:強制執行引文和「聲明表」以防止產生幻覺。
fact_checker = Agent(
role="事實查核員",
goal="根據主要來源驗證所有聲明;標記薄弱的引文。",
backstory="懷疑、一絲不苟、公正。",
llm=llm
)
qa_task = Task(
description="驗證所有事實陳述;新增帶有 [FIX] 標籤的內嵌更正。",
expected_output="一份已更正的草稿,其中包含修正摘要。",
agent=fact_checker
)

2) 從工單產生產品規格 (工程)

  • 代理:工單分組器、規格作者、審閱者、測試作者。
  • 工具:問題追蹤器 API、透過嵌入的程式碼庫上下文、單元測試產生器。
  • 提示:新增自動化的「完成定義」檢查清單。

3) 資料 → 見解 → 敘述 (分析)

  • 代理:資料整理員 (Python)、分析師、講故事的人。
  • 工具:Pandas、SQL、圖表、筆記本執行。
  • 提示:使用具有 python 執行的工具型代理來進行可驗證的分析。

4) 具有護欄的程式碼產生

  • 代理:規劃人員、程式設計師、Linter、測試人員、審閱者。
  • 工具:Repo 讀取、單元測試執行器、格式器、安全性掃描器。
  • 提示:要求審閱者參考證明正確性的測試。

5) 大規模的客戶電子郵件序列

  • 代理:分段器、文案撰寫人、個人化人員、品質保證。
  • 工具:CRM API、範本、品牌語氣指南。
  • 提示:新增退信/垃圾郵件檢查工具並強制執行 A/B 變體。

新增工具:賦予代理實際功能

當代理可以使用工具時,CrewAI 才能發揮作用。範例:讓研究員進行網路搜尋和 URL 閱讀。
from langchain_community.tools import DuckDuckGoSearchRun
from langchain_community.document_loaders import WebBaseLoader
search = DuckDuckGoSearchRun
def web_search_tool(query: str):
return search.run(query)
def read_url_tool(url: str):
loader = WebBaseLoader(url)
docs = loader.load
return "\n\n".join([d.page_content[:2000] for d in docs])
researcher.tools = [web_search_tool, read_url_tool]
最佳實踐:
  • 最小權限:僅附加代理真正需要的工具。
  • 綱要規範:工具應該是確定性的和類型化的;儘可能傳回簡潔、結構化的文字 (JSON/Markdown)。
  • 成本控制:保持工具輸出簡短;在交接之前進行摘要。

設計成功的任務

設計良好的任務可以成就或破壞多代理系統。
  • 明確說明:「傳回一個 Markdown 表格,其中包含欄 X、Y、Z。」
  • 定義驗收標準:「包含 3 個連結到主要來源的引文。」
  • 設定界限:字數、時間限制或步驟限制可減少偏差。
  • 包含範例:提供所需輸出格式的迷你規格。
  • 新增記憶體標籤:在任務中使用一致的標題/金鑰,以便於交接。
任務骨架範例:
Task(
description=(
"總結 5 項關於遠端工作效率的最新研究 (2023–2025),其中包含"
"方法、樣本大小和主要發現。"
),
expected_output=(
"Markdown,每個研究都有 H2 章節、最終比較表和連結。"
),
agent=researcher
)

協調模式:循序、平行還是混合

  • 循序:可靠的交接;速度較慢,但更容易推理。
  • 平行:多個代理同時工作 (例如,3 個研究員);稍後合併。
  • 混合:平行擴散研究 → 擴散綜合和品質保證。
混合範例:
r1 = Agent(role="研究員 A", goal="專注於定價", backstory="", llm=llm)
r2 = Agent(role="研究員 B", goal="專注於功能", backstory="", llm=llm)
# r1、r2 的平行任務;後續的綜合任務會合併它們的輸出。
提示:合併時,指示合成器去重、解決衝突,並引用更強的來源。

護欄和品質保證:保持代理誠實

  • 仲裁者:新增具有明確否決權的審閱者或事實查核員。
  • 檢查清單:將合規性 (隱私、安全性、品牌語氣) 編碼為品質保證代理必須勾選的檢查清單。
  • 自我批評:要求代理包含一個簡短的「我可能錯過了什麼」章節。
  • 決定性:對品質保證代理使用較低的溫度。
qa = Agent(
role="品質保證審閱者",
goal="確保輸出符合驗收標準和風格指南。",
backstory="你很嚴格而且迂腐。",
llm=llm
)

CrewAI 代理的提示工程

您的代理提示是迷你職位描述。保持簡潔。
  • 角色提示:你是誰,你優化什麼。
  • 目標提示:所需的最終狀態。
  • 約束:字數、格式、語氣、參考。
  • 工具:名稱、何時使用它們、傳回什麼。
  • 範例:1–2 個簡短、真實的範例。
程式碼片段:
researcher = Agent(
role="分析研究員",
goal=(
"提供簡潔、準確的簡報,其中包含 3–5 個可信的引文和風險注意事項。"
),
backstory=(
"你會驗證聲明、偏好主要來源,並標記不確定性。"
),
llm=llm
)

可觀察性:查看代理做了什麼 (以及原因)

啟用詳細記錄並保留人工產物:
  • 儲存每個任務的提示、輸出和工具呼叫。
  • 儲存包含元資料 (模型、溫度、工具) 的執行資訊清單。
  • 保留用於臨時註釋的草稿;它有助於偵錯和稽核。
模式:
crew = Crew(..., verbose=True, output_log_file="runs/2025-crew.log")

成本、延遲和可靠性提示

  • 批次處理:平行處理獨立任務;限制並行性以避免速率限制。
  • 摘要:壓縮中間人工產物以減少 Token 耗用。
  • 快取:使用向量儲存體記憶穩定的步驟 (例如,市場定義)。
  • 回退:為不穩定的呼叫提供備份模型或重試策略。
  • 人工迴路:在高風險步驟中插入可選的核准閘道。

常見的陷阱 (以及如何修正它們)

  • 陷阱:模糊的任務 → 漫無目的的輸出。
  • 修正:新增明確的驗收標準和範例。
  • 陷阱:工具過多 → 分心和成本。
  • 修正:僅限最小權限、特定於任務的工具。
  • 陷阱:無限迴圈或過度迭代。
  • 修正:新增步驟/時間限制和「如果符合標準則停止」子句。
  • 陷阱:代理之間的上下文遺失。
  • 修正:使用結構化的交接物件 (JSON) 和一致的標題。
  • 陷阱:品質保證事後諸葛。
  • 修正:將品質保證視為具有否決權的一流代理。

端對端範例:競爭簡報產生器

目標:產生一份比較目標人物的三個工具的競爭簡報。
代理:
  • 人物分析師 → 定義痛點和待完成的工作。
  • 研究員 → 收集資料和引文。
  • 合成器 → 建構比較表和見解。
  • 寫手 → 產生最終簡報。
  • 品質保證 → 驗證來源和清晰度。
骨架:
persona = Agent(role="人物分析師", goal="定義 SaaS 中的 RevOps 領導者的 ICP 和 JTBD。", llm=llm)
researcher = Agent(role="研究員", goal="收集可信的資料。", llm=llm)
synth = Agent(role="合成器", goal="比較和解釋。", llm=llm)
writer = Agent(role="寫手", goal="建立一份可供主管閱讀的簡報。", llm=llm)
qa = Agent(role="品質保證", goal="驗證聲明和清晰度。", llm=llm)
persona_task = Task(description="定義 SaaS 中 RevOps 領導者的 ICP 和 JTBD。", agent=persona,
expected_output="要點 + 痛點 + 成功指標。")
research_task = Task(description="收集 3 個工具的定價、功能和評論。", agent=researcher,
expected_output="表格 + 5 個引文。")
synth_task = Task(description="建構比較矩陣和前 3 大見解。", agent=synth,
expected_output="Markdown 表格 + 見解。")
write_task = Task(description="草擬一份包含建議的 1 頁簡報。", agent=writer,
expected_output="Markdown 格式的主管簡報。")
qa_task = Task(description="檢查準確性和可讀性;修正問題。", agent=qa,
expected_output="乾淨、經過驗證的簡報。")
crew = Crew(agents=[persona, researcher, synth, writer, qa],
tasks=[persona_task, research_task, synth_task, write_task, qa_task],
process="sequential", verbose=True)
print(crew.kickoff)

何時使用 CrewAI 與單個提示

在以下情況下使用 CrewAI:
  • 任務自然分解為角色或階段。
  • 您需要可追溯性、品質保證或工具使用。
  • 您正在建構一個可重複使用的管道,而不是一次性的管道。
在以下情況下堅持使用單個提示:
  • 這是一個簡短、主觀的任務,沒有外部工具。
  • 速度比結構更重要。

順道一提:使用 AI 側邊欄更快地起草

如果您使用多代理工作流程來研究、概述和起草內容,值得注意的是,像 Sider.ai 這樣的 AI 側邊欄可以與您的瀏覽器和文件並排使用,以即時摘要頁面、產生大綱和完善草稿。它不會取代 CrewAI 的協調,但它可以加速手動部分——收集程式碼片段、重寫章節或檢查語氣——然後您將內容插回您的團隊中。

可行的後續步驟

  1. 安裝 CrewAI 並執行快速入門範例。
  1. 選擇一個實際工作流程 (研究 → 草擬 → 品質保證) 並對其進行編碼。
  1. 一次新增一個工具;衡量對輸出品質和成本的影響。
  1. 引入具有明確驗收標準的品質保證代理。
  1. 移至混合協調模型以提高速度。

主要要點

  • CrewAI 將複雜的專案變成模組化的多代理工作流程。
  • 成功取決於簡潔的角色、清晰的任務和有紀律的工具使用。
  • 護欄 (品質保證、檢查清單、限制) 可降低成本並提高品質。
  • 從小處著手,然後透過平行研究和混合流程進行擴展。

迷你檢查清單:如何有效使用 CrewAI

  • 明確定義角色、目標和工具。
  • 編寫具有驗收標準和範例的任務。
  • 使用循序以提高可靠性,使用混合以提高速度。
  • 儘早新增品質保證代理;賦予其否決權。
  • 記錄所有內容;儲存人工產物以進行稽核。
  • 透過摘要、快取和批次處理來優化成本。

常見問題

Q1:什麼是 CrewAI,我如何使用它來進行多代理工作流程? CrewAI 是一個用於協調多個具有角色、任務和工具的 AI 代理的框架。您可以使用它來定義代理、建立具有驗收標準的任務,並執行一個協調交接以產生最終輸出的團隊。
Q2:如何將網路搜尋等工具新增至 CrewAI 代理? 將工具函數附加到代理,並指示何時使用它們。保持輸出結構化且簡短(例如,JSON 或 markdown),以控制成本並改善交接。
Q3:我應該在何時使用 CrewAI 而不是單個 LLM 提示? 當任務分解為多個階段、需要使用工具或進行品質保證 (QA),或需要可重複的流程時,請使用 CrewAI。對於不需要結構的快速、主觀任務,請使用單個提示。
Q4:如何防止 CrewAI 輸出中出現幻覺? 新增一個具有否決權的事實檢查員或 QA 代理,要求引用主要來源,為 QA 設定較低的溫度,並指定接受標準,例如聲明表。
Q5:CrewAI 可以並行執行任務以加快速度嗎? 是的。對獨立任務(例如,多個研究人員)使用並行代理,然後使用一個合成器任務來合併結果。混合編排可以平衡速度和可靠性。

最新文章
如何精通 ChatPDF:從密集文件中更快獲取洞見

如何精通 ChatPDF:從密集文件中更快獲取洞見

快速且準確文件的最佳 X 自動翻譯替代方案

快速且準確文件的最佳 X 自動翻譯替代方案

三星 AI 翻譯在伊朗無法使用?實用解決方法

三星 AI 翻譯在伊朗無法使用?實用解決方法

波斯語翻譯工具:加速且精準工作的實用指南

波斯語翻譯工具:加速且精準工作的實用指南

深度且具引用的研究最佳Grok替代方案

深度且具引用的研究最佳Grok替代方案

您真正會用到的 AI 圖像生成器 15 大功能

您真正會用到的 AI 圖像生成器 15 大功能