Upgrade to Pro — share decks privately, control downloads, hide ads and more …

私なりのAIエージェントの理解と開発ツールの選び方

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for chiaoi chiaoi
December 23, 2025
10

 私なりのAIエージェントの理解と開発ツールの選び方

Avatar for chiaoi

chiaoi

December 23, 2025

Transcript

  1. システムの実行はSTARTからENDへのパス END 処理 D 処理 B 処理 A STA RT

    処理 C 例) START → 処理A → 処理B → 処理C → 処理B → END START → 処理A → 処理D → END
  2. ワークフローの理解 処理A 処理C 処理B 処理Bに進む条件が... - 「常にBに進む」(固定フロー) - 「state.count <

    3」(状態を見る) - 「random() < 0.2」(ランダム) - 「”B” in response.content」 (LLMの出力をデータとして読む) 開発者が判断ロジックを定義する
  3. エージェントの理解 LLM 呼び 出し 処理C 処理B 処理Bに進む条件が... - 「response.tool_calls」(Tool useを見る)

    - 「llm.invoke(“次はB or C?”).content == “B”」 (LLMにどうするかを直接質問する) LLMが判断をする
  4. Tool use LLM 呼び出し 処理A Tool A LLMの判断を「構造化されたデータ 」として受け取る仕 組み。

    1. LLMに使えるtoolと、その使い方を教える。 (tool として登録) 2. LLMが、「使うツール名」「引数」を構造化データとし て返す。 開発者はtool_callsを見るだけで分岐できる。 自律的な分岐が簡単に実装できる。→ 必須ではない Tool B
  5. 私なりのAIエージェント理解 1. システムをグラフで捉えると理解がしやすい 2. ワークフローとエージェントの違いは「分岐の進み先を誰が決めるか 」 3. Tool useはエージェントの必須条件ではない →

    自律的な分岐(LLMが判断する分岐)を簡単にする手段 さらに 全てのフレームワークが明示的にグラフを使っているわけではないが、実装 の方法もグラフを使って理解できる。
  6. 明示的にグラフを定義する END 処理 D 処理 B 処理 A STA RT

    tool C 例) LangGraph 条件付き エッジ ノード エッジ ツール ノード
  7. エージェントを一つの処理とみなすこともできる END 処理 D 処理 B 処理 A STA RT

    処理 C マルチエージェントを考えるときには、 この考え方が大切。
  8. ノードの一部をエージェントにする END 処理 B エージェントA STA RT tool C 例)

    LangGraph、Mastra 条件付き エッジ ノード ツール ノード エージェントB
  9. 全てのノードをエージェントにする STA RT 例) Strands Graph エージェント A エージェント C

    エージェント B 条件付きエッ ジ or 並列実行 エージェント D END