フィールドガイド / 9 分
Responses をシステム境界にする
typed items、状態選択、観測可能な出力から設計する。
Responses API は新しい OpenAI integration の推奨出発点です。単なる text generation wrapper ではなく、message、tool call、tool result、将来の input type を明示的な event として扱います。
作業原則
文字列より Items
typed input / output items を保持する。message、function call、function result は別の責任を持つ event です。
状態を意図的に選ぶ
server-managed history、previous response chain、persistent conversation のどれを使うか決め、保持と削除を可視化します。
境界で正規化する
provider response fields を製品全体へ漏らさず、安定した application response type を提供します。
フィールド手順
- 01
製品契約を書く
input modalities、expected output、許可する side effects、latency budget、caller が必要な evidence を列挙します。
- 02
typed items に変換
user text、system instructions、files、prior context を明示的な input sequence にします。
- 03
状態経路を選ぶ
stateless、response-chained、conversation-backed を文書化し、本番前に削除経路を用意します。
- 04
output ledger を解析
message、tool calls、tool results、refusals を別 branch で扱い、最初の item を final text と仮定しません。
- 05
受入証拠を残す
request ID、timing、tool outcome、validation、application decision を記録し、機密本文は既定で残しません。
PASS / FAIL
受入チェック
- Typed request adapter がある。
- 状態と保持 policy が文書化されている。
- すべての output item type に branch がある。
- empty、refusal、tool-use、malformed outcome をテストする。
WATCH / REJECT
失敗パターン
- raw provider object を codebase 全体へ渡す。
- stored response state を製品 database とみなす。
- convenience text だけを読み tool/refusal event を失う。