OpenAI Embeddings API: 如何提取嵌入向量?

我使用了与这个 GitHub 仓库中几乎相同的代码来从 OpenAI 获取嵌入:

oai = OpenAI(# This is the default and can be omittedapi_key="sk-.....",)def get_embedding(text_to_embed, openai):       response = openai.embeddings.create(        model= "text-embedding-ada-002",        input=[text_to_embed]    )        return responseembedding_raw = get_embedding(text,oai)

根据 GitHub 仓库的说明,向量应该在 response['data'][0]['embedding'] 中,但在我的情况下却不是这样。

当我打印 response 变量时,得到的是:

print(embedding_raw)

输出:

CreateEmbeddingResponse(data=[Embedding(embedding=[0.009792150929570198, -0.01779201813042164, 0.011846082285046577, -0.0036859565880149603, -0.0013213189085945487, 0.00037509595858864486,..... -0.0121011883020401, -0.015751168131828308], index=0, object='embedding')], model='text-embedding-ada-002', object='list', usage=Usage(prompt_tokens=360, total_tokens=360))

我该如何访问嵌入向量?


回答:

只需按以下方式返回嵌入向量即可:

def get_embedding(text_to_embed, openai):       response = openai.embeddings.create(        model= "text-embedding-ada-002",        input=[text_to_embed]    )        return response.data[0].embedding # 更改为这行embedding_raw = get_embedding(text,oai)

Related Posts

Keras Dense层输入未被展平

这是我的测试代码: from keras import…

无法将分类变量输入随机森林

我有10个分类变量和3个数值变量。我在分割后直接将它们…

如何在Keras中对每个输出应用Sigmoid函数?

这是我代码的一部分。 model = Sequenti…

如何选择类概率的最佳阈值?

我的神经网络输出是一个用于多标签分类的预测类概率表: …

在Keras中使用深度学习得到不同的结果

我按照一个教程使用Keras中的深度神经网络进行文本分…

‘MatMul’操作的输入’b’类型为float32,与参数’a’的类型float64不匹配

我写了一个简单的TensorFlow代码,但不断遇到T…

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注