OpenAI Agents SDK · agent runner


エージェント自動化 · OpenAI エージェント SDK
OpenAI Agents SDK アプリで CAPTCHA を解決する
ブラウザ対応エージェントの機能ツールとして CapSolver を追加します。サポートされている CAPTCHA が表示されると、エージェントは CapSolver を呼び出して結果を受け取り、承認されたワークフローを続行できます。ツール呼び出しは、エージェント SDK トレースを通じて確認することもできます。
CAPTCHA 解決の仕組み
サポートされている CAPTCHA が表示されると、エージェントは CapSolver を呼び出し、続行するために必要な結果を受け取ります。
キャプチャが表示される
チャレンジが出現
集める
ページ URL、サイト キー、および CAPTCHA タイプ
解決する
CapSolver にリクエストを送信する
戻る
結果がエージェントに返送される
続ける
エージェントがワークフローを再開します
統合
CapSolver が OpenAI エージェントのワークフローにどのように適合するか
OpenAI Agents SDK は、エージェント ループと関数ツールの呼び出しを管理します。別のブラウザ ツールが Web サイトの対話を処理し、CapSolver がサポートされている CAPTCHA リクエストを処理し、結果をエージェントに返します。
コンポーネント
主な役割
CAPTCHAが表示される場合
OpenAIエージェント
タスクを計画し、ツールを選択し、状態を管理します。
CapSolver 関数ツールをいつ呼び出すかを決定します。
ブラウザツール
ページを移動、クリック、入力し、読み取ります。
ページのコンテキストを提供し、ブラウザーのアクションを続行します。
キャップソルバー
サポートされている CAPTCHA リクエストを処理します。
CAPTCHA の結果をエージェントに返します。
エージェント SDK トレース
エージェントの実行とツールの呼び出しを記録します。
ツールのアクティビティとエラーの確認に役立ちます。
CAPTCHA の範囲
CapSolver は OpenAI エージェントに対してどの CAPTCHA タイプをサポートしていますか?
現在の対象範囲には、Enterprise バリアントを含む reCAPTCHA v2 および v3、および Cloudflare Turnstile が含まれます。
reCAPTCHA v2
標準、非表示、および Enterprise reCAPTCHA v2 チャレンジ。
reCAPTCHA v3
アクションのサポートを備えたスコアベースの Enterprise reCAPTCHA v3 チャレンジ。
クラウドフレア回転木戸
管理された非インタラクティブな非表示のターンスタイル ウィジェット。
その他の CAPTCHA タイプ
CapSolver API を通じて利用できる追加の CAPTCHA タスク タイプを調べてください。
クイックスタート
CapSolver を関数ツールとして OpenAI エージェントに追加する
CapSolver をラップする@function_toolをエージェントのツールに追加し、エージェント SDK がツール呼び出しループを管理できるようにします。
# pip install capsolver-agent openai-agents
# export CAPSOLVER_API_KEY=CAP-XXXXXX
# export OPENAI_API_KEY=sk-XXXXXX
import json
import os
from agents import Agent, Runner, function_tool, set_default_openai_api, set_tracing_disabled
from capsolver_agent.schema import create_executor
from _env import load_example_env # demo only: reads repo-root .env
load_example_env()
set_tracing_disabled(True)
if os.environ.get("OPENAI_BASE_URL"): # OpenAI-compatible gateway (DeepSeek, ...)
set_default_openai_api("chat_completions")
executor = create_executor() # wraps a capsolver-core engine; key from CAPSOLVER_API_KEY
@function_tool
async def solve_captcha(
captcha_type: str,
website_url: str,
website_key: str,
proxy: str | None = None, # pass a proxy for proxy-bound challenges
) -> str:
"""Solve a captcha (reCaptchaV2 / reCaptchaV3 / cloudflare) and return the result as JSON.
Call this whenever a page blocks the task with a CAPTCHA. Provide the
captcha type, the page URL, and the site key from the challenge widget.
"""
args = {"captcha_type": captcha_type, "website_url": website_url, "website_key": website_key}
if proxy:
args["proxy"] = proxy
result = await executor.execute("solve_captcha", args)
return json.dumps(result, ensure_ascii=False)
agent = Agent(
name="captcha-agent",
model=os.environ.get("OPENAI_MODEL", "gpt-4o"),
instructions=(
"You complete web tasks. When a page shows a CAPTCHA, call solve_captcha "
"with the captcha type, page URL and site key, then continue."
),
tools=[solve_captcha],
)
result = Runner.run_sync(
agent,
"Solve the reCaptchaV2 at https://www.google.com/recaptcha/api2/demo with site key "
"6Le-wvkSAAAAAPBMRTvw0Q4Muexq9bi0DJwx_mJ- and report the first 40 characters of the token.",
)
print(result.final_output)
本番環境のベストプラクティス
実稼働 OpenAI エージェントのベスト プラクティス
API キーを安全に保ち、正確な CAPTCHA 詳細を渡し、すべてのリクエストを追跡します。
エリア
おすすめ
なぜそれが重要なのか
APIキーのセキュリティ
CAPSOLVER_API_KEY を環境変数またはシークレット マネージャーに保存します。
プロンプト、ログ、リポジトリでのキーの誤った公開を防ぎます。
ツール入力
CAPTCHA タイプ、ページ URL、サイト キーには明確な入力を使用してください。
エージェントが正しい情報を使用してツールを呼び出すのに役立ちます。
キャプチャの詳細
アプリケーションまたはブラウザ ツールから検証済みの CAPTCHA 詳細を渡します。
モデルがページパラメータを推測できないようにします。
タイムアウトと再試行
全体的なタイムアウトを指定した固定間隔のポーリングを使用します。 HTTP エラーを個別に再試行します。
長時間の待機や不要なリクエストの繰り返しを回避します。
ロギングとトレース
ツール呼び出しに対してエージェント SDK トレースを使用し、taskId、ステータス、およびエラーを記録します。
デバッグとサポートが容易になります。
障害対応
明らかなエラーを返し、失敗が繰り返された場合はワークフローを一時停止します。
ブラインド再試行と予期しないエージェント ループを防ぎます。
最適なユースケース
本番環境で OpenAI エージェントを実行する B2B チーム向けに構築
セールスオートメーション
公開データまたはユーザー提供のビジネス データを使用して、承認された調査および CRM ワークフローをサポートします。
HRテクノロジー
承認された求人および候補者システム全体で承認された採用ワークフローをサポートします。
QAおよびテストツール
サポートされている CAPTCHA に遭遇するサインアップ、チェックアウト、フォームのワークフローをテストします。
RegTech とコンプライアンス
公開レジストリのチェックと証拠収集のワークフローには、信頼性と監査ログが必要です。
研究の自動化
サポートされている CAPTCHA が表示されたときに、調査エージェントが公開 Web 情報を収集できるようにします。
社内RPA
CAPTCHA 解決を必要とするユーザー承認の内部ワークフローをサポートします。
責任ある使用
合法かつ認可された自動化のために構築
CapSolver は、承認された QA テスト、承認された RPA、パブリック データ ワークフロー、およびユーザーが承認したエージェント タスクなど、責任ある自動化を目的として設計されています。ユーザーは、適用される法律、Web サイト規約、プライバシー要件、および料金制限に従わなければなりません。 CapSolver は、不正アクセスや悪意のある自動化をサポートしていません。
認定された QA テスト
承認されたRPA
パブリックデータのワークフロー
ユーザーが承認したエージェントのタスク
コンプライアンスを審査した自動化
アクセシビリティを重視した自動化
よくある質問
関連する統合
エージェント スタック向けの CapSolver 統合をさらに検討する
別の統合を選択して、エージェントまたはブラウザのワークフローに CAPTCHA 解決を追加します。

