最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
用 DSH 搭建高效可检索的 Prompt 收藏库
时间:2026-09-13 15:30:02 编辑:袖梨 来源:一聚教程网
Prompt 收藏得越多,管理成本往往越高:分类边界难统一,标签需要持续维护,重复内容不易识别,真正使用时还要在多个平台反复翻找。为解决这些问题,我用 DSH 将收藏内容整理为本地文件仓库,并围绕数据组织、双路检索、结果融合和增量维护搭建了一套可复用的工具链。
一、前言
不知道你在收藏prompt的时候,是否有这样的问题困扰:
- 整理不动。分类靠拍脑袋(同一条到底是"写作"还是"效率"?),标签靠自觉(手动打标坚持不过两周), 去重靠记性(同一个模板存了三四个版本,风格不同、质量参差)。
- 根本找不到。想用的时候只能靠"我好像存过一条……"去一层层翻目录,文件名还全是英文。 结果就是:存了几千条,用的时候还是从零开始手写 prompt。
- 挑不出来。同一件事存了好几版,质量参差又没标注,用之前得先试一遍; 复用一条的成本比重新手写还高,于是收藏夹越厚,越没人打开。
- 散落各处就等于没存:聊天记录、微信收藏、书签、笔记、GitHub star 各存一份,用的时候一个都翻不出来。
因为管理prompt太费劲,我用DSH把自己收藏的 2400+ 条 prompt 做成了一个可检索的本地仓库:文件即数据,中文概述当语义层,关键词 + 向量双路检索,一句大白话就能定位到能直接用的prompt。
二、项目怎么设计的
三层,每层职责单一:
prompts/<分类>/<slug>.md ← 唯一事实来源:一文件一模板,原文逐字保留,git 管版本
+
文件头部两行标注 ← 语义层:中文概述 + 中英关键词(人和机器读同一份)
↓ tools/make_library.py 解析
tools/library.jsonl ← 机器检索库:path/summary/tags/title/excerpt
↓
tools/ask.py ← 检索层:关键词路 + 向量路 → RRF 融合
1. 文件即数据
每个 prompt 一个 Markdown,## Prompt 内容 里是逐字保留的原文(占位符、JSON 模板都不动),
头部额外补两行中文标注——标注是另加的,绝不改写原文:
## 说明
中文概述:AI 扮演简历专家,优化措辞、格式与行业关键词,使简历更专业且兼容 ATS 解析。
关键词:resume、ATS、简历优化、关键词、action verbs、求职
当前 2431 条全部有这两行,概述平均 45 字,关键词去重后 7821 个。这层是检索质量的关键: 它把"我的检索习惯"提前翻译成了数据,让"提意见"能对上"代码审查",让中文 query 能对上英文原文。
2. 双路检索 + 融合
| 关键词路 | 向量路 | |
|---|---|---|
| 原理 | 8 个字段加权打分(tags 4.5 / summary 2.6 / title 1.6 …),中文按 bigram 容忍部分命中 | text-embedding-3-small 向量(2431×1536)点积算余弦 |
| 长处 | 离线、零依赖、可解释(能说清命中哪个字段) | 同义改写、中英跨语言 |
| 短处 | 换个说法就搜不到 | 需要 key 和索引 |
两路分数不可比(加权命中分 vs 0~1 余弦),所以不归一化相加,而是用 RRF 只看排名:
score = 1/(160 + rank_keyword) + 1/(40 + rank_vector)
语义路 K 更小 → 排名衰减更快 → 强语义信号主导排序。有索引和 key 就混合,没有就自动降级为纯关键词,断网也能用。
3. 工具链
| 脚本 | 作用 |
|---|---|
ask.py | 检索主入口(keyword / semantic / hybrid 三模式) |
make_library.py | 解析 md 头部,生成 library.jsonl |
make_indexes.py | 刷新 prompts/README.md 分类计数 |
build_index.py | 向量索引,按文件 md5 增量:全量 1~3 分钟,新增一条秒级 |
add_overview.py | 把中文概述幂等写回文件(有则跳过) |
dedupe.py | 三层重复检测(md5 相同 / 正文规范化相同 / 标题撞名) |
检索是 CLI,所以可以被 AI 直接调用——这才是日常用法(见下)。
三、怎么用
方式一:直接问 AI(推荐)
不用记命令,直接说"帮我找个能逐行点评代码的 prompt"。AI 跑检索 → 读原文核对 → 给你可直接复制的模板。
仓库里有两个 Skill 把流程固化了:prompt-keeper(收藏入库)与 prompt-designer(库内优先找/设计)。
方式二:命令行
# 默认混合检索(关键词 + 向量)
python3 tools/ask.py "优化简历通过 ATS 筛选" -k 5
# 纯语义:中英跨语言,零字面重合也能命中
python3 tools/ask.py "give me feedback on my code" -k 3 --mode semantic
# 纯关键词:离线、零依赖
python3 tools/ask.py "小红书 带货 文案" -k 3 --mode keyword
# -c N 直接打印第 N 名的完整 prompt 正文
python3 tools/ask.py "优化简历通过 ATS 筛选" -k 3 -c 1
实际输出(节选):
[1] Refine Your Resume for Professionalism and ATS Compatibility
分类: 商业职业 路径: prompts/商业职业/refine-your-resume-for-professionalism-and-ats-compatibility.md
中文概述: AI 扮演简历专家,优化措辞、格式与行业关键词,使简历更专业且兼容 ATS 解析。
[2] ATS 简历筛选模拟器
中文概述: 扮演严格 legacy ATS 模拟器,按关键词精确匹配(同义词零分)给简历打分并审查格式。
一个"优化简历"、一个"模拟 ATS 打分",生产工具和验收工具一起浮上来——这就是双路融合的实际收益。
收藏一条新的
# 1) 落盘 prompts/<分类>/<slug>.md,头部补 中文概述 + 关键词(原文逐字保留)
# 2) 重建检索库 + 刷新计数 + 增量向量化
python3 tools/make_library.py && python3 tools/make_indexes.py && python3 tools/build_index.py
# 3) 校验:新文件必须能被 ask.py 搜到
python3 tools/ask.py "<新文件的核心词>" -k 3
最小起步
不需要 2400 条,也不需要向量索引:每个 prompt 一个 md + 头部两行中文标注 → 跑 make_library.py → 用 ask.py 关键词模式。
先让"能搜到"成立,文件多了、同义词问题明显了,再加 build_index.py 做语义升级。
四、落地场景
| 场景 | 一句大白话去问 | 库里的命中(真实结果) |
|---|---|---|
| 求职 | 优化简历过 ATS 筛选 / 模拟面试 | refine-your-resume-…、ats-resume-scanner-simulator、mockup-interview-using-gemini-live |
| 自媒体带货 | 写小红书带货文案 | 电商与社交平台内容创作提示词、资深卖货短视频脚本创作者 |
| 代码评审 | give me feedback on my code | improve-the-following-code、code-review-assistant(英文提问命中中文概述) |
| 长文处理 | 把长文总结成要点 | Summarize、Summarize Lecture(按时间戳输出结构化摘要) |
| 办公汇报 | 做一份 PPT 大纲 | presentation making、academic-powerpoint-presentation-designer |
| 学习成长 | 帮我规划学习路径 | structured-and-effective-learning-prompt(技能树 + 路径 + 资源 + 练习) |
五、最后
文档提到的项目地址:github.com/AdolescentJ…
我已经把 f/prompts.chat、danielmiessler/Fabric、dair-ai/Prompt-Engineering-Guide几个知名仓库,以及我收集到的好用prompt都录入进去了,你直接把github链接丢给你的DSH就可以直接使用,希望能帮助到你。