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:
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