chatchat-space / Langchain-Chatchat

Langchain-Chatchat(原Langchain-ChatGLM, Qwen 与 Llama 等)基于 Langchain 与 ChatGLM 等语言模型的 RAG 与 Agent 应用 | Langchain-Chatchat (formerly langchain-ChatGLM), local knowledge based LLM (like ChatGLM, Qwen and Llama) RAG and Agent app with langchain
Apache License 2.0
29.66k stars 5.2k forks source link

初始化知识库失败 #4411

Open limengjieb opened 4 days ago

limengjieb commented 4 days ago

1:Xinference已经启动成功,并且下载了2个模型,一个是 qwen1.5-chat, bce-embedding-base_v1 2:修改了 \Lib\site-packages\chatchat\configs 文件夹下 model_providers.yaml 文件的配置,修改之后的配置如下:

xinference: model_credential:

3:启动之前修改了配置,执行命令如下 chatchat-config model --default_llm_model qwen1.5-chat chatchat-config model --default_embedding_model bce-embedding-base_v1

4:执行 chatchat-kb -r 失败,失败信息如下:

(chat) C:\Users\dev\Langchain3>chatchat-kb -r

recreating all vector stores C:\Users\dev\Langchain3\chat\Lib\site-packages\langchain_api\module_import.py:87: LangChainDeprecationWarning: Importing GuardrailsOutputParser from langchain.output_parsers is deprecated. Please replace the import with the following: from langchain_community.output_parsers.rail_parser import GuardrailsOutputParser warnings.warn( 2024-07-04 15:00:14,882 - utils.py[line:260] - ERROR: failed to create Embeddings for model: bce-embedding-base_v1. Traceback (most recent call last): File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\utils.py", line 258, in get_Embeddings return LocalAIEmbeddings(params) ^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\pydantic\v1\main.py", line 341, in init raise validation_error pydantic.v1.error_wrappers.ValidationError: 1 validation error for LocalAIEmbeddings root Did not find openai_api_key, please add an environment variable OPENAI_API_KEY which contains it, or pass openai_api_key as a named parameter. (type=value_error) 2024-07-04 15:00:14,883 - faiss_cache.py[line:140] - ERROR: 'NoneType' object has no attribute 'embed_documents' Traceback (most recent call last): File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_cache\faiss_cache.py", line 126, in load_vector_store vector_store = self.new_vector_store( ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_cache\faiss_cache.py", line 63, in new_vector_store vector_store = FAISS.from_documents([doc], embeddings, normalize_L2=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\langchain_core\vectorstores.py", line 550, in from_documents return cls.from_texts(texts, embedding, metadatas=metadatas, kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\langchain_community\vectorstores\faiss.py", line 930, in from_texts embeddings = embedding.embed_documents(texts) ^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'embed_documents' 2024-07-04 15:00:14,884 - init_database.py[line:150] - ERROR: 向量库 samples 加载失败。 Traceback (most recent call last): File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_cache\faiss_cache.py", line 126, in load_vector_store vector_store = self.new_vector_store( ^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_cache\faiss_cache.py", line 63, in new_vector_store vector_store = FAISS.from_documents([doc], embeddings, normalize_L2=True) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\langchain_core\vectorstores.py", line 550, in from_documents return cls.from_texts(texts, embedding, metadatas=metadatas, **kwargs) ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\langchain_community\vectorstores\faiss.py", line 930, in from_texts embeddings = embedding.embed_documents(texts) ^^^^^^^^^^^^^^^^^^^^^^^^^ AttributeError: 'NoneType' object has no attribute 'embed_documents'

During handling of the above exception, another exception occurred:

Traceback (most recent call last): File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\init_database.py", line 129, in main folder2db( File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\migrate.py", line 152, in folder2db kb.create_kb() File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_service\base.py", line 102, in create_kb self.do_create_kb() File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_service\faiss_kb_service.py", line 57, in do_create_kb self.load_vector_store() File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_service\faiss_kb_service.py", line 32, in load_vector_store return kb_faiss_pool.load_vector_store( ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Users\dev\Langchain3\chat\Lib\site-packages\chatchat\server\knowledge_base\kb_cache\faiss_cache.py", line 141, in load_vector_store raise RuntimeError(f"向量库 {kb_name} 加载失败。") RuntimeError: 向量库 samples 加载失败。 2024-07-04 15:00:14,885 - init_database.py[line:151] - WARNING: Caught KeyboardInterrupt! Setting stop event...

5:chatchat -a 能启动成功,webUI 页面能正常访问,对话正常,知识库创建失败,上传文件成功,文件内容识别失败,知识库对话失败

zx1159652666 commented 4 days ago

我也遇到了,怎么解决呀

limengjieb commented 4 days ago

我也遇到了,怎么解决呀

我还没有找到解决办法

joveth1 commented 3 days ago

感觉像是向量库模型没加载成功,直接修改model_providers.yaml 这个是没用的,要修改 _model_config.py 文件让它的MODEL_PLATFORMS 里面的embed_models 包含你的bce-embedding-base_v1向量库模型,我看他源码里面就支持 bge-large-zh-v1.5这个模型,你的这个模型不在它列表里面,他是没法加载。

或者你通过他文档里面描述的一样,去设置这个向量库:

image

把里面的 bge-large-zh-v1.5 换成你的,default_embedding_model 只是修改 self.DEFAULT_EMBEDDING_MODEL 这个变量吧,当然我也不确定对不对。