news 2026/8/29 18:02:29

借助 AI 从 0 到 1 搭建图像对比服务(三):CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
借助 AI 从 0 到 1 搭建图像对比服务(三):CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型

借助 AI 从 0 到 1 搭建图像对比服务(三):CLIP 特征提取——AI 帮我落地一个我压根没碰过的模型

一、场景:怎么让机器"看懂"一张图

上一篇方案定下来了,四只眼睛的骨架有了。这一篇开始,我们进入第一只眼睛——让机器像人一样"看懂"图,判断两张图内容像不像

这步要用到的东西叫 CLIP。说实话,这词我之前只在网上扫过几眼,从没碰过,更别提落地了。

但这次我心里有底,因为我打算用前面说过的AI话术:先让 AI 把它讲成人话,再让它给代码,我自己验收。这一整篇,就是这个过程的实录。

二、先让 AI 把 CLIP 讲成人话

我没急着让它写代码,第一句话是问"这是啥、为啥能比图"。

我要做图像相似度对比,你建议用 CLIP。 但你先别写代码。先用人话给我讲清楚: 1. CLIP 到底是个啥,它怎么做到"看懂"图的 2. 为什么它能判断两张图像不像 3. 我这个场景(中文、工业图)该用哪个版本 我要先听懂,再动手。

AI 给我的解释,我翻译一下大意:

CLIP 干的事,就是把图变成一串数字。同一张图,不管你怎么旋转、缩放,只要内容没变,变出来的数字就接近。两张图内容像不像,比这两串数字离得近不近就行——离得近就是像,离得远就是不像。

它还补了一句关键的话:这串数字代表的是"内容的意思",不是"像素长什么样"。所以一只猫的图和一张猫的简笔画,数字也会比较近——因为意思都是"猫"。这正是我想要的:我要比的是"内容像不像",不是"像素一模一样"。

我把这段话复述给自己听——“把图变成一串代表意思的数字,比数字远近”,通了。这就是第一关:先把原理验收过,再往下走。

关于版本,它建议用 ChineseCLIP(中文版的 CLIP),因为我的场景是中文工业图,中文版对中文场景理解更准。我采纳了。

三、给 AI 的指令:让它一步步落地

原理过了,我开始让它落地。但我不让它一次吐一坨,而是逼它一步步来,每步先说在干啥

现在落地 CLIP 特征提取。约束: - 用 ChineseCLIP(ModelScope 的) - 每一步先讲你要干啥、为啥这么干,再给代码 - 图片输入是网址,不是本地文件 分这几步给我: 1. 加载模型 2. 把图预处理成模型能吃的样子 3. 提取特征(那串数字) 4. 算两张图的相似度

你看,我又是先把规矩砸给它:讲清楚每步在干啥、用哪个版本、输入是网址。这就是"约束前置"。

四、AI 的产出 + 我的验收:四个步骤

AI 按四步给了东西,我一步一步验收。其中有两个地方我卡过,正好拿出来讲。

第 1 步:加载模型

这步没太多花样,就是把 ChineseCLIP 的"模型本体"和"处理器"加载进来。处理器是干啥的?AI 说:模型只认它自己习惯的输入格式,处理器就是负责把图"翻译"成模型能吃的样子。

第 2 步:图片预处理

这步它干了三件事:先检查图能不能用(质量校验,烂图直接报错),再把图缩放到模型要的尺寸(Resize),最后交给处理器转成模型要的格式。

第 3 步:提取特征

这步就是真正"把图变成一串数字"那一下,调用模型的一个方法(get_image_features)拿到那串数字。

第 4 步:算相似度(这里我卡过)

这一步 AI 给我抛了个我不懂的东西:归一化。它说算相似度之前,要先把那串数字"归一化"一下。

我第一次见这词,没敢直接用。我让它讲:

等等,"归一化"是啥?为什么要这一步?不归一化会怎样?先讲人话。

AI 给的解释,大意是:每张图变出来的那串数字,长短可能不一样。如果不归一化,你比的不是"方向像不像",而是"谁的数字长",这不公平。归一化就是把每串数字都拉成一样长,这样比的就是方向,方向近才是真的像

我拿个比喻复述给自己听:两根箭头,比它们指的方向像不像,得先把它们都拉成一样长再比,不然长的那根永远占便宜。通了。

这就是第二个关键点:遇到不懂的词,立刻停下来让它讲人话,复述通了再继续。我没跳过"归一化"直接用,要是跳了,后面相似度算出来不对,我都不知道哪儿出的问题。

五、踩的坑:相似度到底用哪个算法算

这里还有一个坑。算"两串数字离得多近",AI 一开始给了三种算法让我选:余弦相似度(cosine)、欧氏距离(L2)、点积(dot)。

我又不懂这三个该选哪个。我让它给我讲区别:

这三种相似度算法,在我的场景里该选哪个?为什么? 分别讲一下它们在比什么、有啥区别。别只给结论。

AI 给的解释大意是:cosine 比的是方向,L2 比的是绝对距离,dot 既受方向影响也受长度影响。我的场景已经归一化了(长度都一样了),那 dot 和 cosine 就等价了;L2 也能用,但归一化后 cosine 更直观、范围固定在 -1 到 1。

最后我让它默认用 cosine,同时把三种都留着,万一以后要换。这个决策不是我拍脑袋,是听完解释后做的判断。

六、小结:AI 在"陌生技术落地"上的能力

到这一篇结束,CLIP 这块跑通了。我对 AI 在"落地陌生技术"这个环节的能力,心里有数了:

  • 它特别会"把黑话讲成人话":归一化、相似度算法这些词,它都能用比喻讲明白。这是我用它最值钱的一招——遇到不懂的词,立刻停下来让它讲,不要跳。
  • 它不会替你判断"该选哪个":三种相似度算法它会列给你,但选哪个,它只能给建议,决定得你来。你得听完解释,自己做主。
  • 你得愿意"反向审"它:每一步它讲完,我都复述给自己听,通了才往下走。这一步偷懒,后面全是雷。

说白了,CLIP 这块从头到尾,我没写过任何代码,但我"全程都懂在干嘛"。这就是上一章说的那句话落地了:AI 把门槛从"我得先学会写",降到了"我得能判断对不对"。

七、下篇预告

CLIP 这只眼睛能看"内容像不像"了。下一篇我们进第二只眼睛——照片的"出生证":EXIF

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/29 17:59:04

Transformer策略网络在线蒸馏:为什么用反向KL而非正向KL?

这次我们不聊一个新模型仓库,也不聊一键启动 WebUI,而是把一个容易被忽略的数学细节拆开讲清楚:Transformer 策略网络在做在线策略蒸馏(Online Policy Distillation,OPD)时,为什么很多实现会把目…

作者头像 李华
网站建设 2026/8/29 17:54:14

个人 AI 记忆系统怎么搭:热记忆、温记忆和冷记忆

很多人说自己想要一个“记得我的 AI”,但真正开始记录之后,马上会遇到两个相反的问题:AI 什么都不记,下一次还要重复解释;AI 什么都记,几天后上下文里充满无关细节,真正重要的决定反而找不到。 …

作者头像 李华
网站建设 2026/8/29 17:53:16

从0到1构建AI应用:Agent工作流与工程化实践

OpenAI Build Week 获奖项目揭晓之后,许多人把注意力放在获奖名单和炫酷 demo 上,但真正值得拆解的,是这些作品从 idea 到可运行产品的完整 build 过程。Build Week 这类活动比拼的不是谁记的 API 多,而是谁能在有限时间内完成从需…

作者头像 李华
网站建设 2026/8/29 17:53:00

129、点云分割:从PointNet到PointNet++的点云语义理解

129、点云分割:从PointNet到PointNet++的点云语义理解 上周调试一个机械臂抓取场景,点云分割模型在桌面上把杯子和背景点糊成一团,我盯着TensorBoard里那团蓝绿色的点云看了半小时,最后发现是输入点云没有做归一化——坐标值直接喂进了网络,PointNet的MLP被大数值坐标直接…

作者头像 李华
网站建设 2026/8/29 17:51:18

AI入口收费时代:看懂计费模型与成本控制策略

最近,很多人的日常使用里都出现了同一个变化:原本一直免费或很少提收费的AI工具,开始频繁触及付费线。聊天机器人刚把问答体验做顺,弹窗就跳出来让升级会员;在线绘图网站生成几次后,界面提示剩余额度不足&a…

作者头像 李华
网站建设 2026/8/29 17:49:32

MiniMax-M3智能体实战:低成本工具调用与批量任务部署指南

这次我们来看一个聚焦“智能体任务”的模型:MiniMax-M3。项目名字里的关键词有两个,一个是 MiniMax,一个是 M3。它要解决的不是“聊天更好玩”,而是“把智能体任务跑得更便宜、更稳定”。如果你正在做智能体开发,一定会…

作者头像 李华