数据集:
Cohere/wikipedia-22-12-hi-embeddings
我们使用 cohere.ai 的多语言22-12嵌入模型对 Wikipedia (hi) 进行编码。
要了解此数据集的创建和预处理过程,请查看 Cohere/wikipedia-22-12 。
我们使用我们的多语言22-12嵌入模型对标题+正文进行嵌入计算,这是一种适用于100种语言的语义搜索的最先进模型。如果您想了解更多关于此模型的信息,请查看 cohere.ai multilingual embedding model 。
我们提供了许多不同语言的维基百科嵌入: ar , de , en , es , fr , hi , it , ja , ko , simple english , zh ,
您可以在 Cohere/wikipedia-22-12 中找到没有嵌入的维基百科数据集。
您可以像这样加载数据集:
from datasets import load_dataset docs = load_dataset(f"Cohere/wikipedia-22-12-hi-embeddings", split="train")
或者您也可以在下载之前直接流式传输它:
from datasets import load_dataset
docs = load_dataset(f"Cohere/wikipedia-22-12-hi-embeddings", split="train", streaming=True)
for doc in docs:
docid = doc['id']
title = doc['title']
text = doc['text']
emb = doc['emb']
完整的搜索示例:
#Run: pip install cohere datasets
from datasets import load_dataset
import torch
import cohere
co = cohere.Client(f"<<COHERE_API_KEY>>") # Add your cohere API key from www.cohere.com
#Load at max 1000 documents + embeddings
max_docs = 1000
docs_stream = load_dataset(f"Cohere/wikipedia-22-12-hi-embeddings", split="train", streaming=True)
docs = []
doc_embeddings = []
for doc in docs_stream:
docs.append(doc)
doc_embeddings.append(doc['emb'])
if len(docs) >= max_docs:
break
doc_embeddings = torch.tensor(doc_embeddings)
query = 'Who founded Youtube'
response = co.embed(texts=[query], model='multilingual-22-12')
query_embedding = response.embeddings
query_embedding = torch.tensor(query_embedding)
# Compute dot score between query embedding and document embeddings
dot_scores = torch.mm(query_embedding, doc_embeddings.transpose(0, 1))
top_k = torch.topk(dot_scores, k=3)
# Print results
print("Query:", query)
for doc_id in top_k.indices[0].tolist():
print(docs[doc_id]['title'])
print(docs[doc_id]['text'], "\n")
您可以在MIRACL数据集(语义搜索评估数据集)中找到性能信息: miracl-en-queries-22-12#performance