haive.core.engine.retriever.mixins

Retriever mixins for the Haive framework.

Classes

RetrieverMixin

Mixin that provides retriever functionality with field validators and class methods.

Module Contents

class haive.core.engine.retriever.mixins.RetrieverMixin[source]

Mixin that provides retriever functionality with field validators and class methods.

This mixin adds retriever capabilities to any class that inherits from it. It provides: - Field validator to automatically convert VectorStoreConfig to VectorStoreRetrieverConfig - Class methods to create instances with retrievers from various sources

classmethod convert_vectorstore_to_retriever(v)[source]

Convert VectorStoreConfig to VectorStoreRetrieverConfig if needed.

Return type:

Any

classmethod from_documents(documents, embedding_model=None, vector_store_provider='FAISS', retriever_kwargs=None, **kwargs)[source]

Create instance with a retriever from documents.

Parameters:
  • documents (list[langchain_core.documents.Document]) – Documents to create vector store from

  • embedding_model (haive.core.models.embeddings.base.BaseEmbeddingConfig | None) – Optional embedding model for the vector store

  • vector_store_provider (str) – Vector store provider to use

  • retriever_kwargs (dict[str, Any] | None) – Additional kwargs for retriever creation

  • **kwargs – Additional arguments for the class instance

Returns:

Instance with retriever created from documents

classmethod from_retriever(retriever_config, **kwargs)[source]

Create instance with a retriever configuration.

Parameters:
Returns:

Instance with the specified retriever

classmethod from_vectorstore(vector_store_config, retriever_kwargs=None, **kwargs)[source]

Create instance with a retriever from a vector store configuration.

Parameters:
Returns:

Instance with retriever created from vector store