贴代码,截图里看不见你的完整源代码。代码里是调用了FAISS,你截图里用的chroma。所以感觉不一致。
def llama_ana():
'''llama分析'''
# 加载本地数据
loader = GenericLoader.from_filesystem('/Users/app/PycharmProjects/sk/bModels', glob="**/*",
suffixes=[".py"],
parser=LanguageParser(language=Language.PYTHON, parser_threshold=500))
docs = loader.load()
print(len(docs))
# 开始分组
python_splitter = RecursiveCharacterTextSplitter.from_language(
language=Language.PYTHON,
chunk_size=2000, chunk_overlap=200
)
all_splits = python_splitter.split_documents(docs)
print(all_splits)
print(len(all_splits))
# 存储向量
tlocal_model = "/Users/app/models/llama.cpp/models/llama-2-7b-chat.Q4_0.gguf"
llm = ChatLlamaCpp(
temperature=0.5,
model_path=tlocal_model,
n_ctx=100,
max_tokens=320,
n_threads=multiprocessing.cpu_count() - 1,
repeat_penalty=1.5,
top_p=0.5,
verbose=True,
)
print("llm success")
l = LlamaCppEmbeddings(model_path=tlocal_model)
print("LlamaCppEmbeddings success")
vectorstore = Chroma.from_documents(documents=all_splits, embedding=l)
# vectorstore = FAISS.from_documents(documents=all_splits, embedding=l)
retriever = RetrievalQA.from_chain_type(llm, retriever=vectorstore, verbose=True)
print("开始找错误")
retrieved_docs = retriever("请找出代码的异常错误?")
print(retrieved_docs)
# retriever = vectorstore.as_retriever(search_type="similarity")
# retrieved_docs = retriever.invoke("请找出代码的异常错误?")
# print(retrieved_docs)
chroma 和 faiss 报的都是同样的错误
你的 llama-cpp-python 是什么版本的呢?
0.2.82
降个版本试试,改成 0.2.47
你是不是把普通的模型和嵌入模型混到一起了,嵌入模型是独立的模型,你得用正确的嵌入模型。
什么样属于 嵌入的模型呢

