UNPKG

@ai-sdk/openai

Version:

The **[OpenAI provider](https://ai-sdk.dev/providers/ai-sdk-providers/openai)** for the [AI SDK](https://ai-sdk.dev/docs) contains language model support for the OpenAI chat and completion APIs and embedding model support for the OpenAI embeddings API.

74 lines (61 loc) 1.85 kB
import type { openaiResponsesChunkSchema, OpenAIResponsesLogprobs, } from './openai-responses-api'; import type { InferSchema } from '@ai-sdk/provider-utils'; type OpenaiResponsesChunk = InferSchema<typeof openaiResponsesChunkSchema>; type ResponsesOutputTextAnnotationProviderMetadata = Extract< OpenaiResponsesChunk, { type: 'response.output_text.annotation.added' } >['annotation']; export type ResponsesProviderMetadata = { responseId: string | null | undefined; logprobs?: Array<OpenAIResponsesLogprobs>; serviceTier?: string; reasoningContext?: string; }; export type ResponsesReasoningProviderMetadata = { itemId: string; reasoningEncryptedContent?: string | null; }; export type OpenaiResponsesReasoningProviderMetadata = { openai: ResponsesReasoningProviderMetadata; }; export type OpenaiResponsesProviderMetadata = { openai: ResponsesProviderMetadata; }; export type ResponsesCompactionProviderMetadata = { type: 'compaction'; itemId: string; encryptedContent?: string; }; export type OpenaiResponsesCompactionProviderMetadata = { openai: ResponsesCompactionProviderMetadata; }; export type ResponsesTextProviderMetadata = { itemId: string; phase?: 'commentary' | 'final_answer' | null; annotations?: Array<ResponsesOutputTextAnnotationProviderMetadata>; }; export type OpenaiResponsesTextProviderMetadata = { openai: ResponsesTextProviderMetadata; }; export type ResponsesSourceDocumentProviderMetadata = | { type: 'file_citation'; fileId: string; index: number; } | { type: 'container_file_citation'; fileId: string; containerId: string; } | { type: 'file_path'; fileId: string; index: number; }; export type OpenaiResponsesSourceDocumentProviderMetadata = { openai: ResponsesSourceDocumentProviderMetadata; };