@hashbrownai/openai
Version:
OpenAI provider for Hashbrown AI
22 lines (21 loc) • 1.04 kB
TypeScript
import { Chat } from '@hashbrownai/core';
import OpenAI from 'openai';
type BaseOpenAITextStreamOptions = {
apiKey: string;
baseURL?: string;
request: Chat.Api.CompletionCreateParams;
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 = BaseOpenAITextStreamOptions & {
loadThread?: undefined;
saveThread?: undefined;
};
type ThreadfulOptions = BaseOpenAITextStreamOptions & ThreadPersistenceOptions;
export type OpenAITextStreamOptions = ThreadlessOptions | ThreadfulOptions;
export declare function text(options: ThreadfulOptions): AsyncIterable<Uint8Array>;
export declare function text(options: ThreadlessOptions): AsyncIterable<Uint8Array>;
export {};