公式OpenAI認証でAstra APIをセットアップする
Updated 2026-09-05
文書化されたgpt-6-astraモデルID、OpenAI Platformキー、公式エンドポイントを使います。アカウントアクセス、リクエスト処理、エージェント検証を明確に分けて管理します。
まずプロバイダーと請求アカウントを確認する
自分のOpenAI Platformキーを使い、OpenAIのAPI経由でgpt-6-astraを利用します。アプリケーションでは、以下のResponsesの例から始めてください。ローカルのコーディング作業では、Codex CLIのログインとモデル選択コマンドを使います。どちらの経路もPlatformアカウントを使い、該当するOpenAI料金に基づくAPI料金が発生します。
リクエストを実行する前に、Platformプロジェクトの所有者、そのキーでモデルにアクセスできるか、適用される課金管理を確認してください。ChatGPTまたはCodexにモデルが表示されても、すべてのAPIプロジェクトからアクセスできるとは限りません。サブスクリプションログインとAPIキーのログインを作業記録で分けてください。後で上限を診断したり料金を照合したりするとき、この区別が重要になります。

信頼できる環境でキーとクライアントを準備する
OpenAIダッシュボードでAPIキーを作成し、非公開の環境またはシークレットマネージャーを通じてOPENAI_API_KEYとして渡します。公式SDKはこの変数を読み取ります。キーをブラウザJavaScript、公開リポジトリ、スクリーンショット、共有ターミナルの記録に埋め込まないでください。認証情報を扱っている間はシェルのトレースも避けます。
以下のJavaScript例では、npm install openaiを使ってプロジェクトに公式openaiパッケージをインストールします。インストールされたバージョンをlockfileに記録してください。明示的なbaseURLにより、継承されたカスタムエンドポイントではなくOpenAIが選択されます。既存のエージェント設定も確認しましょう。プロバイダーの上書き設定と別サービスの認証情報は、どちらもAuthorizationヘッダーを受け付けるからといって互換になるわけではありません。
| 設定 | 公式の直接設定 | 実行前の確認 |
|---|---|---|
| 認証情報 | OPENAI_API_KEY | 自分のOpenAI Platformプロジェクト |
| Base URL | https://api.openai.com/v1 | 意図しないプロバイダー上書きがないこと |
| モデル | gpt-6-astra | 選択したキーでのアクセス |
| リクエストAPI | Responses | クライアントがレスポンス形式に対応していること |
Responsesリクエストを送り、回答を読み取る
次のコードを使ってastra-example.mjsを作成し、node astra-example.mjsを実行します。プロンプトは短いチェックリストを求めるため、大きなワークフローに接続する前に返答を確認できます。最初のリクエストでは自動SDKリトライを無効にして、接続エラーやアカウントエラーを診断しやすくします。
ステータスがcompletedの場合、response.output_textにはSDKがまとめたテキスト出力が入ります。別のプログラムで利用したりファイルへリダイレクトしたりできるよう、標準出力へ表示してください。回答のメタデータは標準エラー出力へ送り、回答と分離します。未完了のレスポンスでは、incomplete_detailsとusageを保持し、終了コードを0以外にしてください。
import OpenAI from 'openai'
const client = new OpenAI({
apiKey: process.env.OPENAI_API_KEY,
baseURL: 'https://api.openai.com/v1',
maxRetries: 0,
})
const response = await client.responses.create({
model: 'gpt-6-astra',
input: 'List three checks for a small code change.',
})
console.error(JSON.stringify({
id: response.id,
model: response.model,
status: response.status,
usage: response.usage,
incomplete_details: response.incomplete_details,
}))
if (response.status === 'completed') {
console.log(response.output_text)
} else {
process.exitCode = 1
}ローカルCodexではAPIキー認証を選択する
OpenAIはローカルCodex作業向けのAPIキーでのログインを文書化しています。CLIでは、認証情報を変更する前にcodex login statusを確認してください。以下の標準入力コマンドを使えば、シークレットをコマンド引数に貼り付けずに済みます。ログイン後、アクティブな認証方式をもう一度確認し、CLIのモデルフラグで正確なモデルを選びます。
最後のコマンドはAstraを選択した対話セッションを開きます。エージェントが適切なファイルとリポジトリの指示を読めるよう、プロジェクトディレクトリから開始してください。既存のプロバイダー上書き設定を確認し、アクティブなアカウントを確かめます。APIキー方式はローカル作業に対応しますが、Codex cloudにはChatGPT認証が必要です。クラウドのタスクをローカルで継続したい場合は、まず作業ファイルと残りの作業の短い要約をローカルプロジェクトへ持ち込んでください。
codex login status
printenv OPENAI_API_KEY | codex login --with-api-key
codex login status
codex --model gpt-6-astra機能をクライアント経路に合わせる
AstraはResponsesとChat Completionsに対応していますが、ツール呼び出しにはResponsesが必要です。関数やカスタムツールを実行するエージェントにはResponsesを使ってください。chat choicesを読むように書かれたクライアントは、URLだけを変えてもResponsesの出力を解析できません。また、テキストのみのスモークテストではツールループを検証できません。
アプリケーションの小さな例を使い、一度に一つの機能を追加します。ツールでは、引数を検証し、アプリケーション内で関数を実行し、対応するcall_idを付けてResponsesを通じて結果を返すことを確認します。構造化出力では、スキーマを検証し、未完了のレスポンスを処理します。ストリーミングでは、テキストだけでなく完了イベントとキャンセルイベントも処理します。これらの機能を追加している間も、診断経路として単純なテキストリクエストを利用できる状態にしておきます。
アクセス、レート、完了の失敗を分けて診断する
リトライする前に、HTTPステータスと構造化されたエラーフィールドを確認してください。OpenAIのエラーガイドでは、認証不備、クレジット枯渇、強制された支出上限、リクエストレートの圧力が区別されています。特に429レスポンスだけでは対処方法を決められません。error.codeと関連するアカウント設定を確認してください。
一時的なレート圧力には、Retry-Afterがあればそれに従い、上限を設けたリトライを使います。請求または支出上限による失敗にはアカウント側の判断が必要で、リクエストを繰り返しても解決しません。未完了とマークされたResponsesの結果は別の状態であり、すでにトークンを消費している可能性があります。秘匿化したエラー情報と使用量を保持し、タイムアウトやレシートの欠落を成功または無料の試行として扱わないでください。
| 観測できるシグナル | 調査すべき意味 | 次のアクション |
|---|---|---|
| HTTP 401 | 認証またはアカウント設定 | キーとプロジェクトを確認する |
| HTTP 429、credit_balance_exhausted(クレジット枯渇) | 前払いクレジットの枯渇 | Platformの請求を確認する |
| HTTP 429、project_spend_limit_exceeded(プロジェクト支出上限) | プロジェクトに設定された支出上限 | 承認済み予算を確認する |
| HTTP 429、slow_down | リクエストレートの上昇が速すぎる | リクエストのペースを落とし、Retry-Afterに従う |
| status: incomplete | 生成が完了しなかった | incomplete_detailsとusageを確認する |
提供状況と根拠:2026年9月5日
OpenAIは段階的ロールアウトでGPT-6 Astraを発表しており、モデルリファレンスには公式APIが記載されています。ここで示す例はそのソースに沿ったものですが、この記事のために有料リクエストやCodexの認証切り替えを実行したわけではありません。2026年9月5日のAPIsRouter公開料金カタログ確認では、HTTP 200、success: true、34モデルが返り、AstraまたはGPT-6の項目はありませんでした。
上記に示した公式エンドポイントでは、OpenAIの認証情報だけを使ってください。APIsRouterの提供物はライブカタログで確認します。後日Astraが掲載されても、アプリケーションで使う前に正確なモデルID、価格、必要なクライアント機能を確認する必要があります。
レスポンスを役立つローカルワークフローにつなぐ
関数の説明とテストの提案のように、具体的な結果が得られるローカルタスクを一つ選びます。関連するファイルパス、期待する動作、テストコマンドをエージェントに伝えてください。コードを変更した後は差分を確認し、対象を絞ったテストを実行します。入力元と返された回答を一緒に保持すると、改訂内容を比較しやすくなります。
アプリケーションでは、completedのテキストをレビュー画面やドキュメントパイプラインに渡します。次の工程が機械可読データを求める場合は、構造化出力を使い、保存前に必須フィールドを検証してください。リクエストIDと使用量をタスク情報とともに保持し、上限を設けたリトライポリシーを設定します。基本的な入力、レスポンス処理、完了確認が連携して動作してから、ワークフローを拡張します。
よくある質問
AstraにはどのモデルIDを使うべきですか?
公式OpenAIモデルリファレンスに記載されているgpt-6-astraを、そのまま使ってください。選択したOpenAI APIキーにも、そのモデルへのアクセス権が必要です。
この例ではどのキーが必要ですか?
https://api.openai.com/v1と組み合わせ、自分のOpenAI PlatformキーをOPENAI_API_KEYとして使います。
APIキーでローカルCodexにAstraを使えますか?
キーにモデルアクセス権がある場合は使えます。CLIのAPIキーコマンドでサインインし、ログイン状態を確認して、--modelでgpt-6-astraを選択してください。
Astraのツール呼び出しにChat Completionsを使えますか?
いいえ。AstraはChat Completionsに対応していますが、ツール呼び出しにはResponsesが必要です。Responsesに対応したクライアントを使い、関数結果を返す際にはcall_idを保持してください。
AstraはAPIsRouterで利用できますか?
2026年9月5日のカタログ確認ではAstraは見つかりませんでした。ここでの例は公式OpenAIアクセスを使っています。APIsRouterの提供物はライブカタログで確認してください。