Bonsai-27B-GGUF
lmstudio-community · 工具包
面向 LM Studio 的 27B Bonsai 模型 GGUF 转换版,含 3.80 GB 的 Q1_0 语言文件和 0.93 GB 的 BF16 视觉投影器。已测试文本、视觉和并行工具调用。
一个 n8n 工作流,检查一张图片里是不是你的 Qdrant 集合认识的作物。Voyage AI 把图片转成向量,再用一句简短的文字说出最接近的作物,或者发出警报。
对照 Qdrant 集合检查作物图片是否异常 是一款 n8n 工作流,属于开发类,由 Mindket 上架。可免费获取。当前为第 1 版,最近更新于 。在本页下载,或复制它的 JSON,再导入 n8n 画布。在 n8n 里启用之前,它不会运行。
由其他工作流调用
智能体或另一个工作流带着一个图片地址调用它时开始运行。先设好:
一条简短的文字,要么说这张图片看起来像某种作物,要么对未知作物发出警报
开始之前要准备好这些。
嵌入模型
用多模态嵌入模型把图片转成向量。
需要Voyage AI API 密钥
向量数据库
数出有多少种作物,再返回离图片向量最近的已存中心点。
需要Qdrant 地址和 API 密钥
由 Mindket 于 2026年11月13日检查
这个 n8n 工作流检查一张图片里是不是 Qdrant 集合里已经认识的作物。你给它一个图片地址。Voyage AI 把图片转成向量,Qdrant 返回每种作物已存的、离它最近的中心点。工作流把每个得分和该作物自己的阈值比较。它会回答这张图片看起来像某种作物,或者在图片和任何已存作物都不够接近、不能算作已知时发出警报。答案只有一行。整个流程由九个节点完成,旁边还有七张便签。
把图像向量存在 Qdrant 里、想对新图片做一次快速离群检查的开发者和数据团队,或者想要一个能让 AI 智能体调用、用来筛查田间照片的工具的人。如果你还没有集合,就别选它。这个工作流只读集合,集合的结构写在下面。
| 行业 | 谁在用 | 怎么用 | 例子 |
|---|---|---|---|
| 农业 | 农学数据团队 | 标出和他们跟踪的所有作物都不匹配的照片 | 团队发来一张新的田间照片,它不属于任何已知作物时就收到警报。 |
| 质量控制 | 数据集整理者 | 在新上传的图片进入训练集之前先筛一遍 | 整理者检查每一批,把触发警报的图片挑出去。 |
| 软件 | AI 智能体开发者 | 给智能体一个能判断图片是否已知的工具 | 智能体带着一个图片地址调用这个工作流,并读取答案。 |
| 研究 | 机器学习研究者 | 在图像向量上试验异常判断规则 | 研究者在同一批图片上比较两组阈值设置。 |
你需要懂一些 n8n,还要有一个按下面所述方式建好的 Qdrant 集合,以及两个凭据。
任何能访问 Voyage AI 和你的 Qdrant 的 n8n 都能运行它。它是一个工具工作流,由另一个工作流或智能体带着图片地址来调用。它自己没有网址。
点“下载”会把一个压缩包存到你的下载文件夹,里面有 workflow.json 和 Mindket 写的设置说明。导入文件,添加两个凭据,设好你的 Qdrant 地址,再用一个图片地址测试。
| 需要 | 说明 |
|---|---|
| n8n | n8n Cloud 或你自己的服务器 |
| Qdrant | 一个名为 agricultural-crops 的集合,里面有名为 voyage 的向量、crop_name 字段,以及每种作物一个标好的中心点 |
| Voyage AI | 一个 API 密钥 |
workflow.json。保存。Authorization,值填 Bearer <YOUR_VOYAGE_API_KEY>。在 Embed image 里选中它。Total Points in Collection、Each Crop Counts 和 Get similarity of medoids 里选中它。Variables for medoids 里,把 <YOUR_QDRANT_URL> 换成你的集群地址。Execute Workflow Trigger 上固定 { "query": { "imageURL": "<YOUR_IMAGE_URL>" } },填一张真实图片的地址,然后点 Test workflow。用名为 query.imageURL 的字段带着一个图片地址来调用这个工作流。它会数出集合里有多少种作物,把图片转成向量,再请 Qdrant 返回最近的中心点。在最后一个节点里读答案。先用一种已知的作物测试。
| 要改的 | 在哪里改 |
|---|---|
| 两种答案的措辞 | Compare scores |
| 集合和它的中心字段 | Variables for medoids |
| 嵌入模型 | Embed image,先用新模型重建集合 |
| 地址从哪里来 | Image URL from input |
一个数据团队在 Qdrant 里存了许多种作物的图片,每种作物有一个中心点和一个阈值。田间传来一张新照片,一个脚本把它的地址发给这个工作流。
如果照片的得分超过了任何一种作物的阈值,答案就是 Looks similar to 加上最匹配的那一种。如果它一个阈值都没过,答案就是 ALERT, we might have a new undefined crop!。把警报当作去看一眼这张图片的提示。阈值设得不对,可能把一张古怪的照片误判成已知作物。
新手:n8n 把工作流画成用线连起来的方框,每个方框是一个节点,只做一件事。向量是一串代表图片的数字,长得像的图片,向量也靠得近。Qdrant 存这些向量,并找出最近的几个。匹配的全部工作就是这样。
专家:这个检查是“最近中心点加每种作物各自的阈值”,所以集合里存的阈值决定了它有多严格。
| 节点 | 做什么 | 要知道的 |
|---|---|---|
Each Crop Counts | 请 Qdrant 返回 crop_name 的各个取值及其数量 | 不同作物的数量决定了后面的查询返回多少个中心点 |
Embed image | 把图片地址发给 Voyage 的多模态嵌入接口 | 模型是 voyage-multimodal-3,输入类型是 document |
Get similarity of medoids | 在 voyage 向量上查询,只在标为中心点的点里找 | 每种作物返回一个点,所以每种作物必须正好有一个中心点 |
Compare scores | 把每个得分和存在它那个点上的阈值比较 | Mindket 的副本用 JavaScript 写,逻辑和原来一样 |
这个工作流需要一个你自己建的集合,集合里的阈值决定了它有多严格。它只读这个集合,从不写入。
voyage 向量、crop_name、is_medoid 和阈值字段voyage-multimodal-3.5 和 voyage-multimodal-3 列为推荐模型。文件保留较旧的那个,因为已存的向量必须来自同一个模型一个 n8n 工作流,接收一张图片的地址,判断它是不是你的集合里已经认识的作物。它用 Voyage AI 把图片转成向量,拿这个向量去和 Qdrant 集合里每种作物的一个中心点比较,最后返回一句简短的文字。如果图片和任何作物都不够接近,这句文字就会发出警报。
workflow.json:n8n 导出的工作流,9 个节点和 7 张便签。里面没有任何凭据。README.md:这份设置说明,压缩包里的是英文版。Variables for medoids 里现在写的是 <YOUR_QDRANT_URL>。Compare scores 原来是一个 Python Code 节点,读的是 _input 和 _()。n8n 的文档说,提供这些名称的 Pyodide 在 n8n 2.0 里已被移除,那里的原生 Python 只提供 _items 和 _item,默认也不能导入任何东西。Mindket 的副本把同样的逻辑改用 JavaScript 来写,在每个 n8n 版本上都能运行。Image URL hardcode 其实什么也没写死,它从调用里读 query.imageURL。现在它叫 Image URL from input,Embed image 也改成指向新名字。工作流不会建集合。作者是在两个更早的流程里建的,那两个流程不在这个文件里,所以你需要自己建一个。它必须是这样的:
agricultural-crops。如果你的不同,在 Variables for medoids 里改。voyage 的命名向量,里面是用 voyage-multimodal-3 做出的作物图片的 Voyage 多模态嵌入。crop_name 负载字段,写作物的名字。is_medoid 为 true,is_medoid_cluster_threshold 里是一个数字。这个数字是一张图片仍算作该作物的最低相似度得分。is_text_anchor_medoid 和 is_text_anchor_medoid_cluster_threshold。要用它,就把这两个名字填进 Variables for medoids。工作流会数出集合里有多少种 crop_name,并向 Qdrant 要这么多个中心点。
workflow.json。保存。Authorization,值填 Bearer <YOUR_VOYAGE_API_KEY>。在 Embed image 里选中它。Total Points in Collection、Each Crop Counts 和 Get similarity of medoids 里选中它。Variables for medoids 里,把 <YOUR_QDRANT_URL> 换成你集群的地址,末尾不要带斜杠。Execute Workflow Trigger 上固定下面这一项,然后点 Test workflow:{ "query": { "imageURL": "<YOUR_IMAGE_URL>" } }query 字段里传入地址。Execute Workflow Trigger 接收调用。Image URL from input 把 query.imageURL 复制到一个叫 imageURL 的字段里。Variables for medoids 设好 Qdrant 地址、集合名和两个中心字段名。Total Points in Collection 请 Qdrant 精确数出点的数量。Each Crop Counts 请它返回 crop_name 的各个取值及其数量,Info About Crop Labeled Clusters 记下一共有多少种作物。Embed image 把图片地址发给 Voyage 的多模态嵌入接口,模型是 voyage-multimodal-3,得到一个向量。Get similarity of medoids 用这个向量去查 Qdrant 的 voyage 向量,只在标为中心点的点里找,每种作物要一个结果。Compare scores 把每个结果和它自己的阈值比较。只要有一个达到阈值,答案就是 Looks similar to <crop>,写的是得分最高的那种作物。如果一个都没达到,答案就是 ALERT, we might have a new undefined crop!。Compare scores。Variables for medoids。Embed image。换新模型做出的向量和已存的对不上,所以要先用同一个新模型重建集合。Image URL from input 改成读另一个字段。voyage-multimodal-3.5 和 voyage-multimodal-3 列为推荐的多模态模型。文件保留较旧的那个,因为集合里的向量必须来自同一个模型。NOTICE.md 669 B README.md 6 KB workflow.json 12 KB
lmstudio-community · 工具包
面向 LM Studio 的 27B Bonsai 模型 GGUF 转换版,含 3.80 GB 的 Q1_0 语言文件和 0.93 GB 的 BF16 视觉投影器。已测试文本、视觉和并行工具调用。
LibertAIDAI · 工具包
以每权重 2.9 位的 EXL3 量化运行 DeepSeek-V4.1-Flash-1017,这是一份 196 GiB 的副本,适合在自己硬件上部署大模型的人。困惑度与原模型相差不大。
facebook · 工具包
根据文字描述或音频提示生成短音乐片段,是 facebook MusicGen 的 small 检查点。适合想在自己电脑上试用文字生成音乐的开发者和音乐爱好者。
alpindale · 工具包
用一个只有约 984 个权重的小型神经网络,为 C 源代码的每个字符打上语法高亮标签,通过一个小小的 C 程序运行。适合对手工设计的网络好奇的开发者和研究者。
prithivMLmods · 工具包
在浏览器或你自己的电脑上,用一个 Gradio 应用试用 FLUX.2 Klein 图像模型的一组 LoRA。适合制作或测试 AI 图片的人。
Sokheng · 工具包
这个模型从文档、收据和路牌照片里读取高棉语和英语文字,用一个检测器找文本行,再用识别器读每一行。适合需要在 Python 里做高棉语 OCR 的开发者。