Hakila Docs
Models

查詢模型的供應商

格式同 OpenRouter `/api/v1/models/{author}/{slug}/endpoints`。依預設選路順序列出這把 API Key 可用的供應商, 已套用組織的供應商限制。 - `provider` 是請求 `provider` 欄位可用的供應商代號 - `pricing` 為每 token 的 USD 單價(字串);有快取計價時另有 `input_cache_read`、`input_cache_write` - `status` 為 `paused` 表示這個模型經該供應商短時間內連續失敗,目前自動暫停(仍會作為最後的備援) - 見[多供應商與備援](/docs/guides/models#多供應商與備援)

GET/v1/models/{author}/{slug}/endpoints

格式同 OpenRouter /api/v1/models/{author}/{slug}/endpoints。依預設選路順序列出這把 API Key 可用的供應商, 已套用組織的供應商限制。

  • provider 是請求 provider 欄位可用的供應商代號
  • pricing 為每 token 的 USD 單價(字串);有快取計價時另有 input_cache_read、input_cache_write
  • status 為 paused 表示這個模型經該供應商短時間內連續失敗,目前自動暫停(仍會作為最後的備援)
  • 見多供應商與備援

Authorization

bearerAuth
AuthorizationBearer <token>

在 Authorization 標頭帶入 Workspace API Key: Authorization: Bearer sk-hakila-...

In: header

Path Parameters

author*string

開發商(模型 id 的前綴)

slug*string

模型名稱

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/models/anthropic/claude-opus-5/endpoints"
{  "data": {    "id": "anthropic/claude-opus-5",    "name": "Anthropic: Claude Opus 5",    "architecture": {      "output_modalities": [        "text"      ]    },    "endpoints": [      {        "name": "Anthropic | anthropic/claude-opus-5",        "provider": "anthropic",        "provider_name": "Anthropic",        "context_length": 1000000,        "max_completion_tokens": null,        "status": "available",        "pricing": {          "prompt": "0.000005",          "completion": "0.000025"        }      },      {        "name": "Amazon Bedrock | anthropic/claude-opus-5",        "provider": "bedrock",        "provider_name": "Amazon Bedrock",        "context_length": 1000000,        "max_completion_tokens": null,        "status": "available",        "pricing": {          "prompt": "0.0000055",          "completion": "0.0000275",          "input_cache_read": "0.00000055",          "input_cache_write": "0.000006875"        }      }    ]  }}

列出可用模型 GET

回傳這把 API Key **實際可用**的模型。來源是平台已啟用的目錄(AllowedModels), 再與組織允許清單 ∩ API Key 允許清單取交集。 - 模型 id 使用 `開發商/模型名稱` 命名(例如 `openai/gpt-5.6-luna`),前綴是開發商,不是實際提供服務的供應商 - `type` 為 `chat`(文字生成,走 Chat / Responses)、`embedding`(向量,走 `POST /v1/embeddings`)、 `tts`(文字轉語音,走 `POST /v1/audio/speech`)或 `image`(生圖,走 `POST /v1/images`) - `architecture.output_modalities` 標示輸出類型;可用 `?output_modalities=image` 只列生圖模型(逗號分隔多個值) - `hakila/auto` 只要平台有啟用就會出現(自動選路別名);實際候選仍受允許清單限制,且只會落在 chat 模型 - 不在平台目錄的 id 回 `404`;在目錄但未被允許的 id 回 `400` - 不帶前綴的名稱:目錄中剛好一個同名模型時補上開發商前綴;有多個時回 `400` 並列出候選;沒有時回 `404`;`auto` 一律回 `400` - 每個模型可用的供應商用 `GET /v1/models/{author}/{slug}/endpoints` 查詢 - 目錄內容由平台維運,種子資料涵蓋 GPT-6 / GPT-5.6、Gemini 3.x、Claude 5、Grok 4.x、 `text-embedding-3-*` 與 `gemini-embedding-*`,`gpt-4o-mini-tts`、`tts-1`、Gemini TTS、`x-ai/tts`, 以及 GPT Image、Nano Banana、FLUX.3、Seedream 5、Recraft V4.1 等生圖模型;請以此端點為準

Codex 模型清單 GET

產生 Codex 的 `model_catalog_json`(`{"models":[…]}`),存成 `hakila-models.json` 後在 `config.toml` 指向它即可。 只列出這把 API Key 能用的 chat 模型:Hakila 調校過的模型照設定顯示在選單, 其餘模型以隱藏條目出現,可用 slug 直接指定。 回應帶 `ETag`,送 `If-None-Match` 且內容沒變時回 `304`。額度用完時仍可呼叫(金鑰本身仍須有效)。