You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

LangChain OpenSearchVectorSearch实例创建时连接中止问题求助

LangChain OpenSearchVectorSearch 连接中止问题解决

问题背景

本地OpenSearch客户端通过client.bulk(bulk_data)可正常存储文档与嵌入向量,但使用LangChain的OpenSearchVectorSearch实例调用from_embeddings方法时,出现连接中止错误。

错误信息

error: raise ConnectionError("N/A", str(e), e) opensearchpy.exceptions.ConnectionError: ConnectionError(('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')))
caused by: ProtocolError(('Connection aborted.', RemoteDisconnected('Remote end closed connection without response')))

原代码

index_instance = OpenSearchVectorSearch(
    client=client,
    index_name=index_name,
    opensearch_url="http://localhost:9200",
    embedding_function=OpenAIEmbeddings,
    engine="faiss"
)
print("instance created")
texts = [d.page_content for d in chunks]
metadatas = [d.metadata for d in chunks]
embedder = OpenAIEmbeddings()
embeddings = embedder.embed_documents(texts)
doc_store = index_instance.from_embeddings(embeddings=embeddings, texts=texts, embedding=embedder,
                                           metadatas=metadatas, opensearch_url="http://localhost:9200")

解决步骤

  • 避免重复初始化连接:from_embeddings是类方法,无需先创建index_instance实例,直接通过OpenSearchVectorSearch.from_embeddings调用即可,防止重复传递连接参数引发冲突。
  • 修正embedding参数传递:embedding_function需要传入实例而非类,或者直接在from_embeddings中指定embedding参数即可,无需在实例化时重复设置。
  • 统一连接参数:如果已经传入预先初始化好的client,就不要再传递opensearch_url,避免客户端重复创建连接导致异常。
  • 排查engine配置:若指定engine="faiss",需确保OpenSearch已正确安装faiss插件;也可以先移除engine参数,用默认引擎测试是否能正常连接。

修正后的代码示例

texts = [d.page_content for d in chunks]
metadatas = [d.metadata for d in chunks]
embedder = OpenAIEmbeddings()
embeddings = embedder.embed_documents(texts)

# 直接调用类方法from_embeddings,传入已有的client和必要参数
doc_store = OpenSearchVectorSearch.from_embeddings(
    embeddings=embeddings,
    texts=texts,
    embedding=embedder,
    metadatas=metadatas,
    client=client,
    index_name=index_name,
    # 若确认faiss插件已安装,可添加engine="faiss",否则先注释
    # engine="faiss"
)

内容的提问来源于stack exchange,提问作者Faizan Ahmad

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 07:02:28