xAI API
開発者向けに xAI API(xAIのGrokモデル)を使う手順を解説。アカウント作成、APIキー、SDK導入、最初のテキスト/画像リクエストまで。
xAI APIとは?
xAI APIは、アプリケーションのコードからxAIのGrokモデルを利用するための開発者向けインターフェースです。APIの主な目的は、プロンプト(一部のモデルでは画像も)を受け取り、表示・処理・後続利用のために構造化可能な生成応答を返すことです。
クイックスタートではエンドツーエンドのワークフローを説明します:xAIアカウントとクレジットの作成、APIキーの生成、SDKのインストール、サポートされるエンドポイントと例を使ったGrokモデルへの最初のリクエスト送信です。
主な機能
- 環境変数によるAPIキー認証:コードを
XAI_API_KEYで設定すると、xAI SDKが自動的に読み込みます。 - 一般的な言語向けSDKサポート:PythonまたはJavaScript用のxAI SDKをインストールし、生のHTTPリクエストを書かずにGrokモデルを呼び出せます。
- チャット形式のテキスト生成:システムメッセージとユーザーメッセージを送信し、モデルのテキスト応答を出力サンプリングします。
- Responsesエンドポイント対応:APIキーで
https://api.x.ai/v1/responsesを直接呼び出し、モデル推論を実行します。 - マルチモーダル入力(テキスト+画像):対応モデルでは、単一リクエストでテキストと画像URLを含められます。
- 構造化出力(対応モデル向け):一部のモデルで出力スキーマを強制し、生成結果の形状を制御できます。
xAI APIの使い方
accounts.x.aiでxAIアカウントを作成し、API利用のためのクレジットを追加します。- xAI ConsoleのAPI KeysでAPIキーを作成します。
XAI_API_KEYを設定:ターミナルでエクスポートするか.envファイルに追加します:export XAI_API_KEY="your_api_key"XAI_API_KEY=your_api_key
- 言語に応じてSDKをインストール:
- Python:
pip install xai-sdk - JavaScript:
npm install ai @ai-sdk/xai zod
- Python:
- Grokモデルにリクエストを送信(例:テキスト用
grok-4.20-reasoning、画像+テキスト用grok-4)。SDK例または直接のresponsesHTTPリクエストを使用します。
ユースケース
- Grok向けチャットインターフェースの構築:ユーザーの質問とオプションのシステム指示を送信し、
response.contentまたはcompletion.output_textを表示するアプリケーションを作成します。 - 既知のモデルエンドポイントでテキスト生成:直接HTTP呼び出しを好むサービスにGrokを統合するため、
POST https://api.x.ai/v1/responsesワークフローを使用します。 - Q&Aフローへの画像理解追加:クイックスタートのマルチモーダルリクエスト形式で「この画像に何が写っている?」のようなプロンプトと画像URLを送信します。
- 後続処理向け出力フォーマットの強制:対応するGrokモデルでStructured Outputsを適用し、定義したスキーマに従う結果を得ます。
- ランタイム横断のクイック実験:同じ環境変数設定(
XAI_API_KEY)を保ちつつ、PythonとJavaScriptの例を切り替えます。
FAQ
xAI APIのリクエスト認証方法は?
xAI ConsoleでAPIキーを作成し、XAI_API_KEYとして設定します(例:export XAI_API_KEY="..."または.envファイル)。xAI SDKは、この環境変数を自動的に読み込みます。
最初のリクエストにどのGrokモデルを使えますか?
クイックスタートの例では、テキストオンリーのチャット形式生成にgrok-4.20-reasoning、画像+テキスト入力にgrok-4を使用します。
SDKなしでAPIを呼び出せますか?
はい。クイックスタートにcurl例があり、modelとinputを含むJSONボディでhttps://api.x.ai/v1/responsesにPOSTします。
Grokに画像を送信する方法は?
画像対応モデルでは、入力にテキストと画像URLを含めます(SDKではinput_image / input_text構造、responses呼び出しでは型指定コンテンツ構造を使用)。
Structured Outputsとは?
クイックスタートで一部のモデルがサポートすることを記載。LLM出力にスキーマを強制します。詳細は「Text Generation Guide」を参照してください。
代替案
- 他のLLMプロバイダーのチャット/アシスタントAPIを使用:プロンプト入力・生成テキスト出力のワークフローなら、同様のキー認証とリクエスト形式で他のベンダーのAPIに置き換えられます。
- フレームワーク非依存のテキスト生成アプローチ:ベンダー固有SDKの代わりに、「completions/responses」スタイルのエンドポイントに直接リクエストを構築し、言語横断で統合を一貫させます。
- マルチモーダル対応モデルAPIを使用:主に画像+テキスト理解が必要なら、APIリクエストスキーマで画像入力を明示サポートするプロバイダーを選び、リクエストペイロードを適応させます。
代替品
AakarDev AI
AakarDev AIは、シームレスなベクターデータベース統合を通じてAIアプリケーションの開発を簡素化し、迅速な展開とスケーラビリティを実現する強力なプラットフォームです。
Ably Chat
Ably Chatはカスタムリアルタイムチャット用のAPI/SDK。リアクション、プレゼンス、メッセージ編集/削除に対応し高負荷も設計。
BookAI.chat
BookAIは、書名と著者を提供するだけで、AIを使って本とチャットできるサービスです。
DeepMotion
DeepMotionはAIモーションキャプチャ/ボディトラッキングで、動画(テキストも可)からWebブラウザで3Dアニメを生成。Animate 3D API連携も。
skills-janitor
skills-janitorでClaude Codeのスキルを監査・使用状況を追跡し、9つの/コマンドと比較。重複や不備もチェック。依存なし。
Arduino VENTUNO Q
Arduino VENTUNO Qはロボット向けエッジAIコンピュータ。AI推論とマイコン制御を統合し、Arduino App Labで埋め込み/ Linux/エッジAI開発。