1- import {
2- LanguageModelV1 ,
3- LanguageModelV1CallWarning ,
4- LanguageModelV1FinishReason ,
5- LanguageModelV1LogProbs ,
6- NoTextGeneratedError ,
7- } from '@ai-sdk/provider' ;
1+ import { NoObjectGeneratedError } from '@ai-sdk/provider' ;
82import { safeParseJSON } from '@ai-sdk/provider-utils' ;
93import { z } from 'zod' ;
104import { TokenUsage , calculateTokenUsage } from '../generate-text/token-usage' ;
@@ -13,6 +7,7 @@ import { convertToLanguageModelPrompt } from '../prompt/convert-to-language-mode
137import { getValidatedPrompt } from '../prompt/get-validated-prompt' ;
148import { prepareCallSettings } from '../prompt/prepare-call-settings' ;
159import { Prompt } from '../prompt/prompt' ;
10+ import { CallWarning , FinishReason , LanguageModel , LogProbs } from '../types' ;
1611import { convertZodToJSONSchema } from '../util/convert-zod-to-json-schema' ;
1712import { retryWithExponentialBackoff } from '../util/retry-with-exponential-backoff' ;
1813import { injectJsonSchemaIntoSystem } from './inject-json-schema-into-system' ;
@@ -68,7 +63,7 @@ export async function experimental_generateObject<T>({
6863 /**
6964The language model to use.
7065 */
71- model : LanguageModelV1 ;
66+ model : LanguageModel ;
7267
7368 /**
7469The schema of the object that the model should generate.
@@ -91,11 +86,11 @@ Default and recommended: 'auto' (best mode for the model).
9186 }
9287
9388 let result : string ;
94- let finishReason : LanguageModelV1FinishReason ;
89+ let finishReason : FinishReason ;
9590 let usage : Parameters < typeof calculateTokenUsage > [ 0 ] ;
96- let warnings : LanguageModelV1CallWarning [ ] | undefined ;
91+ let warnings : CallWarning [ ] | undefined ;
9792 let rawResponse : { headers ?: Record < string , string > } | undefined ;
98- let logprobs : LanguageModelV1LogProbs | undefined ;
93+ let logprobs : LogProbs | undefined ;
9994
10095 switch ( mode ) {
10196 case 'json' : {
@@ -116,7 +111,7 @@ Default and recommended: 'auto' (best mode for the model).
116111 } ) ;
117112
118113 if ( generateResult . text === undefined ) {
119- throw new NoTextGeneratedError ( ) ;
114+ throw new NoObjectGeneratedError ( ) ;
120115 }
121116
122117 result = generateResult . text ;
@@ -147,7 +142,7 @@ Default and recommended: 'auto' (best mode for the model).
147142 ) ;
148143
149144 if ( generateResult . text === undefined ) {
150- throw new NoTextGeneratedError ( ) ;
145+ throw new NoObjectGeneratedError ( ) ;
151146 }
152147
153148 result = generateResult . text ;
@@ -188,7 +183,7 @@ Default and recommended: 'auto' (best mode for the model).
188183 const functionArgs = generateResult . toolCalls ?. [ 0 ] ?. args ;
189184
190185 if ( functionArgs === undefined ) {
191- throw new NoTextGeneratedError ( ) ;
186+ throw new NoObjectGeneratedError ( ) ;
192187 }
193188
194189 result = functionArgs ;
@@ -239,7 +234,7 @@ The generated object (typed according to the schema).
239234 /**
240235The reason why the generation finished.
241236 */
242- readonly finishReason : LanguageModelV1FinishReason ;
237+ readonly finishReason : FinishReason ;
243238
244239 /**
245240The token usage of the generated text.
@@ -249,7 +244,7 @@ The token usage of the generated text.
249244 /**
250245Warnings from the model provider (e.g. unsupported settings)
251246 */
252- readonly warnings : LanguageModelV1CallWarning [ ] | undefined ;
247+ readonly warnings : CallWarning [ ] | undefined ;
253248
254249 /**
255250Optional raw response data.
@@ -265,17 +260,17 @@ Response headers.
265260Logprobs for the completion.
266261`undefined` if the mode does not support logprobs or if was not enabled
267262 */
268- readonly logprobs : LanguageModelV1LogProbs | undefined ;
263+ readonly logprobs : LogProbs | undefined ;
269264
270265 constructor ( options : {
271266 object : T ;
272- finishReason : LanguageModelV1FinishReason ;
267+ finishReason : FinishReason ;
273268 usage : TokenUsage ;
274- warnings : LanguageModelV1CallWarning [ ] | undefined ;
269+ warnings : CallWarning [ ] | undefined ;
275270 rawResponse ?: {
276271 headers ?: Record < string , string > ;
277272 } ;
278- logprobs : LanguageModelV1LogProbs | undefined ;
273+ logprobs : LogProbs | undefined ;
279274 } ) {
280275 this . object = options . object ;
281276 this . finishReason = options . finishReason ;
0 commit comments