CLIP 零样本图像分类(纯 CPU 版)完整代码 + 极简解析
无需训练、无需 GPU,纯 CPU 即可完美运行,自定义分类标签,直接对本地图片完成分类推理,代码经过极致优化,无报错、不卡顿、内存占用低。基于 HuggingFace+PyTorch 调用 OpenAI 的 CLIP 模型,实现。
·
一、功能说明
基于 HuggingFace+PyTorch 调用 OpenAI 的 CLIP 模型,实现零样本图像分类,无需训练、无需 GPU,纯 CPU 即可完美运行,自定义分类标签,直接对本地图片完成分类推理,代码经过极致优化,无报错、不卡顿、内存占用低。
二、完整可运行代码(原版优化,注释精简)
# ========== 1. 配置HuggingFace国内镜像源(下载模型不超时,必须保留) ==========
import os
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com'
# ========== 2. 导入所有依赖库 ==========
import torch
from transformers import pipeline
# ========== 3. Windows系统核心要求:主程序入口(必须有这个判断!!!) ==========
if __name__ == '__main__':
# 初始化CLIP零样本图像分类管道 - 纯CPU完美适配版
clip = pipeline(
task="zero-shot-image-classification",
model="openai/clip-vit-base-patch32",
torch_dtype=torch.float32, # CPU专属配置,替换不支持的bfloat16
device=-1, # 强制使用CPU,避免GPU检测的额外问题
model_kwargs={"low_cpu_mem_usage": True}, # 降低CPU内存占用,低配电脑友好
use_fast=False # 关闭快速加载,彻底避免多进程报错
)
# 定义分类候选标签
labels = ["a photo of a cat", "a photo of a dog", "a photo of a car"]
# 推理本地图片 + 格式化打印结果
result = clip("test.png", candidate_labels=labels)
print("="*30)
print("✅ 分类推理结果成功!")
print("="*30)
for idx, item in enumerate(result, 1):
print(f"排名 {idx} | 标签: {item['label']} | 置信度: {item['score']:.6f}")
三、核心代码关键说明
✅ 核心配置(缺一不可,解决所有痛点)
- 国内镜像源:
os.environ['HF_ENDPOINT'] = 'https://hf-mirror.com',解决 HuggingFace 官方源下载模型慢、超时、连接失败问题,首次运行自动下载模型,速度拉满。 - Windows 必加:
if __name__ == '__main__':,彻底解决 transformers 库多进程加载模型的BrokenPipeError、卡死等 Windows 专属报错。 - CPU 完美适配:
torch_dtype=torch.float32:CPU 不支持bfloat16,该配置避免数据类型报错;device=-1:固定使用 CPU 运行,0 为 GPU,无显卡环境下直接跳过 GPU 检测;low_cpu_mem_usage=True:轻量化内存占用,低配电脑 / 8G 内存也能流畅运行;use_fast=False:关闭快速加载,保证运行稳定性。
✅ 核心功能亮点
- 零样本特性:无需训练、无需标注数据集,直接推理,开箱即用;
- 标签自由定制:
labels列表可随意修改,想分类什么内容直接改标签即可,支持中英文标签,无需改动其他代码; - 输入灵活:传入本地图片路径(png/jpg 均可),自动完成推理;
- 结果清晰:按置信度从高到低排序输出,置信度数值越高,匹配度越强。
四、运行方式
- 将需要分类的图片放在代码同目录,命名为
test.png(可修改代码中图片路径); - 直接运行代码,首次运行自动下载模型,后续运行无需重复下载;
- 控制台查看分类结果,包含排名、标签、置信度,一目了然。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)