@ai-sdk/anthropic 3.0.0-beta.59 → 3.0.0-beta.60

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.
@@ -25,6 +25,7 @@ declare class AnthropicMessagesLanguageModel implements LanguageModelV3 {
25
25
  get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
26
26
  private getArgs;
27
27
  private getHeaders;
28
+ private getBetasFromHeaders;
28
29
  private buildRequestUrl;
29
30
  private transformRequestBody;
30
31
  private extractCitationDocuments;
@@ -25,6 +25,7 @@ declare class AnthropicMessagesLanguageModel implements LanguageModelV3 {
25
25
  get supportedUrls(): Record<string, RegExp[]> | PromiseLike<Record<string, RegExp[]>>;
26
26
  private getArgs;
27
27
  private getHeaders;
28
+ private getBetasFromHeaders;
28
29
  private buildRequestUrl;
29
30
  private transformRequestBody;
30
31
  private extractCitationDocuments;
@@ -1896,6 +1896,7 @@ var AnthropicMessagesLanguageModel = class {
1896
1896
  return (_c = (_b = (_a = this.config).supportedUrls) == null ? void 0 : _b.call(_a)) != null ? _c : {};
1897
1897
  }
1898
1898
  async getArgs({
1899
+ userSuppliedBetas,
1899
1900
  prompt,
1900
1901
  maxOutputTokens,
1901
1902
  temperature,
@@ -2129,7 +2130,7 @@ var AnthropicMessagesLanguageModel = class {
2129
2130
  // do not send when not streaming
2130
2131
  },
2131
2132
  warnings: [...warnings, ...toolWarnings, ...cacheWarnings],
2132
- betas: /* @__PURE__ */ new Set([...betas, ...toolsBetas]),
2133
+ betas: /* @__PURE__ */ new Set([...betas, ...toolsBetas, ...userSuppliedBetas]),
2133
2134
  usesJsonResponseTool: jsonResponseTool != null
2134
2135
  };
2135
2136
  }
@@ -2139,8 +2140,20 @@ var AnthropicMessagesLanguageModel = class {
2139
2140
  }) {
2140
2141
  return (0, import_provider_utils11.combineHeaders)(
2141
2142
  await (0, import_provider_utils11.resolve)(this.config.headers),
2142
- betas.size > 0 ? { "anthropic-beta": Array.from(betas).join(",") } : {},
2143
- headers
2143
+ headers,
2144
+ betas.size > 0 ? { "anthropic-beta": Array.from(betas).join(",") } : {}
2145
+ );
2146
+ }
2147
+ async getBetasFromHeaders(requestHeaders) {
2148
+ var _a, _b;
2149
+ const configHeaders = await (0, import_provider_utils11.resolve)(this.config.headers);
2150
+ const configBetaHeader = (_a = configHeaders["anthropic-beta"]) != null ? _a : "";
2151
+ const requestBetaHeader = (_b = requestHeaders == null ? void 0 : requestHeaders["anthropic-beta"]) != null ? _b : "";
2152
+ return new Set(
2153
+ [
2154
+ ...configBetaHeader.toLowerCase().split(","),
2155
+ ...requestBetaHeader.toLowerCase().split(",")
2156
+ ].map((beta) => beta.trim()).filter((beta) => beta !== "")
2144
2157
  );
2145
2158
  }
2146
2159
  buildRequestUrl(isStreaming) {
@@ -2178,7 +2191,8 @@ var AnthropicMessagesLanguageModel = class {
2178
2191
  var _a, _b, _c, _d, _e, _f, _g, _h;
2179
2192
  const { args, warnings, betas, usesJsonResponseTool } = await this.getArgs({
2180
2193
  ...options,
2181
- stream: false
2194
+ stream: false,
2195
+ userSuppliedBetas: await this.getBetasFromHeaders(options.headers)
2182
2196
  });
2183
2197
  const citationDocuments = this.extractCitationDocuments(options.prompt);
2184
2198
  const {
@@ -2479,7 +2493,8 @@ var AnthropicMessagesLanguageModel = class {
2479
2493
  usesJsonResponseTool
2480
2494
  } = await this.getArgs({
2481
2495
  ...options,
2482
- stream: true
2496
+ stream: true,
2497
+ userSuppliedBetas: await this.getBetasFromHeaders(options.headers)
2483
2498
  });
2484
2499
  const citationDocuments = this.extractCitationDocuments(options.prompt);
2485
2500
  const { responseHeaders, value: response } = await (0, import_provider_utils11.postJsonToApi)({