@ai-sdk/vercel 0.0.1 → 1.0.0-alpha.6

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,20 @@
1
1
  # @ai-sdk/vercel
2
2
 
3
+ ## 1.0.0-alpha.6
4
+
5
+ ### Patch Changes
6
+
7
+ - Updated dependencies [0d2c085]
8
+ - @ai-sdk/provider@2.0.0-alpha.6
9
+ - @ai-sdk/openai-compatible@1.0.0-alpha.6
10
+ - @ai-sdk/provider-utils@3.0.0-alpha.6
11
+
12
+ ## 1.0.0-alpha.5
13
+
14
+ ### Patch Changes
15
+
16
+ - 9eb5417: feat (providers/vercel): initial vercel provider
17
+
3
18
  ## 0.0.1
4
19
 
5
20
  ### Patch Changes
package/dist/index.d.mts CHANGED
@@ -1,11 +1,8 @@
1
- import { ProviderV1, LanguageModelV1 } from '@ai-sdk/provider';
1
+ import { ProviderV2, LanguageModelV2 } from '@ai-sdk/provider';
2
2
  import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { OpenAICompatibleChatSettings } from '@ai-sdk/openai-compatible';
4
3
  export { OpenAICompatibleErrorData as VercelErrorData } from '@ai-sdk/openai-compatible';
5
4
 
6
5
  type VercelChatModelId = 'v0-1.0-md' | (string & {});
7
- interface VercelChatSettings extends OpenAICompatibleChatSettings {
8
- }
9
6
 
10
7
  interface VercelProviderSettings {
11
8
  /**
@@ -26,19 +23,15 @@ interface VercelProviderSettings {
26
23
  */
27
24
  fetch?: FetchFunction;
28
25
  }
29
- interface VercelProvider extends ProviderV1 {
26
+ interface VercelProvider extends ProviderV2 {
30
27
  /**
31
28
  Creates a model for text generation.
32
29
  */
33
- (modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
34
- /**
35
- Creates a chat model for text generation.
36
- */
37
- chatModel(modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
30
+ (modelId: VercelChatModelId): LanguageModelV2;
38
31
  /**
39
32
  Creates a language model for text generation.
40
33
  */
41
- languageModel(modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
34
+ languageModel(modelId: VercelChatModelId): LanguageModelV2;
42
35
  }
43
36
  declare function createVercel(options?: VercelProviderSettings): VercelProvider;
44
37
  declare const vercel: VercelProvider;
package/dist/index.d.ts CHANGED
@@ -1,11 +1,8 @@
1
- import { ProviderV1, LanguageModelV1 } from '@ai-sdk/provider';
1
+ import { ProviderV2, LanguageModelV2 } from '@ai-sdk/provider';
2
2
  import { FetchFunction } from '@ai-sdk/provider-utils';
3
- import { OpenAICompatibleChatSettings } from '@ai-sdk/openai-compatible';
4
3
  export { OpenAICompatibleErrorData as VercelErrorData } from '@ai-sdk/openai-compatible';
5
4
 
6
5
  type VercelChatModelId = 'v0-1.0-md' | (string & {});
7
- interface VercelChatSettings extends OpenAICompatibleChatSettings {
8
- }
9
6
 
10
7
  interface VercelProviderSettings {
11
8
  /**
@@ -26,19 +23,15 @@ interface VercelProviderSettings {
26
23
  */
27
24
  fetch?: FetchFunction;
28
25
  }
29
- interface VercelProvider extends ProviderV1 {
26
+ interface VercelProvider extends ProviderV2 {
30
27
  /**
31
28
  Creates a model for text generation.
32
29
  */
33
- (modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
34
- /**
35
- Creates a chat model for text generation.
36
- */
37
- chatModel(modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
30
+ (modelId: VercelChatModelId): LanguageModelV2;
38
31
  /**
39
32
  Creates a language model for text generation.
40
33
  */
41
- languageModel(modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;
34
+ languageModel(modelId: VercelChatModelId): LanguageModelV2;
42
35
  }
43
36
  declare function createVercel(options?: VercelProviderSettings): VercelProvider;
44
37
  declare const vercel: VercelProvider;
package/dist/index.js CHANGED
@@ -48,18 +48,19 @@ function createVercel(options = {}) {
48
48
  headers: getHeaders,
49
49
  fetch: options.fetch
50
50
  });
51
- const createChatModel = (modelId, settings = {}) => {
52
- return new import_openai_compatible.OpenAICompatibleChatLanguageModel(modelId, settings, {
53
- ...getCommonModelConfig("chat"),
54
- defaultObjectGenerationMode: "json"
51
+ const createChatModel = (modelId) => {
52
+ return new import_openai_compatible.OpenAICompatibleChatLanguageModel(modelId, {
53
+ ...getCommonModelConfig("chat")
55
54
  });
56
55
  };
57
- const provider = (modelId, settings) => createChatModel(modelId, settings);
58
- provider.chatModel = createChatModel;
56
+ const provider = (modelId) => createChatModel(modelId);
59
57
  provider.languageModel = createChatModel;
60
58
  provider.textEmbeddingModel = (modelId) => {
61
59
  throw new import_provider.NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
62
60
  };
61
+ provider.imageModel = (modelId) => {
62
+ throw new import_provider.NoSuchModelError({ modelId, modelType: "imageModel" });
63
+ };
63
64
  return provider;
64
65
  }
65
66
  var vercel = createVercel();
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/vercel-provider.ts"],"sourcesContent":["export { createVercel, vercel } from './vercel-provider';\nexport type { VercelProvider, VercelProviderSettings } from './vercel-provider';\nexport type { OpenAICompatibleErrorData as VercelErrorData } from '@ai-sdk/openai-compatible';\n","import {\n LanguageModelV1,\n NoSuchModelError,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { VercelChatModelId, VercelChatSettings } from './vercel-chat-settings';\n\nexport interface VercelProviderSettings {\n /**\nVercel API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV1 {\n /**\nCreates a model for text generation.\n*/\n (modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a language model for text generation.\n*/\n languageModel(\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ): LanguageModelV1;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (\n modelId: VercelChatModelId,\n settings: VercelChatSettings = {},\n ) => {\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig('chat'),\n defaultObjectGenerationMode: 'json',\n });\n };\n\n const provider = (\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ) => createChatModel(modelId, settings);\n\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAIO;AACP,+BAAkD;AAClD,4BAIO;AA8CA,SAAS,aACd,UAAkC,CAAC,GACnB;AA1DlB;AA2DE,QAAM,cAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,cAAU,kCAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AASA,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CACtB,SACA,WAA+B,CAAC,MAC7B;AACH,WAAO,IAAI,2DAAkC,SAAS,UAAU;AAAA,MAC9D,GAAG,qBAAqB,MAAM;AAAA,MAC9B,6BAA6B;AAAA,IAC/B,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CACf,SACA,aACG,gBAAgB,SAAS,QAAQ;AAEtC,WAAS,YAAY;AACrB,WAAS,gBAAgB;AACzB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
1
+ {"version":3,"sources":["../src/index.ts","../src/vercel-provider.ts"],"sourcesContent":["export { createVercel, vercel } from './vercel-provider';\nexport type { VercelProvider, VercelProviderSettings } from './vercel-provider';\nexport type { OpenAICompatibleErrorData as VercelErrorData } from '@ai-sdk/openai-compatible';\n","import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { VercelChatModelId } from './vercel-chat-options';\n\nexport interface VercelProviderSettings {\n /**\nVercel API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV2 {\n /**\nCreates a model for text generation.\n*/\n (modelId: VercelChatModelId): LanguageModelV2;\n\n /**\nCreates a language model for text generation.\n*/\n languageModel(modelId: VercelChatModelId): LanguageModelV2;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: VercelChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n });\n };\n\n const provider = (modelId: VercelChatModelId) => createChatModel(modelId);\n\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,sBAIO;AACP,+BAAkD;AAClD,4BAIO;AAmCA,SAAS,aACd,UAAkC,CAAC,GACnB;AA/ClB;AAgDE,QAAM,cAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,cAAU,kCAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AASA,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CAAC,YAA+B;AACtD,WAAO,IAAI,2DAAkC,SAAS;AAAA,MACpD,GAAG,qBAAqB,MAAM;AAAA,IAChC,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAA+B,gBAAgB,OAAO;AAExE,WAAS,gBAAgB;AACzB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AACA,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iCAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
package/dist/index.mjs CHANGED
@@ -26,18 +26,19 @@ function createVercel(options = {}) {
26
26
  headers: getHeaders,
27
27
  fetch: options.fetch
28
28
  });
29
- const createChatModel = (modelId, settings = {}) => {
30
- return new OpenAICompatibleChatLanguageModel(modelId, settings, {
31
- ...getCommonModelConfig("chat"),
32
- defaultObjectGenerationMode: "json"
29
+ const createChatModel = (modelId) => {
30
+ return new OpenAICompatibleChatLanguageModel(modelId, {
31
+ ...getCommonModelConfig("chat")
33
32
  });
34
33
  };
35
- const provider = (modelId, settings) => createChatModel(modelId, settings);
36
- provider.chatModel = createChatModel;
34
+ const provider = (modelId) => createChatModel(modelId);
37
35
  provider.languageModel = createChatModel;
38
36
  provider.textEmbeddingModel = (modelId) => {
39
37
  throw new NoSuchModelError({ modelId, modelType: "textEmbeddingModel" });
40
38
  };
39
+ provider.imageModel = (modelId) => {
40
+ throw new NoSuchModelError({ modelId, modelType: "imageModel" });
41
+ };
41
42
  return provider;
42
43
  }
43
44
  var vercel = createVercel();
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/vercel-provider.ts"],"sourcesContent":["import {\n LanguageModelV1,\n NoSuchModelError,\n ProviderV1,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { VercelChatModelId, VercelChatSettings } from './vercel-chat-settings';\n\nexport interface VercelProviderSettings {\n /**\nVercel API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV1 {\n /**\nCreates a model for text generation.\n*/\n (modelId: VercelChatModelId, settings?: VercelChatSettings): LanguageModelV1;\n\n /**\nCreates a chat model for text generation.\n*/\n chatModel(\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ): LanguageModelV1;\n\n /**\nCreates a language model for text generation.\n*/\n languageModel(\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ): LanguageModelV1;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (\n modelId: VercelChatModelId,\n settings: VercelChatSettings = {},\n ) => {\n return new OpenAICompatibleChatLanguageModel(modelId, settings, {\n ...getCommonModelConfig('chat'),\n defaultObjectGenerationMode: 'json',\n });\n };\n\n const provider = (\n modelId: VercelChatModelId,\n settings?: VercelChatSettings,\n ) => createChatModel(modelId, settings);\n\n provider.chatModel = createChatModel;\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,OAEK;AACP,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,EACA;AAAA,OACK;AA8CA,SAAS,aACd,UAAkC,CAAC,GACnB;AA1DlB;AA2DE,QAAM,UAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,UAAU,WAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AASA,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CACtB,SACA,WAA+B,CAAC,MAC7B;AACH,WAAO,IAAI,kCAAkC,SAAS,UAAU;AAAA,MAC9D,GAAG,qBAAqB,MAAM;AAAA,MAC9B,6BAA6B;AAAA,IAC/B,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CACf,SACA,aACG,gBAAgB,SAAS,QAAQ;AAEtC,WAAS,YAAY;AACrB,WAAS,gBAAgB;AACzB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
1
+ {"version":3,"sources":["../src/vercel-provider.ts"],"sourcesContent":["import {\n LanguageModelV2,\n NoSuchModelError,\n ProviderV2,\n} from '@ai-sdk/provider';\nimport { OpenAICompatibleChatLanguageModel } from '@ai-sdk/openai-compatible';\nimport {\n FetchFunction,\n loadApiKey,\n withoutTrailingSlash,\n} from '@ai-sdk/provider-utils';\nimport { VercelChatModelId } from './vercel-chat-options';\n\nexport interface VercelProviderSettings {\n /**\nVercel API key.\n*/\n apiKey?: string;\n /**\nBase URL for the API calls.\n*/\n baseURL?: string;\n /**\nCustom headers to include in the requests.\n*/\n headers?: Record<string, string>;\n /**\nCustom fetch implementation. You can use it as a middleware to intercept requests,\nor to provide a custom fetch implementation for e.g. testing.\n*/\n fetch?: FetchFunction;\n}\n\nexport interface VercelProvider extends ProviderV2 {\n /**\nCreates a model for text generation.\n*/\n (modelId: VercelChatModelId): LanguageModelV2;\n\n /**\nCreates a language model for text generation.\n*/\n languageModel(modelId: VercelChatModelId): LanguageModelV2;\n}\n\nexport function createVercel(\n options: VercelProviderSettings = {},\n): VercelProvider {\n const baseURL = withoutTrailingSlash(\n options.baseURL ?? 'https://api.v0.dev/v1',\n );\n const getHeaders = () => ({\n Authorization: `Bearer ${loadApiKey({\n apiKey: options.apiKey,\n environmentVariableName: 'VERCEL_API_KEY',\n description: 'Vercel',\n })}`,\n ...options.headers,\n });\n\n interface CommonModelConfig {\n provider: string;\n url: ({ path }: { path: string }) => string;\n headers: () => Record<string, string>;\n fetch?: FetchFunction;\n }\n\n const getCommonModelConfig = (modelType: string): CommonModelConfig => ({\n provider: `vercel.${modelType}`,\n url: ({ path }) => `${baseURL}${path}`,\n headers: getHeaders,\n fetch: options.fetch,\n });\n\n const createChatModel = (modelId: VercelChatModelId) => {\n return new OpenAICompatibleChatLanguageModel(modelId, {\n ...getCommonModelConfig('chat'),\n });\n };\n\n const provider = (modelId: VercelChatModelId) => createChatModel(modelId);\n\n provider.languageModel = createChatModel;\n provider.textEmbeddingModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'textEmbeddingModel' });\n };\n provider.imageModel = (modelId: string) => {\n throw new NoSuchModelError({ modelId, modelType: 'imageModel' });\n };\n\n return provider;\n}\n\nexport const vercel = createVercel();\n"],"mappings":";AAAA;AAAA,EAEE;AAAA,OAEK;AACP,SAAS,yCAAyC;AAClD;AAAA,EAEE;AAAA,EACA;AAAA,OACK;AAmCA,SAAS,aACd,UAAkC,CAAC,GACnB;AA/ClB;AAgDE,QAAM,UAAU;AAAA,KACd,aAAQ,YAAR,YAAmB;AAAA,EACrB;AACA,QAAM,aAAa,OAAO;AAAA,IACxB,eAAe,UAAU,WAAW;AAAA,MAClC,QAAQ,QAAQ;AAAA,MAChB,yBAAyB;AAAA,MACzB,aAAa;AAAA,IACf,CAAC,CAAC;AAAA,IACF,GAAG,QAAQ;AAAA,EACb;AASA,QAAM,uBAAuB,CAAC,eAA0C;AAAA,IACtE,UAAU,UAAU,SAAS;AAAA,IAC7B,KAAK,CAAC,EAAE,KAAK,MAAM,GAAG,OAAO,GAAG,IAAI;AAAA,IACpC,SAAS;AAAA,IACT,OAAO,QAAQ;AAAA,EACjB;AAEA,QAAM,kBAAkB,CAAC,YAA+B;AACtD,WAAO,IAAI,kCAAkC,SAAS;AAAA,MACpD,GAAG,qBAAqB,MAAM;AAAA,IAChC,CAAC;AAAA,EACH;AAEA,QAAM,WAAW,CAAC,YAA+B,gBAAgB,OAAO;AAExE,WAAS,gBAAgB;AACzB,WAAS,qBAAqB,CAAC,YAAoB;AACjD,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,qBAAqB,CAAC;AAAA,EACzE;AACA,WAAS,aAAa,CAAC,YAAoB;AACzC,UAAM,IAAI,iBAAiB,EAAE,SAAS,WAAW,aAAa,CAAC;AAAA,EACjE;AAEA,SAAO;AACT;AAEO,IAAM,SAAS,aAAa;","names":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ai-sdk/vercel",
3
- "version": "0.0.1",
3
+ "version": "1.0.0-alpha.6",
4
4
  "license": "Apache-2.0",
5
5
  "sideEffects": false,
6
6
  "main": "./dist/index.js",
@@ -19,19 +19,19 @@
19
19
  }
20
20
  },
21
21
  "dependencies": {
22
- "@ai-sdk/openai-compatible": "0.2.14",
23
- "@ai-sdk/provider": "1.1.3",
24
- "@ai-sdk/provider-utils": "2.2.8"
22
+ "@ai-sdk/openai-compatible": "1.0.0-alpha.6",
23
+ "@ai-sdk/provider": "2.0.0-alpha.6",
24
+ "@ai-sdk/provider-utils": "3.0.0-alpha.6"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@types/node": "20.17.24",
28
28
  "tsup": "^8",
29
- "typescript": "5.6.3",
30
- "zod": "3.23.8",
29
+ "typescript": "5.8.3",
30
+ "zod": "3.24.4",
31
31
  "@vercel/ai-tsconfig": "0.0.0"
32
32
  },
33
33
  "peerDependencies": {
34
- "zod": "^3.0.0"
34
+ "zod": "^3.24.0"
35
35
  },
36
36
  "engines": {
37
37
  "node": ">=18"
@@ -51,13 +51,15 @@
51
51
  "ai"
52
52
  ],
53
53
  "scripts": {
54
- "build": "tsup",
55
- "build:watch": "tsup --watch",
56
- "clean": "rm -rf dist",
54
+ "build": "pnpm clean && tsup --tsconfig tsconfig.build.json",
55
+ "build:watch": "pnpm clean && tsup --watch",
56
+ "clean": "rm -rf dist *.tsbuildinfo",
57
57
  "lint": "eslint \"./**/*.ts*\"",
58
- "type-check": "tsc --noEmit",
58
+ "type-check": "tsc --build",
59
59
  "prettier-check": "prettier --check \"./**/*.ts*\"",
60
60
  "test": "pnpm test:node && pnpm test:edge",
61
+ "test:update": "pnpm test:node -u",
62
+ "test:watch": "vitest --config vitest.node.config.js",
61
63
  "test:edge": "vitest --config vitest.edge.config.js --run",
62
64
  "test:node": "vitest --config vitest.node.config.js --run"
63
65
  }