Nebius 嵌入¶
本笔记本演示了如何将 Nebius AI Studio 嵌入与 LlamaIndex 结合使用。Nebius AI Studio 实现了所有最先进的嵌入模型,可供商业使用。
首先,让我们安装 LlamaIndex 和 Nebius AI Studio 的依赖项。
输入 [ ]
已复制!
%pip install llama-index-embeddings-nebius llama-index
%pip install llama-index-embeddings-nebius llama-index
从下面的系统变量上传您的 Nebius AI Studio 密钥,或者直接插入。您可以通过在 Nebius AI Studio 免费注册并在 API 密钥部分颁发密钥来获取。
输入 [ ]
已复制!
import os
NEBIUS_API_KEY = os.getenv("NEBIUS_API_KEY") # NEBIUS_API_KEY = ""
import os NEBIUS_API_KEY = os.getenv("NEBIUS_API_KEY") # NEBIUS_API_KEY = ""
现在让我们使用 Nebius AI Studio 获取嵌入
输入 [ ]
已复制!
from llama_index.embeddings.nebius import NebiusEmbedding
embed_model = NebiusEmbedding(api_key=NEBIUS_API_KEY)
from llama_index.embeddings.nebius import NebiusEmbedding embed_model = NebiusEmbedding(api_key=NEBIUS_API_KEY)
基本用法¶
输入 [ ]
已复制!
text = "Everyone loves justice at another person's expense"
embeddings = embed_model.get_text_embedding(text)
assert len(embeddings) == 4096
print(len(embeddings), embeddings[:5], sep="\n")
text = "Everyone loves justice at another person's expense" embeddings = embed_model.get_text_embedding(text) assert len(embeddings) == 4096 print(len(embeddings), embeddings[:5], sep="\n")
4096 [-0.0024051666259765625, 0.0083770751953125, -0.005413055419921875, 0.007396697998046875, -0.022247314453125]
异步用法¶
输入 [ ]
已复制!
text = "Everyone loves justice at another person's expense"
embeddings = await embed_model.aget_text_embedding(text)
assert len(embeddings) == 4096
print(len(embeddings), embeddings[:5], sep="\n")
text = "Everyone loves justice at another person's expense" embeddings = await embed_model.aget_text_embedding(text) assert len(embeddings) == 4096 print(len(embeddings), embeddings[:5], sep="\n")
4096 [-0.0024051666259765625, 0.0083770751953125, -0.005413055419921875, 0.007396697998046875, -0.022247314453125]
批量用法¶
输入 [ ]
已复制!
texts = [
"As the hours pass",
"I will let you know",
"That I need to ask",
"Before I'm alone",
]
embeddings = embed_model.get_text_embedding_batch(texts)
assert len(embeddings) == 4
assert len(embeddings[0]) == 4096
print(*[x[:3] for x in embeddings], sep="\n")
texts = [ "As the hours pass", "I will let you know", "That I need to ask", "Before I'm alone", ] embeddings = embed_model.get_text_embedding_batch(texts) assert len(embeddings) == 4 assert len(embeddings[0]) == 4096 print(*[x[:3] for x in embeddings], sep="\n")
[-0.0003848075866699219, 0.0004799365997314453, 0.011199951171875] [-0.0037078857421875, 0.0114288330078125, 0.00878143310546875] [0.005924224853515625, 0.005153656005859375, 0.001438140869140625] [-0.009490966796875, -0.004852294921875, 0.004779815673828125]
异步批量用法¶
输入 [ ]
已复制!
texts = [
"As the hours pass",
"I will let you know",
"That I need to ask",
"Before I'm alone",
]
embeddings = await embed_model.aget_text_embedding_batch(texts)
assert len(embeddings) == 4
assert len(embeddings[0]) == 4096
print(*[x[:3] for x in embeddings], sep="\n")
texts = [ "As the hours pass", "I will let you know", "That I need to ask", "Before I'm alone", ] embeddings = await embed_model.aget_text_embedding_batch(texts) assert len(embeddings) == 4 assert len(embeddings[0]) == 4096 print(*[x[:3] for x in embeddings], sep="\n")
[-0.0003848075866699219, 0.0004799365997314453, 0.011199951171875] [-0.0037078857421875, 0.0114288330078125, 0.00878143310546875] [0.005924224853515625, 0.005153656005859375, 0.001438140869140625] [-0.009490966796875, -0.004852294921875, 0.004779815673828125]