Home / Function/ asearch() — langchain Function Reference

asearch() — langchain Function Reference

Architecture documentation for the asearch() function in base.py from the langchain codebase.

Entity Profile

Dependency Diagram

graph TD
  b6e9997b_7438_0977_d32b_03004dbd76a9["asearch()"]
  6c336ac6_f55c_1ad7_6db3_73dbd71fb625["VectorStore"]
  b6e9997b_7438_0977_d32b_03004dbd76a9 -->|defined in| 6c336ac6_f55c_1ad7_6db3_73dbd71fb625
  41bbebb1_b0af_d870_c2bd_efa10cfe64d0["asimilarity_search()"]
  b6e9997b_7438_0977_d32b_03004dbd76a9 -->|calls| 41bbebb1_b0af_d870_c2bd_efa10cfe64d0
  9136aa9f_d720_ee5b_3f80_83c18d3e014d["asimilarity_search_with_relevance_scores()"]
  b6e9997b_7438_0977_d32b_03004dbd76a9 -->|calls| 9136aa9f_d720_ee5b_3f80_83c18d3e014d
  efca5a17_7174_3316_46ec_3b51abde1db2["amax_marginal_relevance_search()"]
  b6e9997b_7438_0977_d32b_03004dbd76a9 -->|calls| efca5a17_7174_3316_46ec_3b51abde1db2
  style b6e9997b_7438_0977_d32b_03004dbd76a9 fill:#6366f1,stroke:#818cf8,color:#fff

Relationship Graph

Source Code

libs/core/langchain_core/vectorstores/base.py lines 326–358

    async def asearch(
        self, query: str, search_type: str, **kwargs: Any
    ) -> list[Document]:
        """Async return docs most similar to query using a specified search type.

        Args:
            query: Input text.
            search_type: Type of search to perform.

                Can be `'similarity'`, `'mmr'`, or `'similarity_score_threshold'`.
            **kwargs: Arguments to pass to the search method.

        Returns:
            List of `Document` objects most similar to the query.

        Raises:
            ValueError: If `search_type` is not one of `'similarity'`,
                `'mmr'`, or `'similarity_score_threshold'`.
        """
        if search_type == "similarity":
            return await self.asimilarity_search(query, **kwargs)
        if search_type == "similarity_score_threshold":
            docs_and_similarities = await self.asimilarity_search_with_relevance_scores(
                query, **kwargs
            )
            return [doc for doc, _ in docs_and_similarities]
        if search_type == "mmr":
            return await self.amax_marginal_relevance_search(query, **kwargs)
        msg = (
            f"search_type of {search_type} not allowed. Expected "
            "search_type to be 'similarity', 'similarity_score_threshold' or 'mmr'."
        )
        raise ValueError(msg)

Subdomains

Frequently Asked Questions

What does asearch() do?
asearch() is a function in the langchain codebase, defined in libs/core/langchain_core/vectorstores/base.py.
Where is asearch() defined?
asearch() is defined in libs/core/langchain_core/vectorstores/base.py at line 326.
What does asearch() call?
asearch() calls 3 function(s): amax_marginal_relevance_search, asimilarity_search, asimilarity_search_with_relevance_scores.

Analyze Your Own Codebase

Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.

Try Supermodel Free