embedding-strategies
选择并优化适用于语义搜索和RAG应用的嵌入模型。适用于选择嵌入模型、实施分块策略或针对特定领域优化嵌入质量的场景。
作者
分类
AI 技能开发安装
下载并解压到你的 skills 目录
复制命令,发送给 OpenClaw 自动安装:
Embedding Strategies - 向量嵌入策略指南
技能概述
Embedding Strategies 帮助您选择和优化文本向量嵌入模型,实现高效的语义搜索和 RAG(检索增强生成)应用。
适用场景
核心功能
1. 嵌入模型选型对比
提供主流嵌入模型的详细对比,包括 OpenAI text-embedding-3 系列、Voyage、BGE、E5 等开源模型,从维度、Token 限制、适用场景等多维度分析,帮助您根据成本、性能和部署方式做出最佳选择。
2. 文本分块策略优化
提供多种分块实现模板,包括基于 Token 的分块、句子级别分块、语义段落分块和递归字符分割,帮助您在保留语义完整性和控制向量大小之间取得平衡。
3. 嵌入质量评估
提供检索质量评估指标(Precision@K、Recall@K、MRR、NDCG)的实现代码,帮助您量化评估嵌入模型在实际检索任务中的表现。
常见问题
如何为我的 RAG 应用选择合适的嵌入模型?
选择嵌入模型需要考虑多个因素:如果追求高精度且预算充足,推荐 OpenAI text-embedding-3-large(3072维);如果注重成本效益,text-embedding-3-small(1536维)是不错的选择;对于代码检索,Voyage-2 专门优化;如果需要本地部署或处理多语言内容,推荐 BGE-large-en-v1.5 或 multilingual-e5-large。
什么是文本分块(chunking),为什么它很重要?
文本分块是将长文档切分成适合嵌入模型处理的小段文本的过程。这很重要因为:1)嵌入模型有 Token 限制,超过限制会被截断;2)太小的块会丢失上下文信息,太大的块会降低检索精度;3)合理的分块能保留语义完整性。推荐使用 512-1024 Token 的块大小,并设置 10-20% 的重叠以保留边界上下文。
如何降低嵌入维度以节省存储空间?
有两种主要方法:1)使用支持 Matryoshka 表示学习的模型(如 OpenAI text-embedding-3 系列),可以在生成时指定更低的维度(如 512 或 256);2)选择原生小维度模型如 all-MiniLM-L6-v2(384维)。降维会轻微影响精度,但对存储和检索速度有显著提升,建议通过 A/B 测试确定最适合您应用的维度配置。