@yk1028-test/ai-chat-supporter
Version:
AI Chat Supporter - TypeScript library for intelligent chat processing with LangChain integration
61 lines • 1.96 kB
TypeScript
import { InputData } from '../types/input/index';
import { OutputData } from '../types/output/index';
import { Language } from '../types';
import { LangChainRAGConfig } from '../rag/LangChainRAGManager';
export interface ChatSupporterConfig {
provider: 'ollama';
providerConfig: {
model?: string;
baseUrl?: string;
temperature?: number;
maxTokens?: number;
};
defaultPersona?: string;
defaultLanguage?: Language;
enableLogging?: boolean;
maxChatRetries?: number;
defaultChatLength?: number;
ragConfig?: LangChainRAGConfig;
}
export interface ProcessOptions {
persona?: string;
outputType?: 'chat' | 'analysis';
language?: Language;
chatLength?: number;
useRAG?: boolean;
}
export interface HealthStatus {
status: 'healthy' | 'unhealthy';
provider: string;
model: string;
personas: number;
chatRetryEnabled: boolean;
maxChatRetries: number;
defaultChatLength: number;
langchain: boolean;
rag?: boolean;
}
export declare class ChatSupporter {
private config;
private provider?;
private ragManager?;
private isInitialized;
constructor(config: ChatSupporterConfig);
private setupPersonas;
initialize(): Promise<void>;
process(input: InputData, options?: ProcessOptions): Promise<OutputData>;
private processChatWithRetry;
private processDefault;
private buildRAGContext;
private createOutputData;
addRAGDocument(filePath: string): Promise<void>;
healthCheck(): Promise<HealthStatus>;
getAvailablePersonas(): import("../personas/base").IPersona[];
private log;
private calculateMaxTokens;
}
export declare class ChatSupporterFactory {
static createInitialized(config?: Partial<ChatSupporterConfig>): Promise<ChatSupporter>;
static createWithRAGInitialized(config?: Partial<ChatSupporterConfig>): Promise<ChatSupporter>;
}
//# sourceMappingURL=ChatSupporter.d.ts.map