CrewAI + Ertas
使用 CrewAI 協調 AI 代理團隊,每個代理都由專業的 Ertas 訓練模型驅動,實現基於角色的任務執行和協作式工作流程。
Overview
CrewAI 是一個多代理協調框架,將 AI 代理組織成具有定義角色、目標和背景故事的團隊。受到人類團隊運作方式的啟發,CrewAI 為每個代理分配特定角色——研究員、作家、編輯、分析師——並透過結構化的任務委派和順序或並行執行模式協調他們的工作。該框架自動處理代理間通訊、任務依賴、上下文共享和輸出驗證。
CrewAI 的設計理念強 調簡潔性和生產就緒性。代理使用自然語言角色描述來定義,而非複雜的設定檔案,任務以聲明式格式指定預期輸出、工具和委派規則。該框架同時支援順序工作流程(每個代理的輸出作為下一個代理的輸入)和分層工作流程(管理代理委派和審查下屬代理的工作)。這種靈活性使 CrewAI 適用於從內容生產管線到複雜研究和分析工作流程的各種場景。
How Ertas Integrates
Ertas 訓練的模型透過標準 LLM 設定介面驅動 CrewAI 代理。在 Ertas Studio 中微調專家模型後——研究模型、寫作模型、分析模型——您將每個模型分配給相應的 CrewAI 代理角色。代理的角色描述和背景故事在提示層級引導其行為,而微調模型在權重層級提供深度領域專業知識。這種雙層專業化產生既有良好指導又真正具備知識的代理。
CrewAI-Ertas 的組合在內容和分析工作流程中表現出色。以金融研究團隊為例:資料分析師代理(在財務報表分析上訓練)收集和處理公司資料,研究代理(在市場分析上訓練)識別趨勢和競爭動態,寫作代理(在投資備忘錄風格上訓練)將所有內容綜合成精煉的報告。每個代理使用不同的 Ertas 訓練模型,針對其特定任務進行最佳化,CrewAI 協調他們的工作,使最終輸出反映所有三個專家的綜合專業知識。這與讓單一通用模型處理所有事情在質量上截然不同——輸出品質也反映了這種差異。
Getting Started
- 1
定義您的團隊角色並微調模型
識別團隊中所需的專家角色。使用任務特定的訓練範例在 Ertas Studio 中為每個角色微調單獨的模型。
- 2
將模型部署到推理端點
透過 Ollama 或 vLLM 提供微調模型的服務。Ollama 可以同時服務多個模型,非常適合多代理設定。
- 3
使用角色特定模型建立代理
定義具有角色、目標和背景故事的 CrewAI 代理。透過 LLM 設定為每個代理分配其專用的 Ertas 訓練模型。
- 4
定義任務和工作流程結構
建立具有預期輸出的任務並分配給代理。根據任務依賴關係將工作流程設定為順序、並行或分層式。
- 5
運行團隊並迭代
執行團隊工作流程並審查輸出。分析哪些代理需要改善,並在 Ertas Studio 中使用針對性的訓練資料重新訓練其模型 。
from crewai import Agent, Task, Crew
from langchain_openai import ChatOpenAI
# Create specialized LLMs from Ertas-trained models
researcher_llm = ChatOpenAI(
base_url="http://localhost:11434/v1",
model="ertas-researcher-7b",
api_key="not-needed",
)
writer_llm = ChatOpenAI(
base_url="http://localhost:11434/v1",
model="ertas-writer-7b",
api_key="not-needed",
)
# Define agents with role-specific fine-tuned models
researcher = Agent(
role="Market Researcher",
goal="Gather and analyze market data for investment decisions",
backstory="Senior equity analyst with 15 years of experience.",
llm=researcher_llm,
)
writer = Agent(
role="Report Writer",
goal="Write clear, actionable investment memos",
backstory="Financial writer specializing in institutional reports.",
llm=writer_llm,
)
# Define tasks
research_task = Task(
description="Research Q3 earnings for the top 5 semiconductor companies.",
agent=researcher,
expected_output="Structured analysis with revenue, margins, and guidance.",
)
report_task = Task(
description="Write a 2-page investment memo based on the research.",
agent=writer,
expected_output="Professional investment memo with recommendation.",
)
# Run the crew
crew = Crew(agents=[researcher, writer], tasks=[research_task, report_task])
result = crew.kickoff()
print(result)Benefits
- 每個角色都有專門的微調模型,實現基於角色的代理專業化
- 自然語言代理定義使團隊設定直觀且快速
- 順序和分層工作流程處理複雜的多步驟流程
- 代理間上下文共享確保整個團隊輸出的一致性
- 內建任務驗證在錯誤向下游傳播前就將其捕獲
- 具有日誌記錄、回調和錯誤處理的生產就緒框架
Related Resources
Fine-Tuning
GGUF
Inference
LoRA
Getting Started with Ertas: Fine-Tune and Deploy Custom AI Models
How to Fine-Tune an LLM: The Complete 2026 Guide
Fine-Tune AI Models Without Writing Code
Running AI Models Locally: The Complete Guide to Local LLM Inference
Privacy-Conscious AI Development: Fine-Tune in the Cloud, Run on Your Terms
AutoGen
LangChain
Ollama
SuperAgent
vLLM
Ertas for Finance
Ertas for Content Creation
Ertas for Data Extraction
Ertas for AI Automation Agencies
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.