Skip to content

DNET_CrewAI

nishi_74322014 edited this page Sep 11, 2026 · 1 revision

CrewAI

概要

人間のチームワークを模倣した分業型エージェント

  • 開発元 / 主導:OSSコミュニティ(CrewAIチーム)
  • 難易度:中(役割設計が必要)
  • 強み:役割分担モデルが分かり易い
  • 弱み:複雑なシナリオでは設計が冗長

詳細

  • 「役割分担する人間チーム」を模したマルチ・エージェント・フレームワーク。

  • エージェント=社員、Task=仕事、Crew=組織、と言うメタファが明確。

  • 人間組織のアナロジー、協調・分業・レビューを重視、概念通り簡単に使えることを優先。

  • 宣言的・直感的で非エンジニアにも理解しやすいが、複雑な状態遷移や例外制御は弱い。

    • PoC・デモ、人的ワークフローの模倣などの用途に向く。
    • 処理が隠蔽されているためデバッグが難しいというトレードオフがある。

特徴

リサーチ・記事執筆・コード開発など「分業タスク」に強い。

  • コンセプト:複数エージェントを「Crew(乗組員)」として役割分担し協調させるフレームワーク。
  • 設計思想:「役割分担」+「プロセス管理」を明示的に書くことでタスクを実行。エージェント間のやりとりをシナリオ化。
  • 特徴的な機能:Crew(乗組員)モデル / タスク指向のワークフロー設計 / エージェント同士のやり取りをシンプルに表現
  • ユースケース:マルチエージェントを使った業務プロセス支援、カスタムAIワークフロー

※ LLMに加えて、人間をチームメンバーに組み込むことも可能。

実装

インストール

uvを使用

uv self update
uv sync
uv tool install crewai
uv tool upgrade crewai

プロジェクト構成

  • 以下は新規作成プロジェクト的なもので、ココで生成されるファイルに定義を行う。

    crewai create crew my_crew
    
  • 以下のようなフォルダ構成が生成される。

    my_crew
    │  .env
    │  .gitignore
    │  pyproject.toml
    │  README.md
    │  uv.lock
    │
    ├─knowledge
    │      user_preference.txt
    │
    ├─src
    │  └─jp_crew
    │      │  crew.py                           ... エージェントの連携方式を定義
    │      │  main.py                           ... エージェントを実行させるコード
    │      │  __init__.py                       ... エントリポイントを実行させるコード
    │      │
    │      ├─config
    │      │      agents.yaml                   ... エージェントを定義する
    │      │      tasks.yaml                    ... エージェントに割り当てるタスクを定義
    │      │
    │      └─tools
    │               custom_tool.py               ... Function calling的なツールの定義
    │               __init__.py
    └─tests
    
  • my_crewに移動

    • CrewAI が必要とする プロジェクト依存関係をインストール

      crewai install
      
    • 定義を行った後、以下のコマンドでエージェントを実行できる。

      crewai run
      

エージェント実装例

ハンズオン

参考

公式

https://www.crewai.com/

IT技術系

移行メモ

  • 元 Wiki の「戻る」の並びで CrewAI が HTML 実体参照(CrewAI)で 書かれていたが、PukiWiki のページ内リンク自動生成を避けるための記法と 思われるため、通常の文字列に戻した。
  • 「crewai create crew debatew」の末尾の「w」は衍字のため除去した。
  • 本 Wiki(dotnetdevelopmentinfrastructure.osscons.jp)への URL リンクは、 移行先のファイル名(予約名)に置き換えた。 元 Wiki ではページ内アンカで個別の節を指していたが、 GitHub Wiki では再現できないため「該当節」の参照に置き換えた。

Tags: 移行, CrewAI, LLMエージェント, マルチエージェント, 役割分担, Crew, Task, uv

NetDevInfraWiki

マイクロソフト系技術情報 Wiki
Open 棟梁 Wiki

(未着手)

開発基盤部会 Wiki

移行管理: DONETODO

Clone this wiki locally