向量数据库Technical Deep Dive

向量 embeddings 入门:理解 AI 的数据表示

发布时间2025/12/17
分类向量数据库
预计阅读7 分钟
作者吴长龙
*

向量 embeddings 是 AI 应用的核心。本文介绍什么是 embeddings、常见模型、以及在实际项目中的使用。

01.内容

# 向量 embeddings 入门:理解 AI 的数据表示

向量 embeddings 是 AI 理解数据的方式,本文详细介绍。

02.1. 什么是 Embeddings

1.1 概念

Embeddings 将文本、图像等数据转换为数值向量,让机器可以计算相似度。

python snippetpython
# 文本转向量
text = "Hello, world!"
embedding = [0.1, -0.3, 0.5, ...]  # 1536 维向量

1.2 相似度计算

python snippetpython
import numpy as np

def cosine_similarity(a, b):
    return np.dot(a, b) / (np.linalg.norm(a) * np.linalg.norm(b))

# 相似文本
similarity = cosine_similarity(embedding1, embedding2)

03.2. Embedding 模型

2.1 OpenAI Embeddings

python snippetpython
from openai import OpenAI

client = OpenAI()

response = client.embeddings.create(
    model="text-embedding-3-small",
    input="Hello, world!"
)

embedding = response.data[0].embedding
print(len(embedding))  # 1536

2.2 开源模型

python snippetpython
# sentence-transformers
from sentence_transformers import SentenceTransformer

model = SentenceTransformer('all-MiniLM-L6-v2')
embedding = model.encode("Hello, world!")

04.3. 使用场景

场景说明
语义搜索找相似文档
推荐系统相似物品推荐
聚类相似内容分组
分类相似度阈值判断

05.4. 总结

  • Embeddings 是 AI 数据表示
  • 向量相似度 = 语义相似度
  • 选对模型很重要

(未完待续...)