☰
如何让你的技能更易被找到:R3-embedding-0.6b技能文档格式与Instruct提示实战指南
2026/10/21 2:10:48 网站建设 项目流程

【免费下载链接】R3-embedding-0.6b

项目地址:https://ai.gitcode.com/tencent_hunyuan/R3-embedding-0.6b
点击查看免费下载

🎯R3-embedding-0.6b是腾讯开源的 Agent 技能检索(skill retrieval)双塔召回模型。想让 AI Agent 的技能(skill)在海量候选中被准确"检索"出来?关键在于两件事:技能文档怎么写、Instruct 提示怎么配。本文带你零基础上手,搞懂这个模型的技能文档格式name | description | skill_md与内置 Instruct 提示机制。

一、R3-embedding-0.6b 是什么?和文档检索有什么不同

普通向量检索把"文档"当检索对象,而 R3-embedding-0.6b 检索的对象是Agent 技能——一段告诉模型"我能做什么、怎么做"的结构化描述。论文《Skill Is Not Document》的核心观点就是:技能不是文档,两者的最佳匹配方式不同。

它是 R3-Skill 两阶段检索器中的bi-encoder(双塔召回)阶段:

  • 查询(query)和每个技能文档独立编码,互不干扰,适合大规模候选初筛
  • 按余弦相似度排序召回候选,再交给配套的 R3-Rerank-0.6B 精排

模型规格一览(详见 config.json):

属性值说明
底座Qwen3-Embedding-0.6B基于 0.6B 参数量的 Qwen3 架构
向量维度1024见 1_Pooling/config.json
最大上下文32768max_position_embeddings
分词长度上限4096见 tokenizer_config.json

二、技能文档格式实战:name | description | skill_md

📌 这是全文最重要的部分。R3-embedding-0.6b 规定技能文档采用三段式文本,用|(空格+竖线+空格)分隔:

music-composer | Composes original music | Creates music for various media formats ...
字段作用写法建议
name技能名短横线小写命名,如music-composer,让模型快速抓住主题
description一句话说明以动词开头概括能力,如 "Composes original music"
skill_md技能正文详细说明技能用途、适用场景与产出(通常是完整 skill 文档)

官方示例来自 README.md:

document_embeddings = model.encode_document([ "music-composer | Composes original music | Creates music for various media formats ...", "music-lyricist | Writes lyrics for songs | Creates lyrics for various music genres ...", "music-editor | Edits and mixes music tracks | Provides audio editing and mixing services ...", ])

对新手最实用的三条写作建议:

  1. name 决定主题锚点:用户说"帮我写首歌",music-composer与music-lyricist的区别全靠 name 和 description 拉开
  2. description 写能力而非过程:用 "Creates lyrics for various music genres" 这种结果导向的描述
  3. skill_md 保留完整上下文:它是区分近义技能的关键信息,不要为了省字数而截断

三、Instruct 提示机制:查询侧自动加提示,文档侧保持纯净

很多 embedding 模型对查询和文档使用不同的"提示模板"(prompt),R3-embedding-0.6b 的配置见 config_sentence_transformers.json:

  • 查询侧自动拼接 Instruct 提示:Instruct: Given a user request, retrieve the agent skill that solves it.\nQuery:
  • 文档侧提示为空字符串——技能文档按原文编码
  • 相似度函数固定为cosine(余弦相似度)

这意味着你调用encode_query()时无需自己写任何提示,模型会自动补上检索指令;而encode_document()输入的技能三段式文本则原样编码。池化模块还配置了include_prompt: true,保证提示词参与向量计算(见 1_Pooling/config.json)。

模型内部结构为Transformer → Pooling → Normalize三段流水线(见 modules.json):

  • Pooling:取last token作为句向量,而非平均池化
  • Normalize:对向量做 L2 归一化,使余弦相似度退化为内积,检索更快更稳

四、最快上手:3 行代码完成技能召回

安装sentence_transformers后,加载并检索(完整示例见 README.md):

from sentence_transformers import SentenceTransformer model = SentenceTransformer("tencent/R3-embedding-0.6b") query_embedding = model.encode_query("I need to compose music") document_embeddings = model.encode_document([ "music-composer | Composes original music | Creates music for various media formats ...", "music-lyricist | Writes lyrics for songs | Creates lyrics for various music genres ...", ]) similarities = model.similarity(query_embedding, document_embeddings) # tensor([[0.7410, 0.5510, 0.5028]])

可以看到music-composer以 0.741 的最高相似度胜出——这正是"技能文档格式 + Instruct 提示"协同工作的结果。

五、模型文件速查表

文件作用
README.md使用说明与使用示例
config.json模型结构配置(Qwen3,28 层,hidden 1024)
config_sentence_transformers.jsonInstruct 提示与相似度函数配置
modules.json模型流水线模块清单
1_Pooling/config.jsonlast-token 池化与 1024 维输出配置
sentence_bert_config.json任务类型与输出名配置
tokenizer_config.json分词器配置(Qwen2Tokenizer)
chat_template.jinja聊天模板

六、让技能更易被找到的 4 个要点

✅格式别出错:严格使用name | description | skill_md三段式,分隔符是"空格-竖线-空格"

✅description 动词开头:一句话说清"这个技能解决什么问题"

✅信任内置 Instruct:查询侧提示已由模型自动注入,重复拼接反而可能干扰匹配

✅召回 + 精排组合拳:R3-embedding-0.6b 负责快速召回,再配合 R3-Rerank-0.6B 精排,效果最佳


📚 小结:R3-embedding-0.6b 把"技能检索"变成了可复用的标准化流程——规范三段式文档、用好自动 Instruct 提示、结合精排模型,你的 Agent 技能库就能被用户的一句话精准命中。

【免费下载链接】R3-embedding-0.6b

项目地址:https://ai.gitcode.com/tencent_hunyuan/R3-embedding-0.6b
点击查看免费下载
上一篇:Folia sync-server 部署完全指南:零成本私有 AI 主题云,三种方式任选
下一篇:GitHub Actions Runner 容器钩子(Container Hooks)完全指南:用 Podman、K8s 或自定义逻辑接管容器生命周期

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询