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. 1

      定義您的團隊角色並微調模型

      識別團隊中所需的專家角色。使用任務特定的訓練範例在 Ertas Studio 中為每個角色微調單獨的模型。

    2. 2

      將模型部署到推理端點

      透過 Ollama 或 vLLM 提供微調模型的服務。Ollama 可以同時服務多個模型,非常適合多代理設定。

    3. 3

      使用角色特定模型建立代理

      定義具有角色、目標和背景故事的 CrewAI 代理。透過 LLM 設定為每個代理分配其專用的 Ertas 訓練模型。

    4. 4

      定義任務和工作流程結構

      建立具有預期輸出的任務並分配給代理。根據任務依賴關係將工作流程設定為順序、並行或分層式。

    5. 5

      運行團隊並迭代

      執行團隊工作流程並審查輸出。分析哪些代理需要改善,並在 Ertas Studio 中使用針對性的訓練資料重新訓練其模型。

    python
    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)
    使用不同的 Ertas 訓練模型分別擔任研究和寫作角色,透過 CrewAI 建立金融研究團隊。

    Benefits

    • 每個角色都有專門的微調模型,實現基於角色的代理專業化
    • 自然語言代理定義使團隊設定直觀且快速
    • 順序和分層工作流程處理複雜的多步驟流程
    • 代理間上下文共享確保整個團隊輸出的一致性
    • 內建任務驗證在錯誤向下游傳播前就將其捕獲
    • 具有日誌記錄、回調和錯誤處理的生產就緒框架

    Related Resources

    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.