LangChain Reference home pageLangChain ReferenceLangChain Reference
  • GitHub
  • Main Docs
Deep Agents
LangChain
LangGraph
Integrations
LangSmith
  • Overview
  • MCP Adapters
    • Overview
    • Agents
    • Callbacks
    • Chains
    • Chat models
    • Embeddings
    • Evaluation
    • Globals
    • Hub
    • Memory
    • Output parsers
    • Retrievers
    • Runnables
    • LangSmith
    • Storage
    Standard Tests
    Text Splitters
    ⌘I

    LangChain Assistant

    Ask a question to get started

    Enter to send•Shift+Enter new line

    Menu

    MCP Adapters
    OverviewAgentsCallbacksChainsChat modelsEmbeddingsEvaluationGlobalsHubMemoryOutput parsersRetrieversRunnablesLangSmithStorage
    Standard Tests
    Text Splitters
    Language
    Theme
    Pythonlangchain-classicretrieversself_querybaseSelfQueryRetrieverfrom_llm
    Method●Since v1.0

    from_llm

    Create a SelfQueryRetriever from an LLM and a vector store.

    Copy
    from_llm(
      cls,
      llm: BaseLanguageModel,
      vectorstore: VectorStore,
      document_contents: str,
      metadata_field_info: Sequence[AttributeInfo | dict],
      structured_query_translator: Visitor | None = None,
      chain_kwargs: dict | None = None,
      enable_limit: bool = False,
      use_original_query: bool = False,
      **kwargs: Any = {}
    ) -> SelfQueryRetriever

    Parameters

    NameTypeDescription
    llm*BaseLanguageModel

    The language model to use for generating queries.

    vectorstore*VectorStore

    The vector store to use for retrieving documents.

    document_contents*str

    Description of the page contents of the document to be queried.

    metadata_field_info*Sequence[AttributeInfo | dict]

    Metadata field information for the documents.

    structured_query_translatorVisitor | None
    Default:None

    Optional translator for turning internal query language into VectorStore search params.

    chain_kwargsdict | None
    Default:None

    Additional keyword arguments for the query constructor.

    enable_limitbool
    Default:False

    Whether to enable the limit operator.

    use_original_querybool
    Default:False

    Whether to use the original query instead of the revised query from the LLM.

    **kwargsAny
    Default:{}

    Additional keyword arguments for the SelfQueryRetriever.

    View source on GitHub