@ai-sdk/anthropic 3.0.85 → 3.0.87
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +15 -0
- package/dist/index.js +26 -2
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +26 -2
- package/dist/index.mjs.map +1 -1
- package/dist/internal/index.js +25 -1
- package/dist/internal/index.js.map +1 -1
- package/dist/internal/index.mjs +25 -1
- package/dist/internal/index.mjs.map +1 -1
- package/package.json +4 -4
- package/src/convert-to-anthropic-messages-prompt.ts +32 -1
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ai-sdk/anthropic",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.87",
|
|
4
4
|
"license": "Apache-2.0",
|
|
5
5
|
"sideEffects": false,
|
|
6
6
|
"main": "./dist/index.js",
|
|
@@ -36,15 +36,15 @@
|
|
|
36
36
|
}
|
|
37
37
|
},
|
|
38
38
|
"dependencies": {
|
|
39
|
-
"@ai-sdk/provider": "3.0.
|
|
40
|
-
"@ai-sdk/provider-utils": "4.0.
|
|
39
|
+
"@ai-sdk/provider": "3.0.11",
|
|
40
|
+
"@ai-sdk/provider-utils": "4.0.31"
|
|
41
41
|
},
|
|
42
42
|
"devDependencies": {
|
|
43
43
|
"@types/node": "20.17.24",
|
|
44
44
|
"tsup": "^8",
|
|
45
45
|
"typescript": "5.8.3",
|
|
46
46
|
"zod": "3.25.76",
|
|
47
|
-
"@ai-sdk/test-server": "1.0.
|
|
47
|
+
"@ai-sdk/test-server": "1.0.6",
|
|
48
48
|
"@vercel/ai-tsconfig": "0.0.0"
|
|
49
49
|
},
|
|
50
50
|
"peerDependencies": {
|
|
@@ -1132,7 +1132,10 @@ export async function convertToAnthropicMessagesPrompt({
|
|
|
1132
1132
|
}
|
|
1133
1133
|
}
|
|
1134
1134
|
|
|
1135
|
-
messages.push({
|
|
1135
|
+
messages.push({
|
|
1136
|
+
role: 'assistant',
|
|
1137
|
+
content: moveToolUseBlocksToEnd(anthropicContent),
|
|
1138
|
+
});
|
|
1136
1139
|
|
|
1137
1140
|
break;
|
|
1138
1141
|
}
|
|
@@ -1218,3 +1221,31 @@ function groupIntoBlocks(
|
|
|
1218
1221
|
|
|
1219
1222
|
return blocks;
|
|
1220
1223
|
}
|
|
1224
|
+
|
|
1225
|
+
function moveToolUseBlocksToEnd(
|
|
1226
|
+
content: AnthropicAssistantMessage['content'],
|
|
1227
|
+
): AnthropicAssistantMessage['content'] {
|
|
1228
|
+
const result: AnthropicAssistantMessage['content'] = [];
|
|
1229
|
+
let segment: AnthropicAssistantMessage['content'] = [];
|
|
1230
|
+
|
|
1231
|
+
function flushSegment() {
|
|
1232
|
+
result.push(
|
|
1233
|
+
...segment.filter(part => part.type !== 'tool_use'),
|
|
1234
|
+
...segment.filter(part => part.type === 'tool_use'),
|
|
1235
|
+
);
|
|
1236
|
+
segment = [];
|
|
1237
|
+
}
|
|
1238
|
+
|
|
1239
|
+
for (const part of content) {
|
|
1240
|
+
if (part.type === 'thinking' || part.type === 'redacted_thinking') {
|
|
1241
|
+
flushSegment();
|
|
1242
|
+
result.push(part);
|
|
1243
|
+
} else {
|
|
1244
|
+
segment.push(part);
|
|
1245
|
+
}
|
|
1246
|
+
}
|
|
1247
|
+
|
|
1248
|
+
flushSegment();
|
|
1249
|
+
|
|
1250
|
+
return result;
|
|
1251
|
+
}
|