Skip to content

Commit 998ffb5

Browse files
committed
fix(bedrock): add inference profile prefixes and fix reasoning for additional models
- Add palmyra and pixtral to US cross-region inference profile prefix list - Strip reasoning content from message history for non-reasoning models - Exclude palmyra from reasoning variant generation to prevent unsupported params
1 parent 2a67b0f commit 998ffb5

2 files changed

Lines changed: 13 additions & 1 deletion

File tree

packages/opencode/src/provider/provider.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -356,6 +356,8 @@ export namespace Provider {
356356
"nova-2",
357357
"claude",
358358
"deepseek",
359+
"palmyra",
360+
"pixtral",
359361
].some((m) => modelID.includes(m))
360362
const isGovCloud = region.startsWith("us-gov")
361363
if (modelRequiresPrefix && !isGovCloud) {

packages/opencode/src/provider/transform.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,6 +51,15 @@ export namespace ProviderTransform {
5151
model: Provider.Model,
5252
options: Record<string, unknown>,
5353
): ModelMessage[] {
54+
// Strip reasoning parts from assistant messages for models that don't support reasoning
55+
if (!model.capabilities.reasoning) {
56+
msgs = msgs.map((msg) => {
57+
if (msg.role !== "assistant" || !Array.isArray(msg.content)) return msg
58+
const filtered = msg.content.filter((part) => (part as any).type !== "reasoning")
59+
return { ...msg, content: filtered }
60+
})
61+
}
62+
5463
// Anthropic rejects messages with empty content - filter out empty string messages
5564
// and remove empty text/reasoning parts from array content
5665
if (model.api.npm === "@ai-sdk/anthropic" || model.api.npm === "@ai-sdk/amazon-bedrock") {
@@ -381,7 +390,8 @@ export namespace ProviderTransform {
381390
id.includes("kimi") ||
382391
id.includes("k2p5") ||
383392
id.includes("qwen") ||
384-
id.includes("big-pickle")
393+
id.includes("big-pickle") ||
394+
id.includes("palmyra")
385395
)
386396
return {}
387397

0 commit comments

Comments
 (0)