Grok Image API
LMU AI の OpenAI Images 互換 API 経由で Grok 画像モデルを呼び出す:テキストから画像、編集、URL および Base64 入力、ダウンロード、モデル選択、エラー修正。
LMU AI は OpenAI Images 互換パス経由で Grok 画像生成と画像編集を提供します。
Base URL
OpenAI 互換 SDK:
https://api.lmuai.com/v1完全な HTTP エンドポイント:
POST https://api.lmuai.com/v1/images/generations
POST https://api.lmuai.com/v1/images/edits1. API 概要
| メソッド | パス | 説明 |
|---|---|---|
GET | /v1/models | 現在の Grok グループで利用可能なモデルを照会 |
POST | /v1/images/generations | Grok テキストから画像、同期レスポンス |
POST | /v1/images/edits | Grok 画像編集 / 画像から画像、同期レスポンス |
現在、公開されている Grok の非同期ジョブや複数項目バッチ API はありません。
2. 推奨モデル
| シナリオ | 推奨モデル |
|---|---|
| 標準的なテキストから画像 | grok-imagine-image |
| 品質重視のテキストから画像 | grok-imagine-image-quality |
| 画像編集 / 画像から画像 | grok-imagine-image-quality |
まず現在の API キーでモデルを照会します:
curl https://api.lmuai.com/v1/models \
-H "Authorization: Bearer YOUR_API_KEY"画像編集には品質モデルを使用
画像編集の例では grok-imagine-image-quality を使用します。grok-imagine-edit をデフォルトモデルとして使うことは推奨しません:この互換名は一部のモデルリストに現れる場合がありますが、一部の上流チャネルは呼び出し時に 404 を返します。
3. 認証
Authorization: Bearer YOUR_API_KEYAPI キーは、画像生成が有効化された Grok グループに属している必要があります。
4. テキストから画像
POST /v1/images/generations
curl https://api.lmuai.com/v1/images/generations \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-image",
"prompt": "A blue ceramic mug, centered on a light-gray studio background, soft side lighting, no text",
"n": 1,
"size": "1024x1024"
}'JavaScript:
import OpenAI from "openai";
const client = new OpenAI({
apiKey: process.env.LMU_API_KEY,
baseURL: "https://api.lmuai.com/v1",
});
const result = await client.images.generate({
model: "grok-imagine-image",
prompt: "A blue ceramic mug, light-gray studio background, soft side lighting, no text",
n: 1,
size: "1024x1024",
});
const url = result.data?.[0]?.url;
if (!url) throw new Error("No image URL in the response");
console.log(url);Python:
from openai import OpenAI
import requests
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://api.lmuai.com/v1",
)
result = client.images.generate(
model="grok-imagine-image",
prompt="A blue ceramic mug, light-gray studio background, soft side lighting, no text",
n=1,
size="1024x1024",
)
url = result.data[0].url
if not url:
raise RuntimeError("No image URL in the response")
image = requests.get(url, timeout=60)
image.raise_for_status()
with open("grok-output.jpg", "wb") as f:
f.write(image.content)5. テキストから画像のパラメータ
| フィールド | 型 | 必須 | 説明 |
|---|---|---|---|
model | string | Yes | 推奨:grok-imagine-image または grok-imagine-image-quality |
prompt | string | Yes | 画像の説明 |
n | integer | No | 画像の枚数;テストは 1 から始めることを推奨します |
size | string | No | OpenAI 互換のサイズパラメータ;実際の出力サイズは Grok 上流の能力によって決まります |
response_format | string | No | レスポンス形式の互換パラメータ;Grok は通常 URL を返します |
size で固定の出力ピクセルを強制することに依存しないでください
Grok チャネルは互換または課金パラメータとして size を受け付ける場合がありますが、最終的な画像のピクセルとアスペクト比は上流の生成結果によって決まります。固定ピクセルが必要な場合は、画像をダウンロードしてご自身でクロップまたはリサイズしてください。
6. 画像編集 / 画像から画像
POST /v1/images/edits
Grok の画像編集は JSON で行うのが最適です;image.url に以下のいずれかを渡してください:
- 一般公開されている HTTPS 画像 URL;または
data:image/...;base64,...の Data URL。
画像 URL を使用
curl https://api.lmuai.com/v1/images/edits \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "grok-imagine-image-quality",
"prompt": "Keep the mug's shape, composition, and lighting; change the mug from blue to yellow; no text",
"image": {
"url": "https://example.com/input.jpg",
"type": "image_url"
},
"response_format": "url"
}'ローカル画像を Data URL に変換
Python:
import base64
import mimetypes
import requests
api_key = "YOUR_API_KEY"
image_path = "input.jpg"
mime_type = mimetypes.guess_type(image_path)[0] or "image/jpeg"
with open(image_path, "rb") as f:
data_url = f"data:{mime_type};base64,{base64.b64encode(f.read()).decode()}"
payload = {
"model": "grok-imagine-image-quality",
"prompt": "Keep the subject and composition; change the background to a seaside at dusk; no text",
"image": {
"url": data_url,
"type": "image_url",
},
"response_format": "url",
}
response = requests.post(
"https://api.lmuai.com/v1/images/edits",
headers={
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json",
},
json=payload,
timeout=300,
)
response.raise_for_status()
result = response.json()
print(result["data"][0]["url"])Data URL はリクエストボディを肥大化させます
Base64 はリクエストボディを約 3 分の 1 増加させます。大きな画像は先に圧縮するか、ご自身の HTTPS オブジェクトストレージにアップロードして URL を渡してください。Cookie、ログインセッション、または一時的なホットリンク保護が必要なアドレスは使用しないでください。
7. レスポンス形式
典型的な Grok 画像レスポンス:
{
"data": [
{
"url": "https://image-host.example/generated.jpg"
}
],
"usage": {
"cost_in_usd_ticks": 200000000
}
}クライアントは以下を行うべきです:
- HTTP ステータスコードを確認する;
dataが空でない配列かどうかを確認する;data[0].urlが空でないかどうかを確認する;- 画像をすぐにダウンロードしてご自身のストレージに保存する;
- 一時 URL を恒久的なリソースアドレスとして扱わない。
usage フィールドは上流チャネルによって返され、その構造は GPT 画像 API と異なる場合があります。最終的なコストは LMU AI の請求と使用量の詳細に従います;いかなる単一の上流フィールドも、アカウントに課金される金額として扱わないでください。
8. よくあるエラー
| HTTP | よくある原因 | 推奨される対応 |
|---|---|---|
400 | model / prompt の欠落、または無効な画像 Data URL | JSON と画像エンコーディングを確認 |
401 | 無効な API キー | Bearer 認証を確認 |
403 | グループで画像生成が有効化されていない | 管理者に連絡して Grok グループの権限を確認 |
404 | チャネル非互換のモデルエイリアスを使用、または上流パスが利用不可 | 編集の場合はまず grok-imagine-image-quality に切り替え、リクエスト ID を保存 |
429 | 並列、RPM、または上流のクォータ制限 | 並列数を下げ、指数バックオフでリトライ |
5xx | 上流の生成が一時的に失敗 | 限られた回数リトライし、リクエスト ID を管理者に提供 |
9. 他の画像 API との違い
| ニーズ | 推奨ドキュメント |
|---|---|
| Gemini ネイティブのテキストから画像および画像から画像 | Gemini Image API |
| GPT のテキストから画像および編集 | GPT Image API |
| Grok のテキストから画像および編集 | このページ |
| 複数の Gemini プロンプトの非同期処理 | Gemini Batch Image API |
最終更新:
LMU AI の API キーを取得して、Claude や Codex をすぐに使う
登録は無料、プランは柔軟。1 つの API キーで Claude Code、Codex CLI、Cursor、VS Code 拡張、OpenCode、Cherry Studio などの AI ツールに接続できます。
登録する