diff options
| author | Shantur Rathore <[email protected]> | 2025-11-14 17:41:01 +0000 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-11-14 11:41:01 -0600 |
| commit | 986c60353e80a1778c799e819af66cbb4cf602db (patch) | |
| tree | ae0923bd85a433cda059d46ea70c9aa19259a7f8 /packages | |
| parent | 5fc26c958ad53e444967e075a77a47015e4fd0ad (diff) | |
| download | opencode-986c60353e80a1778c799e819af66cbb4cf602db.tar.gz opencode-986c60353e80a1778c799e819af66cbb4cf602db.zip | |
set `promptCacheKey` for openai compatible providers (#4203)
Co-authored-by: GitHub Action <[email protected]>
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/provider/transform.ts | 9 | ||||
| -rw-r--r-- | packages/opencode/src/session/prompt.ts | 4 |
2 files changed, 9 insertions, 4 deletions
diff --git a/packages/opencode/src/provider/transform.ts b/packages/opencode/src/provider/transform.ts index 668f30412..ccc36ba2e 100644 --- a/packages/opencode/src/provider/transform.ts +++ b/packages/opencode/src/provider/transform.ts @@ -128,10 +128,15 @@ export namespace ProviderTransform { return undefined } - export function options(providerID: string, modelID: string, sessionID: string): Record<string, any> | undefined { + export function options( + providerID: string, + modelID: string, + npm: string, + sessionID: string, + ): Record<string, any> | undefined { const result: Record<string, any> = {} - if (providerID === "openai") { + if (providerID === "openai" || npm.includes("openai")) { result["promptCacheKey"] = sessionID } diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts index ae6aff220..0fb7ad226 100644 --- a/packages/opencode/src/session/prompt.ts +++ b/packages/opencode/src/session/prompt.ts @@ -266,7 +266,7 @@ export namespace SessionPrompt { : undefined, topP: agent.topP ?? ProviderTransform.topP(model.providerID, model.modelID), options: { - ...ProviderTransform.options(model.providerID, model.modelID, input.sessionID), + ...ProviderTransform.options(model.providerID, model.modelID, model.npm ?? "", input.sessionID), ...model.info.options, ...agent.options, }, @@ -1819,7 +1819,7 @@ export namespace SessionPrompt { const small = (await Provider.getSmallModel(input.providerID)) ?? (await Provider.getModel(input.providerID, input.modelID)) const options = { - ...ProviderTransform.options(small.providerID, small.modelID, input.session.id), + ...ProviderTransform.options(small.providerID, small.modelID, small.npm ?? "", input.session.id), ...small.info.options, } if (small.providerID === "openai" || small.modelID.includes("gpt-5")) { |
