Huashu Design
alchaincyf · 技能
把你在 AI 智能体里写的一句话需求,变成一份完成的设计:发布动画、可点击的应用原型、可编辑的幻灯片、信息图,或一组小红书图片。可在多种智能体中使用。

一个手动启动的 n8n 工作流:为 Qdrant 集合里的每种作物,用两种方法选出一个中心点,也就是最典型的照片。它在每个中心点上存一个相似度阈值,供异常检查用。
为每组作物算出中心点和阈值并存进 Qdrant 是一款 n8n 工作流,属于开发类,由 Mindket 上架。可免费获取。当前为第 1 版,最近更新于 。在本页下载,或复制它的 JSON,再导入 n8n 画布。在 n8n 里启用之前,它不会运行。
手动运行
你点 Execute workflow 时开始运行,要在几个节点里设这些值:
你的 Qdrant 集合里,选中的点上有四个 payload 字段:两个中心点标记和两个阈值
开始之前要准备好这些。
向量数据库
统计点数、列出作物、返回距离矩阵和最近的照片,并把标记和阈值存成 payload。
需要Qdrant 集群地址和 API 密钥,放在一个 Qdrant API 凭据里,还要有一个已填好的集合
嵌入模型
用 voyage-multimodal-3 把每个作物描述变成查询向量。
需要Voyage AI API 密钥,放在一个 Header Auth 凭据里
由 Mindket 于 2026年11月13日检查
这个 n8n 工作流为图片异常检查准备一个 Qdrant 集合。手动触发器启动它。对每种作物,它用两种方法找一个中心点,也就是与该作物其余照片最相似的那张。一种方法用照片之间的相似度。另一种用 Voyage AI 嵌入一段作物的文字描述,取最近的那张照片。每个中心点在 Qdrant 里被标记,并得到一个相似度阈值。干活的是二十六个节点,旁边还有二十二张便签。
把带标签图片存在 Qdrant 里、想为每个类别得到一张典型照片和一个截止分数的机器学习工程师。如果你要的是异常检查本身,就别选它。这个文件只写下那种检查要读的数字。
| 行业 | 谁在用 | 怎么用 | 例子 |
|---|---|---|---|
| 农业 | 质检团队 | 找出每种作物的典型照片,并设一个判断异常的界线 | 一个团队为 cucumber 存下中心点和阈值。 |
| 制造 | 检验工程师 | 为每个产品类别准备一张参照照片和一个界线 | 一位工程师给每种零件标出最典型的那张照片。 |
| 零售 | 商品目录团队 | 找出与所属类别不符的商品照片 | 一个团队为每个类别保留一个阈值,用来发现放错的照片。 |
| 机器学习 | 数据科学家 | 对比由距离矩阵得到的中心点和由文字锚定的中心点 | 一位科学家检查某个类别的两个中心点是不是同一张照片。 |
你需要熟悉 n8n,也要懂一点 Qdrant:它的 API 要调用十一次,还要有一个按固定方式建好的集合。
任何能访问 Qdrant 和 Voyage AI 的 n8n 都能运行它。它处理的是已经由批量上传填好的集合。
点“下载”会把一个压缩包存到你的下载文件夹,里面有 workflow.json 和 Mindket 写的设置说明。需要两个账号。
| 需要 | 说明 |
|---|---|
| n8n | n8n Cloud 或你自己的服务器 |
| Qdrant | 一个集群地址和 API 密钥,放在一个 Qdrant API 凭据里。集合需要一个命名向量 voyage、一个 crop_name payload 字段,以及它上面的关键字索引 |
| Voyage AI | 一个 API 密钥,放在一个 Header Auth 凭据里,名称为 Authorization,值是 Bearer 加你的密钥 |
workflow.json。Total Points in Collection 到 Set text medoid threshold score。Embed text 里选中它。Qdrant cluster variables。把 <YOUR_QDRANT_CLUSTER_URL> 换成你的集群地址,把 collectionName 设为你的集合。Medoids Variables 和 Text Medoids Variables。它们的 furthestFromCenter 决定由哪个点来定阈值。文件里分别用 5 和 1。Textual (visual) crop descriptions,把那 29 种作物换成你自己的类别。点 Execute workflow。运行时会走过集合里的每种作物,在选中的点上写下四个 payload 字段。之后在 Qdrant 里把它们读回来。
| 要改的 | 在哪里改 |
|---|---|
| 由哪个点来定阈值 | 两个变量节点里的 furthestFromCenter。1 是最远的照片,5 是第五远的 |
| 作物和它们的描述 | Textual (visual) crop descriptions |
| payload 名称 | 名称以 Set 开头的四个节点的请求体 |
| 集合 | Qdrant cluster variables 里的 collectionName |
集合里有许多标成 cucumber 的照片。
距离矩阵分支选出与其余黄瓜照片都最相似的那张,把它标成 is_medoid。然后把这张照片和第五远的黄瓜照片之间的相似度存为它的阈值。文字分支用一段文字描述做同样的事。
新手:n8n 把工作流画成用线连起来的方框,每个方框是一个节点,只做一件事。中心点是这一组里最靠近中间的一张真实照片。阈值是与它相似度的下限,低于这个值就不再算属于这一组。
专家:Qdrant 的距离矩阵调用返回行列偏移量和分数。Code 节点按行把分数相加,最远的点则来自用中心点向量乘以 -1 做的搜索。
| 节点 | 做什么 | 要知道的 |
|---|---|---|
Cluster Distance Matrix | 向矩阵偏移量接口发 POST,sample 和 limit 设为最大那一组的大小 | 成本随组大小的平方增长,一张便签对此有警告 |
Find Medoid | Code,对每个条目运行一次 | 它按行把分数相加,返回最高那行的 id |
Searching Score | 用翻转后的向量做精确查询 | limit 是 furthestFromCenter,最后一个分数乘以 -1 就是阈值 |
Merge | 按 cropName 把描述和作物合在一起 | 没有描述的作物会被排除在文字分支之外 |
scipy 那一步改用 JavaScript 重写了,异常检查本身没有包含在内。
scipy 的 Python Code 节点。在 n8n 2 里,原生 Python 不能导入库,也没有 _input(n8n 文档,2026 年 11 月 12 日查阅)。Mindket 的版本名为 Find Medoid,用 JavaScript 把分数相加,选出同一个点一个手动启动的 n8n 工作流。对 Qdrant 集合里的每种作物,它用两种方法选出一个中心点,也就是与同组其余照片最相似的那张,并在上面存一个相似度阈值,供以后的异常检查用。
workflow.json:n8n 导出的工作流,四十八个节点。二十六个干活,二十二个是便签,解释各个步骤。里面没有任何凭据。README.md:这份设置说明,压缩包里的是英文版。scipy 的 Python Code 节点。在 n8n 2 里,原生 Python 只提供 _items 和 _item,没有 _input,也不能导入 scipy 这样的库(n8n 文档,2026 年 11 月 12 日查阅)。Mindket 的版本改名为 Find Medoid,用 JavaScript 把每个点的相似度分数相加,选出总分最高的点,这和原来做的事一样。一张便签现在也这样说明。<YOUR_QDRANT_CLUSTER_URL>。voyage-multimodal-3 的命名向量 voyage,每个点上有一个 crop_name payload 字段,crop_name 上还有一个关键字 payload 索引。文件里的集合叫 agricultural-crops。workflow.json。Total Points in Collection 到 Set text medoid threshold score。Authorization,值填 Bearer <YOUR_VOYAGE_KEY>,换成你自己的密钥。在 Embed text 里选中它。Qdrant cluster variables。把 <YOUR_QDRANT_CLUSTER_URL> 换成你的集群地址,前面带 https://,结尾不要斜杠。把 collectionName 设为你的集合。Medoids Variables 和 Text Medoids Variables。它们的 furthestFromCenter 决定由哪个点来定阈值。文件里分别用 5 和 1。Textual (visual) crop descriptions,把那 29 种作物换成你自己的类别,每个类别写一句话,说明一个典型样本看起来是什么样。Qdrant cluster variables 引出两条分支。Total Points in Collection 精确统计点的数量。接着 Crop Counts 问 Qdrant crop_name 有哪些值、每个值有多少个点。然后 Info About Crop Clusters 留下作物名称和最大那一组的大小,Split Out 为每种作物生成一个条目。Cluster Distance Matrix 问 Qdrant 这种作物所有点之间的相似度。Find Medoid 把每个点的分数相加,取最高的那个。Set medoid id 在那个点上存下 is_medoid。Get Medoid Vector 读出中心点的向量,Prepare for Searching Threshold 把它的符号翻转。Searching Score 再找离翻转向量最近的点,也就是离中心点最远的点。Threshold Score 取最后一个分数,Set medoid threshold score 把它存成 is_medoid_cluster_threshold。Textual (visual) crop descriptions 存着每种作物的一段描述。Merge 把它和对应的作物配对,Embed text 用 Voyage 把它变成向量,input_type 设为 query。Get Medoid by Text 找出该作物里最接近描述的那张照片。Set text medoid id 在它上面存下 is_text_anchor_medoid,同样的阈值步骤再存下 is_text_anchor_medoid_cluster_threshold。furthestFromCenter。1 是最远的照片,5 是第五远的。Textual (visual) crop descriptions。Set 开头的四个节点的请求体。Qdrant cluster variables 里的 collectionName。is_medoid、is_medoid_cluster_threshold、is_text_anchor_medoid 和 is_text_anchor_medoid_cluster_threshold。is_medoid 标记,所以先把旧的 payload 清掉。Merge 按作物名称配对。NOTICE.md 707 B README.md 5 KB workflow.json 40 KB
alchaincyf · 技能
把你在 AI 智能体里写的一句话需求,变成一份完成的设计:发布动画、可点击的应用原型、可编辑的幻灯片、信息图,或一组小红书图片。可在多种智能体中使用。
op7418 · 技能
能生成单文件 HTML 幻灯片、幻灯片配图和多平台封面的技能,有两套视觉风格,还带演讲者模式用于排练。适合使用 Claude Code 或 Codex 的演讲者。
alirezarezvani · 技能
为 Claude Code 和其他编程智能体提供 411 个现成技能,按角色分组,从工程、产品到营销、财务和合规。以插件方式安装。适合开发者和业务团队。
block · 工具包
可自行托管的工作空间,人和 AI 智能体在同样的房间里协作,基于 Nostr 中继,把每个动作记录为签名事件。适合想自己运行中继的团队。
backnotprop · 工具包
把你的 AI 编程智能体的计划、规格和代码改动在浏览器里打开,让你加批注或评论,并把反馈直接发回给智能体。
alibaba · 工具包
用 AI 智能体审查 Git 改动:它会读取文件、搜索代码库,再写出对应到具体行的审查意见。适合想在命令行里自动做代码审查的开发者。