This commit is contained in:
2026-01-29 12:26:13 +01:00
parent ba0f116bc2
commit 6dbcadcaee
79 changed files with 2795 additions and 657 deletions

41
src/services/ai/index.ts Normal file
View File

@@ -0,0 +1,41 @@
/**
* AI Service - Main entry point for AI functionality
*/
import { createLogger } from "../../core/logger";
import { ReplicateProvider } from "./replicate";
import type { AiProvider, AiResponse } from "./types";
const logger = createLogger("AI:Service");
export class AiService {
private provider: AiProvider;
constructor(provider?: AiProvider) {
this.provider = provider ?? new ReplicateProvider();
}
async health(): Promise<boolean> {
return this.provider.health();
}
async generateResponse(
prompt: string,
systemPrompt: string
): Promise<AiResponse> {
logger.debug("Generating response", { promptLength: prompt.length });
return this.provider.ask({ prompt, systemPrompt });
}
}
// Singleton instance
let aiService: AiService | null = null;
export function getAiService(): AiService {
if (!aiService) {
aiService = new AiService();
}
return aiService;
}
export type { AiProvider, AiResponse } from "./types";