Module factory

Source
Expand description

Factory for creating AI client instances AI client factory for creating provider instances based on configuration.

This module provides a factory pattern implementation for creating AI service provider instances. It supports multiple AI providers and handles the creation and configuration of appropriate client instances based on the provided configuration.

§Supported Providers

  • OpenAI: GPT-3.5, GPT-4, and other OpenAI models
  • Anthropic: Claude models (planned)
  • Google: Gemini models (planned)
  • Local Models: Local AI models via Ollama (planned)

§Examples

use subx_cli::services::ai::AIClientFactory;
use subx_cli::config::AIConfig;

// Create OpenAI client from configuration
let config = AIConfig {
    provider: "openai".to_string(),
    api_key: Some("sk-...".to_string()),
    model: "gpt-4.1".to_string(),
    // ... other fields
};

let client = AIClientFactory::create_client(&config)?;
let result = client.analyze_content(request).await?;

Structs§

AIClientFactory
AI client factory for creating provider instances.