skailan-ai
Version:
Servicio de IA y procesamiento de lenguaje natural para Skailan
74 lines • 3.58 kB
TypeScript
import { LLMConfig } from '../domain/entities/LLMConfig';
import { ILLMConfigRepository } from '../domain/repositories/ILLMConfigRepository';
export interface AIServiceOptions {
defaultLLMConfigName?: string;
enableCaching?: boolean;
enableLogging?: boolean;
}
export interface SentimentAnalysisRequest {
text: string;
llmConfigName?: string;
}
export interface IntentClassificationRequest {
text: string;
llmConfigName?: string;
intents?: any[];
}
export interface ContentGenerationRequest {
type: 'email' | 'quote' | 'report' | 'summary' | 'bot-response' | 'marketing' | 'documentation';
data: any;
llmConfigName?: string;
options?: any;
}
export declare class AIServiceSDK {
private llmConfigRepository;
private organizationId;
private options;
constructor(llmConfigRepository: ILLMConfigRepository, organizationId: string, options?: AIServiceOptions);
private getLLMConfig;
analyzeSentiment(request: SentimentAnalysisRequest): Promise<import("../domain/services/SentimentAnalysisService").SentimentAnalysisResult>;
analyzeConversationSentiment(messages: Array<{
role: string;
content: string;
}>, llmConfigName?: string): Promise<import("../domain/services/SentimentAnalysisService").SentimentAnalysisResult>;
classifyIntent(request: IntentClassificationRequest): Promise<import("../domain/services/IntentClassificationService").IntentClassificationResult>;
classifyConversationIntent(messages: Array<{
role: string;
content: string;
}>, llmConfigName?: string, intents?: any[]): Promise<import("../domain/services/IntentClassificationService").IntentClassificationResult>;
generateContent(request: ContentGenerationRequest): Promise<string>;
processText(text: string, promptName: string, llmConfigName?: string, parameters?: any): Promise<string>;
createConversationContext(conversationId: string, initialMessage?: string, llmConfigName?: string): Promise<import("../domain/services/ConversationContextService").ConversationContext>;
addMessageToContext(conversationId: string, role: 'user' | 'assistant' | 'system', content: string, llmConfigName?: string): Promise<import("../domain/services/ConversationContextService").ConversationContext>;
getConversationContext(conversationId: string, llmConfigName?: string): Promise<import("../domain/services/ConversationContextService").ConversationContext | null>;
generateConversationSummary(conversationId: string, llmConfigName?: string): Promise<string>;
getAvailableLLMConfigs(): Promise<LLMConfig[]>;
validateLLMConfig(configName: string): Promise<boolean | null>;
generateBotResponseForConversation(conversationId: string, userMessage: string, llmConfigName?: string): Promise<{
response: string;
intent: string;
confidence: number;
entities: {
type: string;
value: string;
confidence: number;
}[] | undefined;
}>;
analyzeConversationForCRM(conversationId: string, llmConfigName?: string): Promise<{
conversationId: string;
summary: string;
sentiment: "positive" | "negative" | "neutral";
sentimentConfidence: number;
intent: string;
intentConfidence: number;
entities: {
type: string;
value: string;
confidence: number;
}[] | undefined;
messageCount: number;
duration: number;
lastActivity: Date;
}>;
}
//# sourceMappingURL=AIServiceSDK.d.ts.map