我正在关注 git 存储库并学习如何使用 pinecone 和 llama-2 制作聊天机器人,但在使用 Pinecone 模块时遇到属性错误,即使我已经复制了存储库中给出的相同代码:
这些是依赖项:
from langchain import PromptTemplate
from langchain.chains import RetrievalQA
from langchain.embeddings import HuggingFaceEmbeddings
from langchain.vectorstores import Pinecone
import pinecone
from langchain.document_loaders import PyPDFLoader, DirectoryLoader
from langchain.text_splitter import RecursiveCharacterTextSplitter
from langchain.prompts import PromptTemplate
from langchain.llms import CTransformers
from tqdm import tqdm
import os
from pinecone import Pinecone, ServerlessSpec
发生错误的代码:
docsearch=Pinecone.from_existing_index(index_name, embeddings)
query = "What are Allergies"
docs=docsearch.similarity_search(query, k=3)
print("Result", docs)
出现以下错误:
AttributeError Traceback(最近一次调用最后一次)
在 () ----> 1 docsearch=Pinecone.from_existing_index(index_name, embeddings) 2 3 查询=“什么是过敏” 4 5 文档=docsearch.similarity_search(query, k=3) |
AttributeError:类型对象“Pinecone”没有属性“from_existing_index”
另一个网站上有一个帖子说
langchain_pinecone
lib 和 OG pinecone
lib 不知何故混淆了,但我不知道如何解决它。如果我能找到解决方案,我将不胜感激。
刚刚检查了文档,代码如下所示来执行查询(您可以按照自己的方式创建嵌入,也可以适应 Pinecone 格式)
from pinecone.grpc import PineconeGRPC as Pinecone
# Initialize a Pinecone client with your API key
pc = Pinecone(api_key="YOUR_API_KEY")
query = "Tell me about the tech company known as Apple."
# Convert the query into a numerical vector that Pinecone can search with
query_embedding = pc.inference.embed(
model="multilingual-e5-large",
inputs=[query],
parameters={
"input_type": "query"
}
)
# Search the index for the three most similar vectors
results = index.query(
namespace="example-namespace",
vector=query_embedding[0].values,
top_k=3,
include_values=False,
include_metadata=True
)
print(results)
下面的文档非常清楚: