mirror of
https://github.com/diegosouzapw/OmniRoute.git
synced 2026-07-31 20:32:20 +03:00
Passes through request.additionalModelRequestFields in openAIToBedrockConverse so reasoning/thinking options passed from Kiro/Bedrock translators are retained in the AWS Converse payload.
This commit is contained in:
@@ -366,6 +366,10 @@ export function openAIToBedrockConverse(model, body) {
|
||||
const toolConfig = toolConfigFromOpenAI(request.tools, request.tool_choice);
|
||||
if (toolConfig) payload.toolConfig = toolConfig;
|
||||
|
||||
if (request.additionalModelRequestFields !== undefined) {
|
||||
payload.additionalModelRequestFields = request.additionalModelRequestFields;
|
||||
}
|
||||
|
||||
return payload;
|
||||
}
|
||||
|
||||
|
||||
@@ -97,6 +97,19 @@ test("openAIToBedrockConverse avoids duplicate Bedrock toolUse ids from mixed to
|
||||
assert.equal(payload.messages[2].content[0].toolResult.toolUseId, "call_dup");
|
||||
});
|
||||
|
||||
test("openAIToBedrockConverse preserves additionalModelRequestFields", () => {
|
||||
const payload = openAIToBedrockConverse("anthropic.claude-3-7-sonnet-20250219-v1:0", {
|
||||
messages: [{ role: "user", content: "Hello" }],
|
||||
additionalModelRequestFields: {
|
||||
thinking: { type: "enabled", budget_tokens: 2048 },
|
||||
},
|
||||
});
|
||||
|
||||
assert.deepStrictEqual(payload.additionalModelRequestFields, {
|
||||
thinking: { type: "enabled", budget_tokens: 2048 },
|
||||
});
|
||||
});
|
||||
|
||||
test("openAIToBedrockConverse drops duplicate pending tool call ids", () => {
|
||||
const payload = openAIToBedrockConverse("anthropic.claude-sonnet-4-6", {
|
||||
messages: [
|
||||
|
||||
Reference in New Issue
Block a user