Gemini Embedding 入门:建立文字向量与搜寻
搭建属于自己的本地知识库(RAG)!手把手教你调用 text-embedding-004 接口生成高维语义向量并计算余弦相似度实战。
一、什么是文本嵌入(Embedding)
Embedding 将一段人类语言的文字转化为一串固定维度的浮点数数学向量(如 768 维)。
语义相近的句子在几何空间中的距离极近。这是构建企业私有搜索、智能客服以及知识库增强检索(RAG)的核心底座。
二、Python SDK 生成向量完整代码
import numpy as np
import google.generativeai as genai
# 调用专用的向量模型
result = genai.embed_content(
model="models/text-embedding-004",
content="人工智能大模型在金融风险控制中的核心应用场景",
task_type="retrieval_document"
)
vector = result["embedding"]
print(f"向量生成成功,维度长度: {len(vector)}")
# 计算两个向量的余弦相似度(Cosine Similarity)
def cosine_similarity(a, b):
return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))
三、存储与检索
在生产环境中,可将生成的向量保存在 Milvus、Pinecone 或本地 pgvector 数据库中实现毫秒级召回。
基础环境见:[Gemini API 入门总指南](https://aihuiyuan.club/articles/gemini-api-key-google-ai-studio-free)。