@tomisakae/tomibot
Version:
TomiBot - AI Chatbot CLI với Google Genkit. Một chatbot AI thông minh chạy trên command line với giao diện đẹp.
36 lines • 1.37 kB
TypeScript
import { AIService, ChatMessage, ChatResponse, AIModelInfo, AsyncInitializable, Disposable } from '../../core/types';
export interface AIServiceConfig {
provider: string;
model: string;
apiKey: string;
maxTokens?: number;
temperature?: number;
timeout?: number;
}
export interface AIServiceOptions {
retryAttempts?: number;
retryDelay?: number;
enableLogging?: boolean;
}
export declare abstract class BaseAIService implements AIService, AsyncInitializable, Disposable {
protected config: AIServiceConfig;
protected options: AIServiceOptions;
protected initialized: boolean;
protected history: ChatMessage[];
constructor(config: AIServiceConfig, options?: AIServiceOptions);
abstract initialize(): Promise<void>;
abstract sendMessage(message: string): Promise<ChatResponse>;
abstract testConnection(): Promise<boolean>;
abstract dispose(): Promise<void>;
isReady(): boolean;
isInitialized(): boolean;
clearHistory(): void;
getHistory(): ChatMessage[];
getModelInfo(): AIModelInfo;
protected abstract getCapabilities(): string[];
protected addToHistory(message: ChatMessage): void;
protected generateMessageId(): string;
protected withRetry<T>(operation: () => Promise<T>, context: string): Promise<T>;
private delay;
}
//# sourceMappingURL=ai.interface.d.ts.map