Embedding 是把文本转成向量的基础能力,RAG、语义搜索、去重和聚类都离不开它。很多人先问:能不能免费用?答案是能,但免费的边界比想象中多。

本文把免费向量化的几种来源拆开,讲清楚额度、限速、隐私、维度和质量上的限制,再给出适合与不适合的场景,以及什么时候应该升级到付费服务。文中不写具体额度数字,因为各平台的免费政策变化很快,一律以官方页面为准。

说明:OpenAI 等名称是其权利人的商标,BGE、E5、GTE、Jina Embeddings 等为各自项目或社区的模型名称。本文仅作技术说明,免费额度、条款与价格以官方页面为准。

一、免费的 Embedding 通常来自哪里

市面上常见的免费来源有四类:

  • 云平台的新用户试用额度,通常附带有效期和调用上限。
  • Embedding API 的免费层,按请求数或 Token 数限速,适合小流量。
  • 开放权重的模型,下载后部署在自己的服务器或 GPU 上。
  • 本地小模型,嵌在桌面应用或离线流水线里运行。

这四类的成本结构完全不同。前两类是别人替你承担算力,代价是额度、限速和条款约束;后两类是自己承担算力,权重免费,但硬件、运维和调优都要自己出。

二、免费额度一般卡在哪些地方

免费层很少只是每月送多少 Token 这么简单,实际使用中常见的限制包括:

  1. 每分钟或每天的请求数和 Token 数上限,批量任务容易触发。
  2. 单次请求的批量大小限制,文档多时要拆分多次调用。
  3. 单条输入的最大长度,长文档必须先切块。
  4. 维度固定或不可选,换模型时索引结构要跟着变。
  5. 免费层可能不提供 SLA,高峰期排队或失败的概率更高。
  6. 数据处理条款可能与付费版不同,这一点最容易被忽略。

所以评估免费方案时,不要只看送多少,要把限速、批量、维度和条款放在一起看。

三、开源模型自部署:免费的是权重,不是总成本

开放权重模型(例如 BGE、E5、GTE、Jina Embeddings 等家族的公开模型)可以下载自部署,适合数据不能出内网的团队。但免费只针对权重文件,实际成本包括 GPU 或 CPU 推理资源、模型选型与评测、服务化封装、监控和升级维护。

对比项 免费 API 额度 开源自部署
前期投入 低,注册即用 需要硬件与部署工作
边际成本 受限速与额度 主要是电费与运维人力
数据位置 数据发往服务商 数据留在自己环境
质量 取决于服务商模型 取决于选型与调优
扩展性 受免费额度约束 受硬件容量约束
维护责任 服务商 自己团队

如果团队没有 GPU 运维经验,自部署的隐性成本往往高于预期。反过来,如果数据敏感、调用量大且稳定,自部署的长期成本可能更可控。

四、先做一次小规模评测,再决定

免费方案最大的风险不是花钱,而是选错模型后用错向量建了索引。建议按下面步骤做一次两周内能完成的小评测:

  1. 从真实业务里挑 50 到 100 条有代表性的文本,覆盖长短、语言和业务类型。
  2. 准备一组查询和人工标注的相关结果,作为检索效果的基准。
  3. 用同一批数据分别调用候选的免费 API 和开源模型,记录向量维度与耗时。
  4. 计算命中率、相似度分布和失败率,重点看中文和行业术语的表现。
  5. 估算全量文档的 Token 总量、重建索引的时间和后续查询成本。

可以用一段很小的脚本先验证接口和相似度是否正常:

from openai import OpenAI

client = OpenAI(
    api_key="sk-你的密钥",
    base_url="https://ai.zhongshangqihang.com/v1",
)

texts = ["退货政策是什么", "如何申请退款", "发票怎么开"]
resp = client.embeddings.create(model="text-embedding-3-small", input=texts)
vectors = [item.embedding for item in resp.data]

def cosine(a, b):
    dot = sum(x * y for x, y in zip(a, b))
    norm = (sum(x * x for x in a) ** 0.5) * (sum(y * y for y in b) ** 0.5)
    return dot / norm

print(cosine(vectors[0], vectors[1]))

示例中的模型名仅用于演示,实际可用模型与维度以模型价格和站内文档为准。

五、隐私与合规:免费层最容易被忽略的成本

免费服务通常用更宽松的数据条款换取使用量。接入前至少确认三件事:输入数据是否会被留存、是否可能用于改进或训练模型、删除请求怎么处理。不同平台、不同地区、免费与付费版本的条款可能都不一样。

涉及客户合同、个人信息、财务数据和源代码的场景,建议不要把免费公共 API 当作默认选项。可以先用脱敏样本做功能验证,生产数据走有明确数据处理协议的付费服务或内网自部署。

六、哪些场景适合免费向量化

适合的场景通常有这些特征:数据不敏感、规模小、可以接受限速、结果用于验证而不是生产决策。例如个人学习项目、产品原型的语义搜索、内部小知识库的可行性验证、离线批量的文本聚类实验。

不太适合的场景也很明确:对外服务需要稳定 SLA、每天要处理大量文档、数据涉及隐私或合同义务、需要长期固定的向量维度和模型版本。免费额度在这些场景里不是省钱,而是把风险推迟到上线后暴露。

七、从免费到付费的升级路径

比较稳妥的路径是先用免费额度或开源自部署验证效果,再把生产流量迁到付费 API。迁移时注意三点:新模型是否支持相同或可映射的维度;旧向量能否保留,通常换模型就要全量重建索引;接口是否兼容,OpenAI 兼容接口能减少代码改动。

如果同时想比较多家模型,可以先用统一网关做小流量测试,再按项目拆分 Key 和预算,避免每家单独开户。具体价格会调整,以模型价格页面为准。

八、常见问题

免费 Embedding 一般有多少额度?

各平台差异很大,常见做法是按请求数或 Token 数设置每日或每月上限,并配合每分钟限速。具体数字和有效期以官方页面为准,不建议按传闻中的额度做容量规划。

免费额度可以商用吗?

要看服务条款。部分免费层允许商用但有数据使用限制,部分仅限评估。签约或上线前应让法务确认,不要默认能用等于能商用。

开源模型的效果一定比商业 API 差吗?

不一定。中文检索场景里,合适的开源模型配合好的切块和评测,效果可以满足很多业务。差距更多出现在长文本、多语言和开箱即用的稳定性上,必须用自己的数据实测。

免费层的数据会被用于训练吗?

不同平台政策不同,免费与付费版本也可能不同。无法确认时,按可能被使用处理,敏感数据不要提交到公共免费接口。

换 Embedding 模型后旧向量还能用吗?

通常不能直接混用。不同模型的向量空间不兼容,换模型后需要重新向量化全部文档,并同步更新查询侧模型。这也是选型时要提前考虑迁移成本的原因。

下一步

如果你已经用小样本验证了效果,下一步是把测试流量接到统一入口:可以先注册中商起航 AI 网关,用少量额度对比不同 Embedding 模型的维度、延迟和检索效果,再决定生产方案。模型列表和价格以模型价格为准。

相关阅读: