JinaRerank#
- class langchain_community.document_compressors.jina_rerank.JinaRerank[source]#
Bases:
BaseDocumentCompressor
Document compressor that uses Jina Rerank API.
Create a new model by parsing and validating input data from keyword arguments.
Raises [ValidationError][pydantic_core.ValidationError] if the input data cannot be validated to form a valid model.
self is explicitly positional-only to allow self as a field name.
- param jina_api_key: str | None = None#
Jina API key. Must be specified directly or via environment variable JINA_API_KEY.
- param model: str = 'jina-reranker-v1-base-en'#
Model to use for reranking.
- param session: Any = None#
Requests session to communicate with API.
- param top_n: int | None = 3#
Number of documents to return.
- param user_agent: str = 'langchain'#
Identifier for the application making the request.
- async acompress_documents(documents: Sequence[Document], query: str, callbacks: list[BaseCallbackHandler] | BaseCallbackManager | None = None) Sequence[Document] #
Async compress retrieved documents given the query context.
- Parameters:
documents (Sequence[Document]) β The retrieved documents.
query (str) β The query context.
callbacks (list[BaseCallbackHandler] | BaseCallbackManager | None) β Optional callbacks to run during compression.
- Returns:
The compressed documents.
- Return type:
Sequence[Document]
- compress_documents(documents: Sequence[Document], query: str, callbacks: list[BaseCallbackHandler] | BaseCallbackManager | None = None) Sequence[Document] [source]#
Compress documents using Jinaβs Rerank API.
- Parameters:
documents (Sequence[Document]) β A sequence of documents to compress.
query (str) β The query to use for compressing the documents.
callbacks (list[BaseCallbackHandler] | BaseCallbackManager | None) β Callbacks to run during the compression process.
- Returns:
A sequence of compressed documents.
- Return type:
Sequence[Document]
- rerank(documents: Sequence[str | Document | dict], query: str, *, model: str | None = None, top_n: int | None = -1, max_chunks_per_doc: int | None = None) List[Dict[str, Any]] [source]#
Returns an ordered list of documents ordered by their relevance to the provided query.
- Parameters:
query (str) β The query to use for reranking.
documents (Sequence[str | Document | dict]) β A sequence of documents to rerank.
model (str | None) β The model to use for re-ranking. Default to self.model.
top_n (int | None) β The number of results to return. If None returns all results. Defaults to self.top_n.
max_chunks_per_doc (int | None) β The maximum number of chunks derived from a document.
- Return type:
List[Dict[str, Any]]
Examples using JinaRerank