😆

Agent builder 全機能解説 まとめ

に公開

OpenAIのAIワークフロー

(2025年10月7日)

ノーコード/ローコードで「ワークフローとして組み立てるAI」が一気に普及し、
単発のプロンプトやモデル呼び出しではなく、複数ステップをつなげて業務を自動化する時代が来ています。
Dify の視覚的ワークフロー、n8n のエンタープライズ自動化、
そして Google の Opal に見られる自然言語ベースのミニAI生成。
いずれも「設計しやすく、実行しやすい」体験を軸に進化してきました。

そして本日(2025年10月7日)、OpenAI もこの潮流に本格参入しました。
AgentKit は、

  • Agent Builder(ワークフロー設計)
  • ChatKit(フロントエンド埋め込み)
  • Evals/トレースグレーディング(評価・改善)

これらを一体化し、エージェントの「設計 → 検証 → 本番運用」を
短いフィードバックループで回せるようにする総合ツールキットです。

この記事では、AgentKit を用いたワークフロー構築の基本手順と実践的ポイントを解説します。


はじめに — AgentKit を今すぐ触る

(Agent Builder からスタート)

まずはここからアクセスして動かしてみましょう。


公式チュートリアル(動画)

公式のハンズオン/チュートリアル動画(YouTube)も分かりやすいです。最初のワークフロー作成やツール接続の流れを動画で追いたい場合はこちらを参照してください:
https://www.youtube.com/watch?v=44eFf-tRiSg


Agent Builder — ノードリファレンス(Node Reference)

Agent Builder は、ノードと接続線で構成された ビジュアルワークフローキャンバス です。
各ノードがタスクや判断などのステップを表し、接続線が処理の流れを定義します。
ここでは、利用できる主要なノード群をわかりやすくまとめます。


🧩 Core Nodes(基本ノード)

Start

ワークフローの入力を定義します。
チャット型エージェントでは、次の2つの動作を行います:

  1. ユーザー入力を会話履歴に追加する
  2. input_as_text 変数に入力内容を格納する

必要に応じて、状態変数(state variables)も追加できます。
→ すべてのチャットフローは Start ノード から始まります。


Agent

モデルの動作・指示・ツール設定を定義する中心的ノード。
以下を設定できます:

  • Instructions:モデルへの指示
  • Tools:外部ツールやAPIの呼び出し設定
  • Model Config:モデル、温度、トークン設定など
  • Evaluations:Evalsによる評価を追加可能

💡複数の Agent ノードを組み合わせることで、サブタスクごとに専門化した構成が可能です。

例:

  • Agent A:入力をより明確にリライト
  • Agent B:質問を分類(Q&A or 情報検索)
  • Agent C:分類結果ごとに応答を生成

Note

コメントや補足説明を記入するためのノード。
実行には影響せず、設計メモとして利用します。


🛠 Tool Nodes(ツールノード)

外部データやAPIと連携するためのノード群です。

OpenAI プラットフォーム上のベクターストアを検索します。

  • 検索対象:ベクターストア ID
  • クエリ:モデルが探すべき情報(前段の出力を変数として組み込み可能)

OpenAI ホスト外のデータ検索には MCP ノードを使用します。

📂 File Search ベクターストアで使用可能なファイル形式


ベクターストア
File Search ノードでは、OpenAI プラットフォーム上の ベクターストア(Vector Store) に格納したファイルを検索できます。
登録できるファイルは下表の MIME タイプに対応しており、text/ 形式の場合は utf-8 / utf-16 / ascii のいずれかのエンコーディングである必要があります。

拡張子 MIME Type
.c text/x-c
.cpp text/x-c++
.cs text/x-csharp
.css text/css
.doc application/msword
.docx application/vnd.openxmlformats-officedocument.wordprocessingml.document
.go text/x-golang
.html text/html
.java text/x-java
.js text/javascript
.json application/json
.md text/markdown
.pdf application/pdf
.php text/x-php
.pptx application/vnd.openxmlformats-officedocument.presentationml.presentation
.py text/x-python または text/x-script.python
.rb text/x-ruby
.sh application/x-sh
.tex text/x-tex
.ts application/typescript
.txt text/plain

💡 利用例

  • .pdf.docx ファイルをアップロードして、ドキュメント検索を自動化。
  • .json.md を知識データとして格納し、FAQ やコードリファレンス検索を構築。
  • .py.js を登録し、コード解析や関数検索を行う開発者向けエージェントの構築。

Guardrails

入力・出力を監視し、不正利用や不適切な内容(PII、脱獄、幻覚など)を防ぎます。
基本は pass/fail 判定。不合格時の挙動(終了/再試行)を設定可能。

例:

  • 不正入力 → ワークフロー終了
  • 注意喚起メッセージを返して再入力を促す

MCP (Model Context Protocol)

外部サービスを呼び出すためのノード。
OpenAI コネクタや自前のサーバー、サードパーティ API と接続可能です。
たとえば Gmail、Zapier、Notion などの外部アプリにデータアクセスが可能です。


🔁 Logic Nodes(ロジックノード)

制御フローや条件分岐を担当するノード群です。

If / Else

条件分岐を行います。
CEL(Common Expression Language) 式を使用して条件を記述。

例:

if classification == "QnA" → QnA用エージェントへ  
else if classification == "Fact" → 情報検索エージェントへ  
else → 終了

While

特定条件が真の間、ループ処理を繰り返します。
再試行や段階的処理など、動的制御に有効です。
例: 回答精度が一定スコアに達するまで再生成を繰り返す、など。


Human Approval

人間の承認を挟むためのノード。
たとえば、エージェントがメール下書きを作成し、
「このメールを送信しますか?」とユーザーに確認 → 承認後 MCP ノードで送信、というフローが実現可能です。


💾 Data Nodes(データノード)

データの保持・加工を担うノード群です。

Transform

出力データの形式を変換します(例:オブジェクト → 配列)。
スキーマ整合性を保ち、次のノードが理解しやすい形に変える際に使います。


Set State

グローバル変数を定義します。
あるノードで生成したデータを他ノードで再利用可能にします。
例: ユーザー名やセッションIDなどを全体で共有。


📘 まとめ

ノードカテゴリ 主な目的 代表ノード例
Core Nodes フローの基本構成 Start / Agent / Note
Tool Nodes 外部データ・安全性 File Search / Guardrails / MCP
Logic Nodes 条件分岐・制御 If/Else / While / Human Approval
Data Nodes データ管理・整形 Transform / Set State

💻 ノードを Agent SDK のコードに変換する

Agent Builder で設計したワークフローは、「Get code」 ボタンから
TypeScript または Python 用の Agent SDK コード に変換できます。

これにより、ビジュアルで作成したフローをそのままコード化し、
既存のアプリケーションやバックエンドに統合することが可能になります。


🔧 エクスポート対応言語

言語 対応状況 主な用途
TypeScript ✅ 対応 Web / Node.js アプリへの組み込み
Python ✅ 対応 サーバーサイド、データ処理、API統合など

🧠 生成されるコードの構造(例)

TypeScript

import { OpenAI } from "openai";
import { runGuardrails } from "openai/guardrails";
import { AgentInputItem, Runner } from "openai/agents";

// 共通クライアント設定
const client = new OpenAI({ apiKey: process.env.OPENAI_API_KEY });

// Guardrails設定
const guardrailsConfig = { guardrails: [] };
const context = { guardrailUm: client };

// Guardrails判定ユーティリティ
function guardrailsHasTripwire(results) {
  return (results ?? []).some(r => r?.tripwireTriggered === true);
}

function getGuardrailSafeText(results, fallbackText) {
  for (const r of results ?? []) {
    if (r?.info && "checked_text" in r.info) {
      return r.info.checked_text ?? fallbackText;
    }
  }
  return fallbackText;
}

Python

from openai import OpenAI
from openai.guardrails import run_guardrails
from openai.agents import AgentInputItem, Runner

# クライアント設定
client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))

# Guardrails設定
guardrails_config = {"guardrails": []}
context = {"guardrailUm": client}

# ユーティリティ関数例
def has_tripwire(results):
    return any(r.get("tripwireTriggered") for r in results or [])

def get_safe_text(results, fallback_text):
    for r in results or []:
        if "checked_text" in r.get("info", {}):
            return r["info"]["checked_text"]
    return fallback_text

何ができるのか

Agent Builder 上で設計したノード(Agent、File Search、Guardrails など)を
そのまま SDK コードとして利用可能

ローカル環境や自社クラウド上でワークフローを実行

ChatKit なしで API / CLI ベースの自動化エージェントを構築

Guardrails や MCP、File Search といった要素を
コードレベルで柔軟に制御・拡張可能


🧩 Agent Builder プレビュー — ノード構成とリアルタイムテスト

Agent Builder の最大の特徴のひとつが、ビジュアルなワークフロープレビュー画面です。
エージェントを構築したその場で、ChatGPTのようなUIで対話的にテストし、すぐにデプロイまで行えます。


💡 プレビュー画面の特徴

  • 🎨 直感的なノード構成

    • Start、Agent、Transform、User Approval などのノードをキャンバス上に自由に配置。
    • 接続線で処理フローを定義し、ノードごとの動作を視覚的に理解できます。
  • 💬 ChatGPT風のインターフェース

    • 画面右側にチャット欄があり、実際のエージェントの応答をリアルタイムにテスト可能。
    • 入力と出力の流れを視覚的に確認できるため、プロンプトの改善やフロー調整が容易です。
  • 🧠 ノードごとの動作確認

    • Agent ノードの出力、Transform ノードでのデータ変換、User Approval ノードでの承認待ちなどを即座に確認。
    • 条件分岐やループ動作もその場でテストできます。
  • ⚡️ 即時デプロイ

    • 動作確認後、そのままワークフローをデプロイ可能。
    • OpenAI がホスティングを担当するため、サーバー構築なしで即座に実運用に移行できます。

🔁 典型的なワークフロー例

Start → Agent(応答生成)→ Transform(データ整形)→ Human Approval(承認)

上記のような流れを作成すれば、
ユーザー入力 → モデル応答 → データ加工 → 承認・送信
という一連の処理を視覚的に構築し、数分で実装できます。


🚀 すぐに試してすぐデプロイ

Agent Builder のプレビューは「試作と検証を同時に進められる」環境。
コードを書かずにロジックを調整し、テスト完了後は ワンクリックでデプロイ
そのまま ChatKit でUIに埋め込んだり、Agent SDKとしてエクスポートできます。


✅ まとめ

AgentKit は、エージェント開発のすべての工程をひとつのプラットフォームに統合しました。
Agent Builder で視覚的にワークフローを設計し、ChatKit でユーザー体験を作り、
Agent SDK でコードとして拡張・デプロイできる――
まさに「AIワークフロー時代」の開発環境といえます。

これからは、プロンプトを書くよりも「フローを組む」ことでエージェントを作る時代。
ぜひ Agent Builder から触ってみてください。

Discussion