encode(texts, ...) | abstract method | Must be implemented by every subclass; signatures vary slightly per class |
embedding_dim | abstract property | Must be implemented by every subclass |
encode_with_cache(texts, **kwargs) | method | Generic MD5-keyed cache wrapper around encode() |
similarity(text1, text2, metric) | method | 'cosine', 'dot', or 'euclidean' |
batch_similarity(query, texts, top_k) | method | Dot-product similarity of a query against many texts |
validate_connection(test_text, detailed) | method | Sanity-checks that encode() works; overridden by OllamaEmbedder |
get_model_info() | method | Overridden by every subclass with backend-specific fields |
get_stats() / reset_stats() | methods | Encoding count/time/cache-hit bookkeeping |
clear_cache() | method | Overridden by most subclasses for backend-specific cache structures |
cleanup() | method | Clears cache, frees GPU memory if torch + CUDA present |
timing(operation) | context manager | Logs elapsed wall time for a with block |
aencode, aencode_with_cache, abatch_similarity | async methods | Thread-pool wrappers via asyncio.to_thread |
__enter__/__exit__, __aenter__/__aexit__ | context managers | Sync and async; every subclass overrides the sync pair to log a summary |
__repr__ | dunder | Overridden by every subclass |