diff options
| author | Dax Raad <[email protected]> | 2026-02-11 23:10:47 -0500 |
|---|---|---|
| committer | Dax Raad <[email protected]> | 2026-02-11 23:10:47 -0500 |
| commit | ad2087094d84cb9255f08c787f8ffbe0f78fdba0 (patch) | |
| tree | b1e2f1481e50ba0775fb2ba1446e98d902c5fd8e /packages | |
| parent | 5bdf1c4b96545619e3b062b47912f845de7ca1b8 (diff) | |
| download | opencode-ad2087094d84cb9255f08c787f8ffbe0f78fdba0.tar.gz opencode-ad2087094d84cb9255f08c787f8ffbe0f78fdba0.zip | |
support custom api url per model
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/provider/models.ts | 2 | ||||
| -rw-r--r-- | packages/opencode/src/provider/provider.ts | 4 |
2 files changed, 3 insertions, 3 deletions
diff --git a/packages/opencode/src/provider/models.ts b/packages/opencode/src/provider/models.ts index 07881cbfe..4725d0d39 100644 --- a/packages/opencode/src/provider/models.ts +++ b/packages/opencode/src/provider/models.ts @@ -64,7 +64,7 @@ export namespace ModelsDev { status: z.enum(["alpha", "beta", "deprecated"]).optional(), options: z.record(z.string(), z.any()), headers: z.record(z.string(), z.string()).optional(), - provider: z.object({ npm: z.string() }).optional(), + provider: z.object({ npm: z.string(), api: z.string() }).optional(), variants: z.record(z.string(), z.record(z.string(), z.any())).optional(), }) export type Model = z.infer<typeof Model> diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts index a02a017e7..d76cc902a 100644 --- a/packages/opencode/src/provider/provider.ts +++ b/packages/opencode/src/provider/provider.ts @@ -629,7 +629,7 @@ export namespace Provider { family: model.family, api: { id: model.id, - url: provider.api!, + url: model.provider?.api ?? provider.api!, npm: model.provider?.npm ?? provider.npm ?? "@ai-sdk/openai-compatible", }, status: model.status ?? "active", @@ -781,7 +781,7 @@ export namespace Provider { existingModel?.api.npm ?? modelsDev[providerID]?.npm ?? "@ai-sdk/openai-compatible", - url: provider?.api ?? existingModel?.api.url ?? modelsDev[providerID]?.api, + url: model.provider?.api ?? provider?.api ?? existingModel?.api.url ?? modelsDev[providerID]?.api, }, status: model.status ?? existingModel?.status ?? "active", name, |
