UNPKG

bb-inspired

Version:

Core library for BB-inspired NestJS backend

31 lines (30 loc) 1.54 kB
import { OnModuleInit } from '@nestjs/common'; import { AIProviderConfig, AIMessage, TextCompletionOptions, ChatCompletionOptions, EmbeddingOptions, TextCompletionResult, ChatCompletionResult, EmbeddingResult, AIModelInfo } from './interfaces/ai.interfaces'; export declare enum AIProvider { OPENAI = "openai" } export interface AIModuleOptions { defaultProvider: AIProvider; providers: { [AIProvider.OPENAI]?: AIProviderConfig; }; } export declare class AIService implements OnModuleInit { private readonly options; private readonly logger; private providers; private defaultProvider; constructor(options: AIModuleOptions); onModuleInit(): Promise<void>; private getProvider; listModels(provider?: AIProvider): Promise<AIModelInfo[]>; getModel(modelId: string, provider?: AIProvider): Promise<AIModelInfo>; createCompletion(prompt: string, options?: TextCompletionOptions, provider?: AIProvider): Promise<TextCompletionResult>; createChatCompletion(options: ChatCompletionOptions, provider?: AIProvider): Promise<ChatCompletionResult>; createEmbedding(input: string | string[], options?: EmbeddingOptions, provider?: AIProvider): Promise<EmbeddingResult>; createSystemMessage(content: string): AIMessage; createUserMessage(content: string): AIMessage; createAssistantMessage(content: string): AIMessage; createConversation(systemPrompt: string, userPrompt?: string): AIMessage[]; estimateTokenCount(text: string, provider?: AIProvider): number; }