@jambonz/llm 0.3.0 → 0.3.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -1565,11 +1565,22 @@ var vertexOpenAIManifest = {
1565
1565
  type: "select",
1566
1566
  required: true,
1567
1567
  default: "us-central1",
1568
+ // Same region set as vertex-gemini plus us-east5 (where Google
1569
+ // hosts Llama partner models). Partner-model availability varies
1570
+ // per region; Google's docs for each model are the source of truth.
1568
1571
  options: [
1569
1572
  { value: "us-central1", label: "us-central1" },
1573
+ { value: "us-east1", label: "us-east1" },
1570
1574
  { value: "us-east4", label: "us-east4" },
1575
+ { value: "us-east5", label: "us-east5" },
1576
+ { value: "us-west1", label: "us-west1" },
1577
+ { value: "us-west4", label: "us-west4" },
1571
1578
  { value: "europe-west1", label: "europe-west1" },
1579
+ { value: "europe-west2", label: "europe-west2" },
1580
+ { value: "europe-west3", label: "europe-west3" },
1572
1581
  { value: "europe-west4", label: "europe-west4" },
1582
+ { value: "asia-east1", label: "asia-east1" },
1583
+ { value: "asia-northeast1", label: "asia-northeast1" },
1573
1584
  { value: "asia-southeast1", label: "asia-southeast1" }
1574
1585
  ]
1575
1586
  }
@@ -1613,7 +1624,11 @@ var VertexOpenAIAdapter = class {
1613
1624
  const token = await googleClient.getAccessToken();
1614
1625
  const headers = new Headers(init?.headers);
1615
1626
  headers.set("Authorization", `Bearer ${token.token ?? ""}`);
1616
- return fetch(input, { ...init, headers });
1627
+ const response = await fetch(input, { ...init, headers });
1628
+ if (!response.ok) {
1629
+ return surfaceErrorBody(response, input);
1630
+ }
1631
+ return response;
1617
1632
  };
1618
1633
  this.client = new OpenAI2({
1619
1634
  apiKey: "vertex-ai",
@@ -1659,6 +1674,28 @@ var VertexOpenAIAdapter = class {
1659
1674
  return this.client;
1660
1675
  }
1661
1676
  };
1677
+ async function surfaceErrorBody(response, input) {
1678
+ let body = "";
1679
+ try {
1680
+ body = await response.text();
1681
+ } catch {
1682
+ }
1683
+ const url = typeof input === "string" ? input : input instanceof URL ? input.toString() : input.url;
1684
+ const hint = response.status === 404 && !body ? " (no body returned \u2014 most commonly means the requested model is not hosted in this region; check Google's partner-model availability matrix)" : "";
1685
+ if (typeof console !== "undefined" && console.warn) {
1686
+ console.warn(
1687
+ `[vertex-openai] ${response.status} ${response.statusText} from ${url}: ${body || "(empty body)"}${hint}`
1688
+ );
1689
+ }
1690
+ const headers = new Headers(response.headers);
1691
+ headers.delete("content-encoding");
1692
+ headers.delete("content-length");
1693
+ return new Response(body + hint, {
1694
+ status: response.status,
1695
+ statusText: response.statusText,
1696
+ headers
1697
+ });
1698
+ }
1662
1699
 
1663
1700
  // src/adapters/vertex-openai/factory.ts
1664
1701
  var vertexOpenAIFactory = {