All files / src/llm index.ts

100% Statements 9/9
100% Branches 4/4
100% Functions 1/1
100% Lines 9/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19  7x 7x 7x     7x 4x   1x   1x   1x   1x      
import { LLMProvider } from './provider';
import { GeminiProvider } from './gemini';
import { AnthropicProvider } from './anthropic';
import { OpenAIProvider } from './openai';
import { SeraphConfig } from '../config';
 
export function createLLMProvider(config: SeraphConfig): LLMProvider {
  switch (config.llm?.provider) {
    case 'gemini':
      return new GeminiProvider(config);
    case 'anthropic':
      return new AnthropicProvider(config);
    case 'openai':
      return new OpenAIProvider(config);
    default:
      return new GeminiProvider(config);
  }
}