"""
Embedding services package.
[AC-AISVC-29] Provides pluggable embedding providers.
"""

from app.services.embedding.base import (
    EmbeddingConfig,
    EmbeddingException,
    EmbeddingProvider,
    EmbeddingResult,
)
from app.services.embedding.factory import (
    EmbeddingConfigManager,
    EmbeddingProviderFactory,
    get_embedding_config_manager,
    get_embedding_provider,
)
from app.services.embedding.nomic_provider import (
    EmbeddingTask,
    NomicEmbeddingProvider,
    NomicEmbeddingResult,
)
from app.services.embedding.ollama_provider import OllamaEmbeddingProvider
from app.services.embedding.openai_provider import OpenAIEmbeddingProvider

__all__ = [
    "EmbeddingConfig",
    "EmbeddingException",
    "EmbeddingProvider",
    "EmbeddingResult",
    "EmbeddingConfigManager",
    "EmbeddingProviderFactory",
    "get_embedding_config_manager",
    "get_embedding_provider",
    "OllamaEmbeddingProvider",
    "OpenAIEmbeddingProvider",
    "NomicEmbeddingProvider",
    "NomicEmbeddingResult",
    "EmbeddingTask",
]
