本文へスキップ

GET /api/qr/ai/providers

マーケットプレイスのAIエンドポイント(POST /api/qr/ai/generate)が扱えるLLMプロバイダーとモデルを返します。ユーザーがプロバイダーを選べるクライアントUIで便利です。組み合わせをハードコードする必要はなく、このエンドポイントを呼び出して返ってきた内容を表示するだけです。

コンシューマー向けエンドポイント(/api/qr/ai/generate/server)では不要です。プロバイダーはサーバーが選びます。

リクエスト

レスポンス

{
  "success": true,
  "count": 10,
  "modelsNote": "Any model ID your provider offers works; this list shows recommended ones.",
  "providers": [
    {
      "id": "openai",
      "name": "OpenAI",
      "defaultModel": "gpt-6-luna",
      "availableModels": ["gpt-6-astra", "gpt-6.1-sol", "gpt-6-luna", "gpt-6-sol", "gpt-5.6-sol", "gpt-5.6-terra", "gpt-5.6-luna", "gpt-4.1-mini"],
      "acceptsAnyModel": true
    },
    {
      "id": "anthropic",
      "name": "Anthropic",
      "defaultModel": "claude-sonnet-5-5",
      "availableModels": ["claude-fable-5-1", "claude-opus-5-5", "claude-sonnet-5-5", "claude-haiku-4-5"],
      "acceptsAnyModel": true
    },
    {
      "id": "google",
      "name": "Google Gemini",
      "defaultModel": "gemini-3.8-flash",
      "availableModels": ["gemini-3.1-pro-preview", "gemini-3.8-flash", "gemini-3.5-flash-lite", "gemini-3.5-flash"],
      "acceptsAnyModel": true
    },
    {
      "id": "mistral",
      "name": "Mistral AI",
      "defaultModel": "mistral-medium-latest",
      "availableModels": ["mistral-large-latest", "mistral-medium-latest", "mistral-small-latest"],
      "acceptsAnyModel": true
    },
    {
      "id": "cohere",
      "name": "Cohere",
      "defaultModel": "command-a-03-2025",
      "availableModels": ["command-a-plus-05-2026", "command-a-03-2025", "command-a-reasoning-08-2025", "command-r7b-12-2024"],
      "acceptsAnyModel": true
    },
    {
      "id": "groq",
      "name": "Groq",
      "defaultModel": "openai/gpt-oss-120b",
      "availableModels": ["openai/gpt-oss-120b", "openai/gpt-oss-20b", "llama-3.3-70b-versatile"],
      "acceptsAnyModel": true
    },
    {
      "id": "xai",
      "name": "xAI Grok",
      "defaultModel": "grok-4.3",
      "availableModels": ["grok-4.7", "grok-4.3", "grok-4.20-0309-non-reasoning"],
      "acceptsAnyModel": true
    },
    {
      "id": "deepseek",
      "name": "DeepSeek",
      "defaultModel": "deepseek-flash",
      "availableModels": ["deepseek-v4-pro", "deepseek-flash"],
      "acceptsAnyModel": true
    },
    {
      "id": "qwen",
      "name": "Alibaba Qwen",
      "defaultModel": "qwen3.8-flash",
      "availableModels": ["qwen3.8-max", "qwen3.7-plus", "qwen3.8-flash"],
      "acceptsAnyModel": true
    },
    {
      "id": "local",
      "name": "Local (Ollama / LM Studio)",
      "defaultModel": "",
      "availableModels": [],
      "acceptsAnyModel": true
    }
  ]
}

モデルの選び方

llmModel を指定しない場合、エンジンは下表の各プロバイダーのデフォルトモデルを使います。別のモデルを使うには、生成リクエストで llmModel: "<id>" を指定してください。

プロバイダーが提供するモデルIDならどれでも使えます。この一覧は推奨モデルです。

プロバイダーデフォルトモデル
OpenAIgpt-6-luna
Anthropicclaude-sonnet-5-5
Googlegemini-3.8-flash
Mistralmistral-medium-latest
Coherecommand-a-03-2025
Groqopenai/gpt-oss-120b
xAIgrok-4.3
DeepSeekdeepseek-flash
Qwenqwen3.8-flash
ローカル("local")エンドポイントが提供するモデル

各生成で使うトークンの料金は、各プロバイダーの現行価格でプロバイダーに直接お支払いいただきます。当社は上乗せしません。正確な費用は各プロバイダーの料金ページをご確認ください。

エラー

コード意味
INVALID_LLM_PROVIDERllmProvider が上記のIDのいずれでもありません。
INVALID_LLM_MODELllmModel がモデル ID の形式ではありません(英数字と . _ : / -、100 文字以内)。
LLM_API_KEY_INVALID渡したキーがプロバイダーに拒否されました。

コードの一覧はエラーをご覧ください。