<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>AI Automation on YennJ12 Engineering Blog</title><link>https://yennj12.js.org/yennj12_blog_V4/tags/ai-automation/</link><description>Recent content in AI Automation on YennJ12 Engineering Blog</description><generator>Hugo -- gohugo.io</generator><language>en-us</language><lastBuildDate>Fri, 22 May 2026 09:00:00 +0800</lastBuildDate><atom:link href="https://yennj12.js.org/yennj12_blog_V4/tags/ai-automation/feed.xml" rel="self" type="application/rss+xml"/><item><title>CrewAI 完全指南（一）：入門與核心概念——用多 Agent 協作解決複雜問題</title><link>https://yennj12.js.org/yennj12_blog_V4/posts/crewai-series-part1-introduction-zh/</link><pubDate>Thu, 21 May 2026 09:00:00 +0800</pubDate><guid>https://yennj12.js.org/yennj12_blog_V4/posts/crewai-series-part1-introduction-zh/</guid><description>前言 你有沒有遇過這樣的情境？
你想讓 AI 幫你完成一個任務，但任務太複雜，單一的 ChatGPT 對話沒辦法做好：
需要同時搜尋網路、分析資料、寫報告 不同步驟需要不同的「專業角色」 任務很長，單一 context window 放不下 CrewAI 就是為了解決這個問題而生的。它讓你可以建立一個由多個 AI Agent 組成的團隊，每個 Agent 有自己的角色、工具和目標，協作完成複雜任務。
什麼是 CrewAI？ CrewAI 是一個開源的 Python 框架，專門用來建立多 Agent 協作系統。
用一個類比來說：
傳統 LLM 呼叫：你問一個全才顧問所有問題 CrewAI：你僱用一個團隊——研究員、分析師、文案、專案經理——各司其職 CrewAI 的核心理念是角色扮演 + 任務分工：
每個 Agent 有明確的職責（role）、目標（goal）、背景故事（backstory） 任務按照依賴關係自動排序和傳遞 Crew 負責協調整個流程 CrewAI vs 其他 Multi-Agent 框架 框架 特點 學習曲線 CrewAI 角色扮演導向，強調協作，設定直覺 低 LangGraph 圖形化流程，狀態機，彈性高 中高 AutoGen Microsoft 出品，對話式協作 中 LangChain Agents 工具豐富，但單 Agent 中 CrewAI 的設計哲學：讓非工程師也能理解 Agent 的邏輯（因為你在描述一個「團隊」，而不是寫演算法）。</description></item><item><title>CrewAI 完全指南（二）：三個真實場景實戰——競情分析、程式碼審查、客服自動化</title><link>https://yennj12.js.org/yennj12_blog_V4/posts/crewai-series-part2-real-world-tasks-zh/</link><pubDate>Fri, 22 May 2026 09:00:00 +0800</pubDate><guid>https://yennj12.js.org/yennj12_blog_V4/posts/crewai-series-part2-real-world-tasks-zh/</guid><description>前言 上一篇我們建立了第一個 CrewAI 應用。
這篇直接進入真實工作場景，用三個完整範例展示 CrewAI 能為企業解決什麼問題。每個範例都有完整可執行的程式碼，以及設計上的關鍵決策說明。
場景一：競爭對手情報分析系統 業務背景 產品經理每週需要花 2-3 小時手動追蹤競爭對手動態：新功能、定價變化、媒體報導。這是一個重複性高、但需要一定判斷力的工作，非常適合 CrewAI 自動化。
系統設計 使用者輸入：公司名稱清單 + 分析重點 ↓ [情報收集員] 搜尋每家公司的最新動態 ↓ [分析師] 分析收集到的情報，找出威脅與機會 ↓ [報告撰寫員] 產出格式化的週報，附行動建議 完整程式碼 1import os 2from crewai import Agent, Task, Crew, Process 3from crewai_tools import SerperDevTool, ScrapeWebsiteTool 4from pydantic import BaseModel 5from typing import List 6 7os.environ[&amp;#34;OPENAI_API_KEY&amp;#34;] = &amp;#34;your-api-key&amp;#34; 8os.environ[&amp;#34;SERPER_API_KEY&amp;#34;] = &amp;#34;your-serper-key&amp;#34; 9 10search_tool = SerperDevTool() 11scrape_tool = ScrapeWebsiteTool() 12 13# ---- Pydantic 模型定義輸出結構 ---- 14 15class CompetitorInsight(BaseModel): 16 company: str 17 recent_news: List[str] 18 new_features: List[str] 19 pricing_changes: str 20 threat_level: str # low / medium / high 21 opportunities: List[str] 22 23class IntelligenceReport(BaseModel): 24 summary: str 25 competitors: List[CompetitorInsight] 26 key_threats: List[str] 27 recommended_actions: List[str] 28 29# ---- 定義 Agents ---- 30 31intelligence_collector = Agent( 32 role=&amp;#34;市場情報收集員&amp;#34;, 33 goal=&amp;#34;系統性地收集競爭對手的最新公開資訊，確保資訊的時效性和完整性&amp;#34;, 34 backstory=&amp;#34;&amp;#34;&amp;#34;你是一位專業的市場情報分析師，擅長從公開資源中找到有價值的競爭情報。 35 你熟悉如何在新聞、官方部落格、社群媒體、產品更新公告中尋找關鍵訊號。 36 你注重資料的來源和時效性，只引用近期（3 個月內）的資訊。&amp;#34;&amp;#34;&amp;#34;, 37 tools=[search_tool, scrape_tool], 38 llm=&amp;#34;gpt-4o-mini&amp;#34;, 39 verbose=True, 40 max_iter=15, 41) 42 43market_analyst = Agent( 44 role=&amp;#34;市場策略分析師&amp;#34;, 45 goal=&amp;#34;分析競爭情報，識別對公司的威脅和市場機會，提供有深度的策略洞察&amp;#34;, 46 backstory=&amp;#34;&amp;#34;&amp;#34;你是一位有豐富經驗的市場策略分析師，曾在頂尖顧問公司工作多年。 47 你擅長從零散的資訊中找出規律和趨勢，並評估其業務影響。 48 你的分析既有宏觀視野，也有具體的行動建議。&amp;#34;&amp;#34;&amp;#34;, 49 verbose=True, 50 llm=&amp;#34;gpt-4o&amp;#34;, 51) 52 53report_writer = Agent( 54 role=&amp;#34;商業報告撰寫員&amp;#34;, 55 goal=&amp;#34;將分析結果轉化為清晰、可行動的週報，讓高層能快速掌握重點&amp;#34;, 56 backstory=&amp;#34;&amp;#34;&amp;#34;你是一位資深的商業報告撰寫專家，了解高層主管的閱讀習慣： 57 重點先說、數據說話、建議要具體。你的報告簡潔有力，能讓繁忙的決策者 58 在 5 分鐘內掌握所有關鍵資訊。&amp;#34;&amp;#34;&amp;#34;, 59 verbose=True, 60 llm=&amp;#34;gpt-4o&amp;#34;, 61) 62 63# ---- 定義 Tasks ---- 64 65collection_task = Task( 66 description=&amp;#34;&amp;#34;&amp;#34;收集以下競爭對手的最近 4 週內公開資訊： 67 競爭對手清單：{competitors} 68 分析重點：{focus_areas} 69 70 對每家公司，請搜尋並整理： 71 1.</description></item></channel></rss>