{"record":{"id":"c619137161bf54a6","repo":"run-llama/llama_index","slug":"llama-index-embeddings-langchain-package-not-fou","errorCode":null,"errorMessage":"`llama-index-embeddings-langchain` package not found, please run `pip install llama-index-embeddings-langchain`","messagePattern":"`llama-index-embeddings-langchain` package not found, please run `pip install llama-index-embeddings-langchain`","errorType":"exception","errorClass":"ImportError","httpStatus":null,"severity":"critical","filePath":"llama-index-core/llama_index/core/embeddings/utils.py","lineNumber":126,"sourceCode":"\n            embed_model = HuggingFaceEmbedding(\n                model_name=model_name, cache_folder=cache_folder\n            )\n        except ImportError:\n            raise ImportError(\n                \"`llama-index-embeddings-huggingface` package not found, \"\n                \"please run `pip install llama-index-embeddings-huggingface`\"\n            )\n\n    if LCEmbeddings is not None and isinstance(embed_model, LCEmbeddings):\n        try:\n            from llama_index.embeddings.langchain import (\n                LangchainEmbedding,\n            )  # pants: no-infer-dep\n\n            embed_model = LangchainEmbedding(embed_model)\n        except ImportError as e:\n            raise ImportError(\n                \"`llama-index-embeddings-langchain` package not found, \"\n                \"please run `pip install llama-index-embeddings-langchain`\"\n            )\n\n    if embed_model is None:\n        print(\"Embeddings have been explicitly disabled. Using MockEmbedding.\")\n        embed_model = MockEmbedding(embed_dim=1)\n\n    assert isinstance(embed_model, BaseEmbedding)\n\n    embed_model.callback_manager = callback_manager or Settings.callback_manager\n\n    return embed_model\n","sourceCodeStart":108,"sourceCodeEnd":140,"githubUrl":"https://github.com/run-llama/llama_index/blob/afd0fef371831f9bda13e5af7167cf4e981278ab/llama-index-core/llama_index/core/embeddings/utils.py#L108-L140","documentation":"If the object passed as embed_model is an instance of LangChain's Embeddings class, resolve_embed_model wraps it in LangchainEmbedding — a wrapper living in the optional llama-index-embeddings-langchain integration. Without that package installed, the ImportError is raised with the install command.","triggerScenarios":"Passing a LangChain embedding (e.g. OpenAIEmbeddings from langchain_openai, HuggingFaceEmbeddings from langchain_community) into Settings.embed_model, VectorStoreIndex, or any resolve_embed_model() caller without llama-index-embeddings-langchain installed.","commonSituations":"Mixed LangChain + LlamaIndex stacks where users assume LangChain objects work natively; minimal installs of llama-index-core; CI environments missing the wrapper package.","solutions":["pip install llama-index-embeddings-langchain","Or use the native equivalent (OpenAIEmbedding, HuggingFaceEmbedding) instead of the LangChain object","Or wrap manually only after installing the integration"],"exampleFix":"// before\nfrom langchain_openai import OpenAIEmbeddings\nSettings.embed_model = OpenAIEmbeddings()  # ImportError\n\n// after\n# pip install llama-index-embeddings-langchain\nfrom langchain_openai import OpenAIEmbeddings\nSettings.embed_model = OpenAIEmbeddings()  # auto-wrapped in LangchainEmbedding\n# or native: from llama_index.embeddings.openai import OpenAIEmbedding","handlingStrategy":"type-guard","validationCode":"try:\n    from llama_index.core.bridge.langchain import Embeddings as LCEmbeddings\nexcept ImportError:\n    LCEmbeddings = None\nif LCEmbeddings and isinstance(embed_model, LCEmbeddings):\n    try:\n        import llama_index.embeddings.langchain  # noqa: F401\n    except ImportError:\n        raise RuntimeError(\"pip install llama-index-embeddings-langchain\")","typeGuard":"from llama_index.core.embeddings import BaseEmbedding\n\ndef is_native_embedding(obj) -> bool:\n    return isinstance(obj, BaseEmbedding)","tryCatchPattern":"try:\n    Settings.embed_model = lc_embedding\nexcept ImportError as e:\n    if \"llama-index-embeddings-langchain\" in str(e):\n        raise RuntimeError(\"pip install llama-index-embeddings-langchain or pass a native BaseEmbedding\") from e\n    raise","preventionTips":["Prefer native BaseEmbedding implementations unless you must share LangChain objects","If mixing frameworks, install llama-index-embeddings-langchain up front","Type-annotate embed_model parameters as BaseEmbedding to catch LangChain objects at type-check time"],"tags":["embeddings","langchain","dependencies","installation","interop"],"backgroundTag":null,"analyzedSha":"afd0fef371831f9bda13e5af7167cf4e981278ab","analyzedAt":"2026-08-15T05:42:58.429Z","schemaVersion":2},"datasetVersion":"2026-08-15T17:31:12.345Z"}