ai-sdk-provider
ai-sdk-provider copied to clipboard
Sending the temperature parameter when shouldn't
When using openai/o1-pro, even though the temperature parameter is not set, it's being sent to openrouter resulting in type validation error. I assume OpenRouterTeam/ai-sdk-provider sends the parameter to openrouter regardless of user not passing it to Verecel AI Sdk.
error: [Error [AI_TypeValidationError]: Type validation failed: Value: {"error":{"message":"Provider returned error","code":400,"metadata":{"raw":"{\n \"error\": {\n \"message\": \"Unsupported parameter: 'temperature' is not supported with this model.\",\n \"type\": \"invalid_request_error\",\n \"param\": \"temperature\",\n \"code\": null\n }\n}","provider_name":"OpenAI"}},"user_id":"user_2vSfnyzwd0KdOWggmDc0KJ867oH"}.
[
{
"code": "invalid_union",
"unionErrors": [
{
"issues": [
{
"code": "invalid_type",
"expected": "array",
"received": "undefined",
"path": [
"choices"
],
"message": "Required"
}
],
"name": "ZodError"
},
{
"issues": [
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"error",
"type"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "string",
"received": "number",
"path": [
"error",
"code"
],
"message": "Expected string, received number"
}
],
"name": "ZodError"
}
],
"path": [],
"message": "Invalid input"
}
]] {
value: {
error: {
message: 'Provider returned error',
code: 400,
metadata: {
raw: '{\n' +
' "error": {\n' +
` "message": "Unsupported parameter: 'temperature' is not supported with this model.",\n` +
' "type": "invalid_request_error",\n' +
' "param": "temperature",\n' +
' "code": null\n' +
' }\n' +
'}',
provider_name: 'OpenAI'
}
},
user_id: 'user_2vSfnyzwd0KdOWggmDc0KJ867oH'
},
[cause]: [Error [ZodError]: [
{
"code": "invalid_union",
"unionErrors": [
{
"issues": [
{
"code": "invalid_type",
"expected": "array",
"received": "undefined",
"path": [
"choices"
],
"message": "Required"
}
],
"name": "ZodError"
},
{
"issues": [
{
"code": "invalid_type",
"expected": "string",
"received": "undefined",
"path": [
"error",
"type"
],
"message": "Required"
},
{
"code": "invalid_type",
"expected": "string",
"received": "number",
"path": [
"error",
"code"
],
"message": "Expected string, received number"
}
],
"name": "ZodError"
}
],
"path": [],
"message": "Invalid input"
}
]] {
issues: [ [Object] ],
addIssue: [Function (anonymous)],
addIssues: [Function (anonymous)]
}
}
Logging baseArgs:
{
baseArgs: {
model: 'openai/o1-pro',
models: undefined,
logit_bias: undefined,
logprobs: undefined,
top_logprobs: undefined,
user: undefined,
parallel_tool_calls: undefined,
max_tokens: <something>,
temperature: 0,
top_p: undefined,
frequency_penalty: undefined,
presence_penalty: undefined,
seed: undefined,
stop: undefined,
response_format: undefined,
top_k: undefined,
messages: [<something>],
include_reasoning: undefined,
reasoning: { include: true },
usage: { include: true }
}
}