UNPKG

sfcoe-ailabs

Version:

AI-powered code review tool with static analysis integration for comprehensive code quality assessment.

25 lines (24 loc) 1.09 kB
import { OpenAiClient, AzureOpenAiClient, AIProviderType, AnthropicAiClient, } from './index.js'; export default class AIProviderFactory { /** * Gets an AI provider instance * * @param type - The type of AI provider to create * @param token - The API token for the provider * @param model - The model name to use * @returns An instance of the specified AI provider * @throws Error when the provider type is unsupported */ static getInstance(type, token, model, apiEndpoint, apiVersion) { switch (type) { case AIProviderType.OpenAI: return new OpenAiClient(token, model, apiEndpoint ?? '', apiVersion ?? ''); case AIProviderType.Anthropic: return new AnthropicAiClient(token, model, apiEndpoint ?? '', apiVersion ?? ''); case AIProviderType.AzureOpenAI: return new AzureOpenAiClient(token, model, apiEndpoint ?? '', apiVersion ?? ''); default: throw new Error(`Unsupported AI provider type: ${type}`); } } }