Skip to main content

15. 動作確認: まず仕組みを検証し、次に実モデルに接続する

同梱ファイルはすべて本チュートリアルと同じディレクトリの demos/ 配下にあります。ローカル教育用 demo は Python 標準ライブラリと Node 組み込みモジュールのみを使います。Python は 3.11+ が必要で、今回の実行では 3.14.7 を使いました。

15.1 今回の実測記録

App Server probe は最初、制限付きサンドボックスで早期終了しました。サンドボックス外での再試行を承認された後、初期化が成功しました。プローブプロセスはすでに終了しており、バックグラウンドの Agent タスクは残っていません。

15.2 実 App Server の探査

これは thread/startturn/start を送りません。独自クライアントを作る場合は、まず現行バージョンのプロトコルを生成してください。
schema ファイルはインターフェースの制約を表すだけであり、承認、エラー、通知、ライフサイクルを完全に接続する必要があります。

15.3 実モデル API の例

まずローカルの秘密環境変数に OPENAI_API_KEY を設定してください。チュートリアルや Git に書き込まないでください。本記事はあなたの API Key を読み取りも使用もしません。モデルとアカウントの対応を確認したうえで、以下を実行できます。
WebSocket steering の例には ws が必要です。
API の例はスクリーンショットに対応する Astra モデル ID gpt-6-astra を固定使用しており、こっそりダウングレードや置き換えはしません。各モードは個別に実行し、async/PTC、steering/自動 compaction などの組合せ制約に違反しないようにしてください。オンライン例はいずれも実測していません。クォータ、ネットワーク、API の変更が動作に影響することがあります。未対応フィールドが出た場合はまず公式ドキュメントとモデル権限を確認し、フィールド名を推測しないでください。

15.4 Demo と本番システムのギャップ

ローカル Runtime の job テーブルはメモリ上にあり、イベントログは永続化できますが、クラッシュ後の実行中タスクの復旧や、プロセス間の冪等性は実装していません。イベントの DB 書き込みとタスク発行は 1 つのアトミックトランザクションでもありません。本番設計では、outbox、永続 job ledger、リースと復旧時の実行状態照合を追加できます。 キャンセルは demo の asyncio コルーチンにしか効きません。ThreadPool で動く Python 関数や実 OS の子プロセスは別の終了設計が必要です。API の例は呼び出しプロトコルを示すためのもので、完全なストリーミング切断復旧、token 予算管理、分散リトライ、本番オブザーバビリティは含みません。

15.5 面接準備に向けた学習ルート