"""
Embedding system for visual similarity matching.

This module provides an abstraction layer for different embedding models
(CLIP, Pix2Struct) used for workflow matching and visual analysis.
"""

from .base import EmbedderBase
from .clip_embedder import CLIPEmbedder
from .faiss_index import FAISSIndex
from .embedding_manager import EmbeddingManager
from .fine_tuner import LightweightFineTuner

# Pix2Struct is optional (requires transformers>=4.35.0)
try:
    from .pix2struct_embedder import Pix2StructEmbedder
    __all__ = ['EmbedderBase', 'CLIPEmbedder', 'Pix2StructEmbedder', 'FAISSIndex', 'EmbeddingManager', 'LightweightFineTuner']
except ImportError:
    __all__ = ['EmbedderBase', 'CLIPEmbedder', 'FAISSIndex', 'EmbeddingManager', 'LightweightFineTuner']
