unhardcoded
送出初始請求

快速入門

將 SDK 指向託管服務,附加一條策略,並讀取回傳的追蹤紀錄。

從現有 SDK 到帶有追蹤紀錄的路由決策,只需四個步驟。模型名稱無需硬編碼——決策以策略的形式隨請求一同傳遞。

  1. 將 SDK 指向託管服務。
    unhardcoded 相容 OpenAI 介面。將 baseURL 改為您的託管服務位址;SDK 的其餘部分保持不變。
    client.ts
    import OpenAI from "openai";
    
    const client = new OpenAI({
      baseURL: "https://<your-host>/v1",  // your reference host, or the managed host
      apiKey: process.env.UNHARDCODED_KEY,
    });
  2. 建立策略並隨呼叫一同送出。
    在後端產生 policy_ir,並將其附加至 create()model 欄位僅作為追蹤紀錄的分組標籤,路由由附加的策略決定,因此填入任意字串均可。
    route.ts
    // built in your backend, at request time, a plain JSON term
    const policy_ir = [
      "policy",
      ["and", ["meets_req"], ["not", ["is", "disabled"]], ["has_cap", "supports_tools"],
             ["cmp", "bench_intelligence", "ge", 0.5]],  // filter
      ["neg", ["normalize", ["field", "price_out"]]],          // cheapest survivor
      ["argmax"], ["id"],
      ["always", { "action": "next_candidate" }],
    ];
    
    const res = await client.chat.completions.create({
      model: "policy:support",  // free-form trace label, not a route
      policy_ir,
      messages,
    });
  3. 託管服務對呼叫進行路由。
    服務驗證策略並產生指紋(fingerprint),在即時目錄中評估策略,然後透過您自己的供應商 API 金鑰執行通過篩選且成本最低的模型。
  4. 讀取追蹤紀錄。
    回應中除完成內容外,還附帶 trace:包含選定的模型、經排序與拒絕的候選模型,以及策略指紋(fingerprint)。
    response · trace (illustrative)
    {
      "chosen": { "model_family": "deepseek-v4-pro", "price_out": 1.5 },
      "trace": {
        "policy_fingerprint": "301140696-1054914287",
        "rejected": [{ "model_family": "deepseek-v4-flash", "reason": "cmp bench_intelligence ge 0.5" }],
        "total_latency_ms": 425
      }
    }
本地執行。 MIT 授權的參考託管服務及可執行範例均隨公開儲存庫一同發布。以下文件所描述的格式與語義即為該服務的實作規格,因此所有內容均可在您自己的目錄下重現。
← 返回文件