@push.rocks/smartai
Version:
SmartAi is a versatile TypeScript library designed to facilitate integration and interaction with various AI models, offering functionalities for chat, audio generation, document processing, and vision tasks.
51 lines (50 loc) • 1.52 kB
TypeScript
import * as plugins from './plugins.js';
export type TChatCompletionRequestMessage = {
role: "system" | "user" | "assistant";
content: string;
};
import { MultiModalModel } from './abstract.classes.multimodal.js';
export interface IOpenaiProviderOptions {
openaiToken: string;
chatModel?: string;
audioModel?: string;
visionModel?: string;
}
export declare class OpenAiProvider extends MultiModalModel {
private options;
openAiApiClient: plugins.openai.default;
smartpdfInstance: plugins.smartpdf.SmartPdf;
constructor(optionsArg: IOpenaiProviderOptions);
start(): Promise<void>;
stop(): Promise<void>;
chatStream(input: ReadableStream<Uint8Array>): Promise<ReadableStream<string>>;
chat(optionsArg: {
systemMessage: string;
userMessage: string;
messageHistory: {
role: 'assistant' | 'user';
content: string;
}[];
}): Promise<{
role: "assistant";
message: string;
}>;
audio(optionsArg: {
message: string;
}): Promise<NodeJS.ReadableStream>;
document(optionsArg: {
systemMessage: string;
userMessage: string;
pdfDocuments: Uint8Array[];
messageHistory: {
role: 'assistant' | 'user';
content: any;
}[];
}): Promise<{
message: import("openai/resources/index.mjs").ChatCompletionMessage;
}>;
vision(optionsArg: {
image: Buffer;
prompt: string;
}): Promise<string>;
}