我使用了与这个 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)