|
|
@@ -160,6 +160,11 @@ export namespace LLM {
|
|
|
...input.messages,
|
|
|
]
|
|
|
|
|
|
+ const maxOutputTokens =
|
|
|
+ isOpenaiOauth || provider.id.includes("github-copilot")
|
|
|
+ ? undefined
|
|
|
+ : ProviderTransform.maxOutputTokens(input.model)
|
|
|
+
|
|
|
const params = await Plugin.trigger(
|
|
|
"chat.params",
|
|
|
{
|
|
|
@@ -175,6 +180,7 @@ export namespace LLM {
|
|
|
: undefined,
|
|
|
topP: input.agent.topP ?? ProviderTransform.topP(input.model),
|
|
|
topK: ProviderTransform.topK(input.model),
|
|
|
+ maxOutputTokens,
|
|
|
options,
|
|
|
},
|
|
|
)
|
|
|
@@ -193,11 +199,6 @@ export namespace LLM {
|
|
|
},
|
|
|
)
|
|
|
|
|
|
- const maxOutputTokens =
|
|
|
- isOpenaiOauth || provider.id.includes("github-copilot")
|
|
|
- ? undefined
|
|
|
- : ProviderTransform.maxOutputTokens(input.model)
|
|
|
-
|
|
|
const tools = await resolveTools(input)
|
|
|
|
|
|
// LiteLLM and some Anthropic proxies require the tools parameter to be present
|
|
|
@@ -291,7 +292,7 @@ export namespace LLM {
|
|
|
activeTools: Object.keys(tools).filter((x) => x !== "invalid"),
|
|
|
tools,
|
|
|
toolChoice: input.toolChoice,
|
|
|
- maxOutputTokens,
|
|
|
+ maxOutputTokens: params.maxOutputTokens,
|
|
|
abortSignal: input.abort,
|
|
|
headers: {
|
|
|
...(input.model.providerID.startsWith("opencode")
|