UNPKG

sarvam-ai-provider

Version:

The **Sarvam AI SDK Provider** is a library developed to integrate with the Vercel AI SDK. This library brings Speech to Text (STT) capabilities to your applications, allowing for seamless interaction with audio and text data.

50 lines (44 loc) 1.72 kB
import { TranscriptionModelV1, ProviderV1 } from '@ai-sdk/provider'; import { FetchFunction } from '@ai-sdk/provider-utils'; type SarvamConfig = { provider: string; url: (options: { modelId: string; path: string; }) => string; headers: () => Record<string, string | undefined>; fetch?: FetchFunction; generateId?: () => string; }; type SarvamTranscriptionModelId = 'saarika:v2' | 'saarika:v1' | 'saarika:flash' | (string & {}); interface SarvamTranscriptionModelConfig extends SarvamConfig { _internal?: { currentDate?: () => Date; }; } declare class SarvamTranscriptionModel implements TranscriptionModelV1 { readonly modelId: SarvamTranscriptionModelId; private readonly config; readonly specificationVersion = "v1"; constructor(modelId: SarvamTranscriptionModelId, config: SarvamTranscriptionModelConfig); get provider(): string; private getArgs; doGenerate(options: Parameters<TranscriptionModelV1['doGenerate']>[0]): Promise<Awaited<ReturnType<TranscriptionModelV1['doGenerate']>>>; } interface SarvamProvider extends Pick<ProviderV1, 'transcriptionModel'> { (modelId: 'saarika:v2', settings?: {}): { transcription: SarvamTranscriptionModel; }; /** * Creates a model for transcription. */ transcription(modelId: SarvamTranscriptionModelId): TranscriptionModelV1; } interface SarvamProviderSettings { apiKey?: string; headers?: Record<string, string>; fetch?: FetchFunction; } declare function createSarvam(options?: SarvamProviderSettings): SarvamProvider; declare const sarvam: SarvamProvider; export { type SarvamProvider, type SarvamProviderSettings, createSarvam, sarvam };