使用公共的Pinecone数据集
本文档介绍如何使用现有的Pinecone数据集。
要了解创建和列出数据集的方法,请参阅创建数据集。
数据集包含向量和元数据
Pinecone数据集包含密集和稀疏向量值和元数据。Pinecone的Python客户端支持从数据集中更新向量。您还可以使用数据集迭代向量以自动化查询。
列出公共数据集
要列出可用的Pinecone公共数据集,请使用list_datasets()
方法。
示例
以下示例检索包含有关公共松果数据集的信息的对象。
Python
from pinecone_datasets import list_datasets
list_datasets()
上面的示例返回如下对象:
Shell
['ANN_DEEP1B_d96_angular', 'ANN_Fashion-MNIST_d784_euclidean', 'ANN_GIST_d960_euclidean', 'ANN_GloVe_d100_angular', 'ANN_GloVe_d200_angular', 'ANN_GloVe_d25_angular', 'ANN_GloVe_d50_angular', 'ANN_LastFM_d64_angular', 'ANN_MNIST_d784_euclidean', 'ANN_NYTimes_d256_angular', 'ANN_SIFT1M_d128_euclidean', 'quora_all-MiniLM-L6-bm25', 'quora_all-MiniLM-L6-v2_Splade']
加载数据集
要将数据集加载到内存中,请使用load_dataset
方法。您可以使用此方法加载Pinecone公共数据集或自己的数据集。
示例
以下示例加载了quora_al-MiniLM-L6-bm25
Pinecone公共数据集。
Python
from pinecone_datasets import list_datasets, load_dataset
list_datasets()
# ["quora_all-MiniLM-L6-bm25", ... ]
dataset = load_dataset("quora_all-MiniLM-L6-bm25")
dataset.head()
上面的示例打印以下输出:
Shell
┌─────┬───────────────────────────┬─────────────────────────────────────┬───────────────────┬──────┐
│ id ┆ values ┆ sparse_values ┆ metadata ┆ blob │
│ ┆ ┆ ┆ ┆ │
│ str ┆ list[f32] ┆ struct[2] ┆ struct[3] ┆ │
╞═════╪═══════════════════════════╪═════════════════════════════════════╪═══════════════════╪══════╡
│ 0 ┆ [0.118014, -0.069717, ... ┆ {[470065541, 52922727, ... 22364... ┆ {2017,12,"other"} ┆ .... │
│ ┆ 0.0060... ┆ ┆ ┆ │
└─────┴───────────────────────────┴─────────────────────────────────────┴───────────────────┴──────┘
迭代数据集
您可以使用iter_documents
方法迭代数据集中的向量数据。您可以使用此方法来更新向量、自动化基准测试或其他任务。
示例
您可以使用iter_documents
方法迭代数据集中的向量数据。您可以使用此方法来更新向量、自动化基准测试或其他任务。
示例
以下示例加载名为quora_all-MiniLM-L6-bm25
的数据集,然后按批次迭代数据集中的文档(每批100个文档)并将向量数据upsert到名为my-index
的Pinecone索引中。
Python
import pinecone
from pinecone_datasets import list_datasets, load_dataset
dataset = load_dataset("quora_all-MiniLM-L6-bm25")
pinecone.init(api_key="API_KEY", environment="us-west1-gcp")
pinecone.create_index(name="my-index", dimension=384, pod_type='s1')
index = pinecone.Index("my-index")
分批迭代文档并插入到索引中。
Python
for batch in dataset.iter_documents(batch_size=100):
index.upsert(vectors=batch)
以下示例将数据集插入为数据帧。
Python
import pinecone
from pinecone_datasets import list_datasets, load_dataset
dataset = load_dataset("quora_all-MiniLM-L6-bm25")
pinecone.init(api_key="API_KEY", environment="us-west1-gcp")
pinecone.create_index(name="my-index", dimension=384, pod_type='s1')
index = pinecone.Index("my-index")
将数据集插入为数据帧。
Python
index.upsert_from_dataframe(dataset.drop(columns=["blob"]))
接下来怎么做
- 了解[如何使用Pinecone Python客户端中的数据集](https://pinecone-io.github.io/pinecone-datasets/pinecone_datasets) 更新于 23天前