@hashbrownai/azure
Version:
Azure provider for Hashbrown AI
25 lines (24 loc) • 1.19 kB
TypeScript
import { AzureKnownModelIds, Chat } from '@hashbrownai/core';
import OpenAI from 'openai';
type BaseAzureTextStreamOptions = {
apiKey: string;
endpoint: string;
request: AzureCompletionCreateParams;
transformRequestOptions?: (options: OpenAI.Chat.ChatCompletionCreateParamsStreaming) => OpenAI.Chat.ChatCompletionCreateParamsStreaming | Promise<OpenAI.Chat.ChatCompletionCreateParamsStreaming>;
};
type ThreadPersistenceOptions = {
loadThread: (threadId: string) => Promise<Chat.Api.Message[]>;
saveThread: (thread: Chat.Api.Message[], threadId?: string) => Promise<string>;
};
type ThreadlessOptions = BaseAzureTextStreamOptions & {
loadThread?: undefined;
saveThread?: undefined;
};
type ThreadfulOptions = BaseAzureTextStreamOptions & ThreadPersistenceOptions;
export type AzureTextStreamOptions = ThreadlessOptions | ThreadfulOptions;
export interface AzureCompletionCreateParams extends Omit<Chat.Api.CompletionCreateParams, 'model'> {
model: AzureKnownModelIds;
}
export declare function text(options: ThreadfulOptions): AsyncIterable<Uint8Array>;
export declare function text(options: ThreadlessOptions): AsyncIterable<Uint8Array>;
export {};