新闻详情

新闻详情

首页 / 资讯中心 / 详情

CLIP 上手指南:安装、首次运行到零样本分类

发布时间:2026/9/3 11:39:26来源:尧图网络
CLIP 上手指南:安装、首次运行到零样本分类
CLIP 上手指南安装、首次运行到零样本分类【免费下载链接】CLIPCLIP (Contrastive Language-Image Pretraining), Predict the most relevant text snippet given an image项目地址: https://gitcode.com/GitHub_Trending/cl/CLIP手上有一批图片想给它们挑出最贴切的文字描述但不想为每个类别单独训练分类器CLIPContrastive Language-Image Pretraining把图像和文本编码到同一向量空间直接按相似度打分就能零样本地从候选文字里选出与图片最匹配的一项。本文覆盖安装、一次跑通验证和一个完整的零样本分类示例不展开模型结构细节也不涉及微调训练。两条编码器CLIP 的输入、处理与输出CLIP 用海量图像文本配对做对比预训练图像编码器与文本编码器各自把输入压成向量正对样本相互拉近、负对样本相互推远。推理时不再针对具体任务训练——把候选文字送入文本编码器与图像向量算余弦相似度得分最高者即最匹配项。对代码而言输入是 PIL 图片和字符串列表处理只有一步clip.load(ViT-B/32)它会下载权重并返回模型和配套的预处理函数preprocess输出是归一化后的相似度概率。model(image, text)直接返回 logit相似度乘 100model.encode_image/model.encode_text则返回可自己处理的特征向量。三步装好环境先确认环境里有 PyTorch1.7.1。若机器带 CUDA GPU用下面的 conda 命令安装否则纯 CPU 或 macOS 默认环境改用pip安装 CPU 版本# CUDA GPU conda install --yes -c pytorch pytorch1.7.1 torchvision cudatoolkit11.0 # 纯 CPU / macOS pip install torch torchvision其余小依赖与仓库 requirements.txt 一致一条命令装齐pip install ftfy regex tqdm packaging最后把仓库作为 Python 包安装之后任何目录都能import clipgit clone https://gitcode.com/GitHub_Trending/cl/CLIP cd CLIP pip install .环境差异CUDA GPU用 conda 装pytorchcudatoolkit版本号按本机 CUDA 调整纯 CPU / macOS用 pip 装 CPU 版 torch不需要 cudatoolkit离线环境提前把权重放到~/.cache/clip/再执行pip install .30 秒验证是否跑通把仓库根目录的CLIP.png当输入跑下面这段最短验证代码。首次运行会下载ViT-B/32权重约数百 MB属正常等待import torch import clip from PIL import Image device cuda if torch.cuda.is_available() else cpu model, preprocess clip.load(ViT-B/32, devicedevice) image preprocess(Image.open(CLIP.png)).unsqueeze(0).to(device) text clip.tokenize([a diagram, a dog, a cat]).to(device) with torch.no_grad(): image_features model.encode_image(image) text_features model.encode_text(text) logits_per_image, _ model(image, text) probs logits_per_image.softmax(dim-1).cpu().numpy() print(probs)预期输出是一个长度为 3 的概率数组例如[[0.9928 0.0042 0.003]]。判读标准第一项对应a diagram接近 1 即环境正确若三项接近均分或报FileNotFoundError检查CLIP.png是否和脚本在同一目录、权重是否下载完整。完整跑一个零样本分类在 100 个标签里挑 Top 5这是 README.md 的 CIFAR-100 示例取数据集里第 3637 张图在 100 个文本标签里选最可能的 5 个。核心就四步——加载模型、取一张图、把每个标签拼成a photo of a {class}再 tokenize、特征归一化后算相似度import os import clip import torch from torchvision.datasets import CIFAR100 device cuda if torch.cuda.is_available() else cpu model, preprocess clip.load(ViT-B/32, device) cifar100 CIFAR100(rootos.path.expanduser(~/.cache), downloadTrue, trainFalse) image, class_id cifar100[3637] image_input preprocess(image).unsqueeze(0).to(device) text_inputs torch.cat([clip.tokenize(fa photo of a {c}) for c in cifar100.classes]).to(device) with torch.no_grad(): image_features model.encode_image(image_input) text_features model.encode_text(text_inputs) image_features / image_features.norm(dim-1, keepdimTrue) text_features / text_features.norm(dim-1, keepdimTrue) similarity (100.0 * image_features text_features.T).softmax(dim-1) values, indices similarity[0].topk(5) print(\nTop predictions:\n) for value, index in zip(values, indices): print(f{cifar100.classes[index]:16s}: {100 * value.item():.2f}%)预期输出类似snake: 65.31%排第一其后是turtle、sweet_pepper等数值因设备略有差异。延伸方向把a photo of a {c}换成自己的业务措辞对比不同 prompt 的影响参考 notebooks/Prompt_Engineering_for_ImageNet.ipynb需要更高吞吐时换更小的RN50模型。四个高频卡点与对应解法现象原因解决ModuleNotFoundError: No module named torchPyTorch 未装或版本低于 1.7.1按上节条件分支重装torch与torchvisionclip.load长时间无响应权重正从远程下载数百 MB配代理或手动把权重放进~/.cache/clip/CUDA out of memory显存不足换RN50等更小模型或减小输入尺寸ImportError: cannot import name tokenize from clipimport clip命中的不是本仓库而是其他同名包在仓库根目录执行pip install .后重开 Python 进程相关资源与下一步官方用法与 API 说明README.md模型加载、分词与下载逻辑clip/clip.py图像/文本编码器结构clip/model.py训练数据与局限性model-card.md交互式图文打分演示notebooks/Interacting_with_CLIP.ipynb建议先复现上面的 CIFAR-100 Top-5 案例再把 100 个标签换成自己的业务文本验证相似度排序是否符合预期。【免费下载链接】CLIPCLIP (Contrastive Language-Image Pretraining), Predict the most relevant text snippet given an image项目地址: https://gitcode.com/GitHub_Trending/cl/CLIP创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

前端设计去模板感:4步决策链,让页面不再像AI生成的 2026/9/3 12:21:36

前端设计去模板感:4步决策链,让页面不再像AI生成的

前端设计去模板感:4步决策链,让页面不再像AI生成的 【免费下载链接】skills Public repository for Agent Skills 项目地址: https://gitcode.com/GitHub_Trending/skills3/skills skills/frontend-design/ 是仓库里的一个前端设计技能&#xff0…

阅读更多 →
华为逆变器Modbus TCP远程采集实战指南 2026/9/3 12:21:36

华为逆变器Modbus TCP远程采集实战指南

简介:本资源是一套面向工业物联网开发者与能源系统工程师的华为逆变器远程数据采集实践方案,聚焦Modbus TCP协议在太阳能发电监控场景中的落地应用,解决智能设备实时状态获取、能源参数解析与系统集成等核心问题。压缩包共58个文件&#xff0…

阅读更多 →
Vercel AI SDK与AI Gateway:统一模型接入与访问策略的工程实践 2026/9/3 12:21:36

Vercel AI SDK与AI Gateway:统一模型接入与访问策略的工程实践

现在做 LLM 应用,最“快乐”的时刻往往是第一次调通 API 的那五分钟。你写一个 Prompt,拿到一段文本,把它像奖杯一样打印到终端里。真正的麻烦是从第二个模型开始的:厂商 A 的 SDK 有自己的方法名,厂商 B 的消息数组要…

阅读更多 →
CPU开盖降温30度:原理、风险与20元低成本实操指南 2026/9/3 12:21:36

CPU开盖降温30度:原理、风险与20元低成本实操指南

最近很多玩家发现自己的CPU温度居高不下,尤其是那些还在用老款Intel处理器的用户。夏天一到,游戏帧数直接腰斩,风扇噪音堪比直升机起飞。换散热器?动辄几百元;换CPU?更是上千元的投入。但你可能不知道&…

阅读更多 →
Grok Bot接入微软办公生态:Outlook、Calendar、OneDrive插件与Graph API实践指南 2026/9/3 12:21:36

Grok Bot接入微软办公生态:Outlook、Calendar、OneDrive插件与Graph API实践指南

近期 Grok Bot 的动态很有意思:官方把插件能力扩展到了微软办公生态,可以在 Outlook 邮件、Calendar 日历、OneDrive 云盘之间帮你读取、检索和整理信息。简单说,AI 不再只活在聊天窗口里,而是开始接触真实的办公数据。这类更新通…

阅读更多 →
AI编程代理为何看不见数据结构选型错误?性能瓶颈的深层解码 2026/9/3 12:18:35

AI编程代理为何看不见数据结构选型错误?性能瓶颈的深层解码

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞