@ai-sdk/openai 0.0.72 → 1.0.0-canary.1

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 CHANGED
@@ -1,5 +1,31 @@
1
1
  # @ai-sdk/openai
2
2
 
3
+ ## 1.0.0-canary.1
4
+
5
+ ### Major Changes
6
+
7
+ - 79644e9: chore (provider/openai): remove OpenAI facade
8
+ - 0d3d3f5: chore (providers): remove baseUrl option
9
+
10
+ ### Patch Changes
11
+
12
+ - Updated dependencies [b1da952]
13
+ - @ai-sdk/provider-utils@2.0.0-canary.1
14
+
15
+ ## 1.0.0-canary.0
16
+
17
+ ### Major Changes
18
+
19
+ - 66060f7: chore (release): bump major version to 4.0
20
+
21
+ ### Patch Changes
22
+
23
+ - Updated dependencies [b469a7e]
24
+ - Updated dependencies [c0ddc24]
25
+ - Updated dependencies [db46ce5]
26
+ - @ai-sdk/provider-utils@2.0.0-canary.0
27
+ - @ai-sdk/provider@1.0.0-canary.0
28
+
3
29
  ## 0.0.72
4
30
 
5
31
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -67,31 +67,6 @@ interface OpenAIChatSettings {
67
67
  downloadImages?: boolean;
68
68
  }
69
69
 
70
- type OpenAIChatConfig = {
71
- provider: string;
72
- compatibility: 'strict' | 'compatible';
73
- headers: () => Record<string, string | undefined>;
74
- url: (options: {
75
- modelId: string;
76
- path: string;
77
- }) => string;
78
- fetch?: FetchFunction;
79
- };
80
- declare class OpenAIChatLanguageModel implements LanguageModelV1 {
81
- readonly specificationVersion = "v1";
82
- readonly modelId: OpenAIChatModelId;
83
- readonly settings: OpenAIChatSettings;
84
- private readonly config;
85
- constructor(modelId: OpenAIChatModelId, settings: OpenAIChatSettings, config: OpenAIChatConfig);
86
- get supportsStructuredOutputs(): boolean;
87
- get defaultObjectGenerationMode(): "tool" | "json";
88
- get provider(): string;
89
- get supportsImageUrls(): boolean;
90
- private getArgs;
91
- doGenerate(options: Parameters<LanguageModelV1['doGenerate']>[0]): Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>>;
92
- doStream(options: Parameters<LanguageModelV1['doStream']>[0]): Promise<Awaited<ReturnType<LanguageModelV1['doStream']>>>;
93
- }
94
-
95
70
  type OpenAICompletionModelId = 'gpt-3.5-turbo-instruct' | (string & {});
96
71
  interface OpenAICompletionSettings {
97
72
  /**
@@ -218,10 +193,6 @@ interface OpenAIProviderSettings {
218
193
  */
219
194
  baseURL?: string;
220
195
  /**
221
- @deprecated Use `baseURL` instead.
222
- */
223
- baseUrl?: string;
224
- /**
225
196
  API key for authenticating requests.
226
197
  */
227
198
  apiKey?: string;
@@ -262,39 +233,4 @@ Default OpenAI provider instance. It uses 'strict' compatibility mode.
262
233
  */
263
234
  declare const openai: OpenAIProvider;
264
235
 
265
- /**
266
- @deprecated Use `createOpenAI` instead.
267
- */
268
- declare class OpenAI {
269
- /**
270
- Use a different URL prefix for API calls, e.g. to use proxy servers.
271
- The default prefix is `https://api.openai.com/v1`.
272
- */
273
- readonly baseURL: string;
274
- /**
275
- API key that is being send using the `Authorization` header.
276
- It defaults to the `OPENAI_API_KEY` environment variable.
277
- */
278
- readonly apiKey?: string;
279
- /**
280
- OpenAI Organization.
281
- */
282
- readonly organization?: string;
283
- /**
284
- OpenAI project.
285
- */
286
- readonly project?: string;
287
- /**
288
- Custom headers to include in the requests.
289
- */
290
- readonly headers?: Record<string, string>;
291
- /**
292
- * Creates a new OpenAI provider instance.
293
- */
294
- constructor(options?: OpenAIProviderSettings);
295
- private get baseConfig();
296
- chat(modelId: OpenAIChatModelId, settings?: OpenAIChatSettings): OpenAIChatLanguageModel;
297
- completion(modelId: OpenAICompletionModelId, settings?: OpenAICompletionSettings): OpenAICompletionLanguageModel;
298
- }
299
-
300
- export { OpenAI, type OpenAIProvider, type OpenAIProviderSettings, createOpenAI, openai };
236
+ export { type OpenAIProvider, type OpenAIProviderSettings, createOpenAI, openai };
package/dist/index.d.ts CHANGED
@@ -67,31 +67,6 @@ interface OpenAIChatSettings {
67
67
  downloadImages?: boolean;
68
68
  }
69
69
 
70
- type OpenAIChatConfig = {
71
- provider: string;
72
- compatibility: 'strict' | 'compatible';
73
- headers: () => Record<string, string | undefined>;
74
- url: (options: {
75
- modelId: string;
76
- path: string;
77
- }) => string;
78
- fetch?: FetchFunction;
79
- };
80
- declare class OpenAIChatLanguageModel implements LanguageModelV1 {
81
- readonly specificationVersion = "v1";
82
- readonly modelId: OpenAIChatModelId;
83
- readonly settings: OpenAIChatSettings;
84
- private readonly config;
85
- constructor(modelId: OpenAIChatModelId, settings: OpenAIChatSettings, config: OpenAIChatConfig);
86
- get supportsStructuredOutputs(): boolean;
87
- get defaultObjectGenerationMode(): "tool" | "json";
88
- get provider(): string;
89
- get supportsImageUrls(): boolean;
90
- private getArgs;
91
- doGenerate(options: Parameters<LanguageModelV1['doGenerate']>[0]): Promise<Awaited<ReturnType<LanguageModelV1['doGenerate']>>>;
92
- doStream(options: Parameters<LanguageModelV1['doStream']>[0]): Promise<Awaited<ReturnType<LanguageModelV1['doStream']>>>;
93
- }
94
-
95
70
  type OpenAICompletionModelId = 'gpt-3.5-turbo-instruct' | (string & {});
96
71
  interface OpenAICompletionSettings {
97
72
  /**
@@ -218,10 +193,6 @@ interface OpenAIProviderSettings {
218
193
  */
219
194
  baseURL?: string;
220
195
  /**
221
- @deprecated Use `baseURL` instead.
222
- */
223
- baseUrl?: string;
224
- /**
225
196
  API key for authenticating requests.
226
197
  */
227
198
  apiKey?: string;
@@ -262,39 +233,4 @@ Default OpenAI provider instance. It uses 'strict' compatibility mode.
262
233
  */
263
234
  declare const openai: OpenAIProvider;
264
235
 
265
- /**
266
- @deprecated Use `createOpenAI` instead.
267
- */
268
- declare class OpenAI {
269
- /**
270
- Use a different URL prefix for API calls, e.g. to use proxy servers.
271
- The default prefix is `https://api.openai.com/v1`.
272
- */
273
- readonly baseURL: string;
274
- /**
275
- API key that is being send using the `Authorization` header.
276
- It defaults to the `OPENAI_API_KEY` environment variable.
277
- */
278
- readonly apiKey?: string;
279
- /**
280
- OpenAI Organization.
281
- */
282
- readonly organization?: string;
283
- /**
284
- OpenAI project.
285
- */
286
- readonly project?: string;
287
- /**
288
- Custom headers to include in the requests.
289
- */
290
- readonly headers?: Record<string, string>;
291
- /**
292
- * Creates a new OpenAI provider instance.
293
- */
294
- constructor(options?: OpenAIProviderSettings);
295
- private get baseConfig();
296
- chat(modelId: OpenAIChatModelId, settings?: OpenAIChatSettings): OpenAIChatLanguageModel;
297
- completion(modelId: OpenAICompletionModelId, settings?: OpenAICompletionSettings): OpenAICompletionLanguageModel;
298
- }
299
-
300
- export { OpenAI, type OpenAIProvider, type OpenAIProviderSettings, createOpenAI, openai };
236
+ export { type OpenAIProvider, type OpenAIProviderSettings, createOpenAI, openai };
package/dist/index.js CHANGED
@@ -20,14 +20,13 @@ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: tru
20
20
  // src/index.ts
21
21
  var src_exports = {};
22
22
  __export(src_exports, {
23
- OpenAI: () => OpenAI,
24
23
  createOpenAI: () => createOpenAI,
25
24
  openai: () => openai
26
25
  });
27
26
  module.exports = __toCommonJS(src_exports);
28
27
 
29
- // src/openai-facade.ts
30
- var import_provider_utils5 = require("@ai-sdk/provider-utils");
28
+ // src/openai-provider.ts
29
+ var import_provider_utils6 = require("@ai-sdk/provider-utils");
31
30
 
32
31
  // src/openai-chat-language-model.ts
33
32
  var import_provider3 = require("@ai-sdk/provider");
@@ -1286,59 +1285,9 @@ var openaiCompletionChunkSchema = import_zod3.z.union([
1286
1285
  openAIErrorDataSchema
1287
1286
  ]);
1288
1287
 
1289
- // src/openai-facade.ts
1290
- var OpenAI = class {
1291
- /**
1292
- * Creates a new OpenAI provider instance.
1293
- */
1294
- constructor(options = {}) {
1295
- var _a, _b;
1296
- this.baseURL = (_b = (0, import_provider_utils5.withoutTrailingSlash)((_a = options.baseURL) != null ? _a : options.baseUrl)) != null ? _b : "https://api.openai.com/v1";
1297
- this.apiKey = options.apiKey;
1298
- this.organization = options.organization;
1299
- this.project = options.project;
1300
- this.headers = options.headers;
1301
- }
1302
- get baseConfig() {
1303
- return {
1304
- organization: this.organization,
1305
- baseURL: this.baseURL,
1306
- headers: () => ({
1307
- Authorization: `Bearer ${(0, import_provider_utils5.loadApiKey)({
1308
- apiKey: this.apiKey,
1309
- environmentVariableName: "OPENAI_API_KEY",
1310
- description: "OpenAI"
1311
- })}`,
1312
- "OpenAI-Organization": this.organization,
1313
- "OpenAI-Project": this.project,
1314
- ...this.headers
1315
- })
1316
- };
1317
- }
1318
- chat(modelId, settings = {}) {
1319
- return new OpenAIChatLanguageModel(modelId, settings, {
1320
- provider: "openai.chat",
1321
- ...this.baseConfig,
1322
- compatibility: "strict",
1323
- url: ({ path }) => `${this.baseURL}${path}`
1324
- });
1325
- }
1326
- completion(modelId, settings = {}) {
1327
- return new OpenAICompletionLanguageModel(modelId, settings, {
1328
- provider: "openai.completion",
1329
- ...this.baseConfig,
1330
- compatibility: "strict",
1331
- url: ({ path }) => `${this.baseURL}${path}`
1332
- });
1333
- }
1334
- };
1335
-
1336
- // src/openai-provider.ts
1337
- var import_provider_utils7 = require("@ai-sdk/provider-utils");
1338
-
1339
1288
  // src/openai-embedding-model.ts
1340
1289
  var import_provider6 = require("@ai-sdk/provider");
1341
- var import_provider_utils6 = require("@ai-sdk/provider-utils");
1290
+ var import_provider_utils5 = require("@ai-sdk/provider-utils");
1342
1291
  var import_zod4 = require("zod");
1343
1292
  var OpenAIEmbeddingModel = class {
1344
1293
  constructor(modelId, settings, config) {
@@ -1371,12 +1320,12 @@ var OpenAIEmbeddingModel = class {
1371
1320
  values
1372
1321
  });
1373
1322
  }
1374
- const { responseHeaders, value: response } = await (0, import_provider_utils6.postJsonToApi)({
1323
+ const { responseHeaders, value: response } = await (0, import_provider_utils5.postJsonToApi)({
1375
1324
  url: this.config.url({
1376
1325
  path: "/embeddings",
1377
1326
  modelId: this.modelId
1378
1327
  }),
1379
- headers: (0, import_provider_utils6.combineHeaders)(this.config.headers(), headers),
1328
+ headers: (0, import_provider_utils5.combineHeaders)(this.config.headers(), headers),
1380
1329
  body: {
1381
1330
  model: this.modelId,
1382
1331
  input: values,
@@ -1385,7 +1334,7 @@ var OpenAIEmbeddingModel = class {
1385
1334
  user: this.settings.user
1386
1335
  },
1387
1336
  failedResponseHandler: openaiFailedResponseHandler,
1388
- successfulResponseHandler: (0, import_provider_utils6.createJsonResponseHandler)(
1337
+ successfulResponseHandler: (0, import_provider_utils5.createJsonResponseHandler)(
1389
1338
  openaiTextEmbeddingResponseSchema
1390
1339
  ),
1391
1340
  abortSignal,
@@ -1405,12 +1354,12 @@ var openaiTextEmbeddingResponseSchema = import_zod4.z.object({
1405
1354
 
1406
1355
  // src/openai-provider.ts
1407
1356
  function createOpenAI(options = {}) {
1408
- var _a, _b, _c, _d;
1409
- const baseURL = (_b = (0, import_provider_utils7.withoutTrailingSlash)((_a = options.baseURL) != null ? _a : options.baseUrl)) != null ? _b : "https://api.openai.com/v1";
1410
- const compatibility = (_c = options.compatibility) != null ? _c : "compatible";
1411
- const providerName = (_d = options.name) != null ? _d : "openai";
1357
+ var _a, _b, _c;
1358
+ const baseURL = (_a = (0, import_provider_utils6.withoutTrailingSlash)(options.baseURL)) != null ? _a : "https://api.openai.com/v1";
1359
+ const compatibility = (_b = options.compatibility) != null ? _b : "compatible";
1360
+ const providerName = (_c = options.name) != null ? _c : "openai";
1412
1361
  const getHeaders = () => ({
1413
- Authorization: `Bearer ${(0, import_provider_utils7.loadApiKey)({
1362
+ Authorization: `Bearer ${(0, import_provider_utils6.loadApiKey)({
1414
1363
  apiKey: options.apiKey,
1415
1364
  environmentVariableName: "OPENAI_API_KEY",
1416
1365
  description: "OpenAI"
@@ -1470,7 +1419,6 @@ var openai = createOpenAI({
1470
1419
  });
1471
1420
  // Annotate the CommonJS export names for ESM import in node:
1472
1421
  0 && (module.exports = {
1473
- OpenAI,
1474
1422
  createOpenAI,
1475
1423
  openai
1476
1424
  });