alt.freeweights.vision / LLM2CLIP-Openai-L-14-224
From: microsoft <huggingface.co/microsoft>Newsgroups: alt.freeweights.visionSubject:

LLM2CLIP-Openai-L-14-224

Date: 2026-11-15Commit: 6b8a11aSigned: 2DC28CC7B26A283B ✓

Zero shot classification model with 578M parameters. Safetensors weights, 2.31 GB in all. Published by microsoft under Apache-2.0.

578M params2.31GBLLM2CLIP-Openai-L-14-224safetensorspermissive
FactsParams578MSize2.31 GBFormatssafetensorsTaskzero shot classificationLicenseApache-2.0From sourcepermissive
$ fw get microsoft/LLM2CLIP-Openai-L-14-224
# manifest sha256 25c143986e68… · 2.31 GB · 6 files
$ fw verify ./LLM2CLIP-Openai-L-14-224 microsoft/LLM2CLIP-Openai-L-14-224
From sourceHosted (signed)microsoft/LLM2CLIP-Openai-L-14-224Last check: 2026-11-15 04:14 UTC

Get help: custom fine-tune or private deploy. We review your setup before we quote.

Works with

Runs with

Ranked by fit to this model (safetensors), then by GitHub stars.

Overview

Size
2.31 GB
Weights
2.31 GB (safetensors)
Parameters
578M
Formats
safetensors
Task
zero shot classification
License
Apache-2.0 (permissive)
Files
6, each with a sha256
Publisher
microsoft
Added
2026-11-15
Section
alt.freeweights.vision
Lineage

Original release from the publisher.

Where these bytes come from
Publisher at the pinned commit→You

Sources are tried in order. A file counts only when its size and sha256 match the manifest. Sources are checked when you ask for them, not on a timer.

Sources
BadgeHostLast checkResult
From sourcehuggingface.co2026-11-15 04:14 UTCpassed

Model card

From the publisher at commit 6b8a11a. Shown as plain text with links; images open at the publisher.

LLM2CLIP: Extending the Capability Boundaries of CLIP through Large Language Models#

Weiquan Huang1*, Aoqi Wu1*, Yifan Yang2†, Xufang Luo2, Yuqing Yang2, Liang Hu1, Qi Dai2, Xiyang Dai2, Dongdong Chen2, Chong Luo2, Lili Qiu2

1Tongji Universiy, 2Microsoft Corporation *Equal contribution † Corresponding to: yifanyang@microsoft.com

📂 GitHub 🆕 Blog 📜 LLM2CLIP

In this paper, we propose LLM2CLIP, a novel approach that embraces the power of LLMs to unlock CLIP’s potential. By fine-tuning the LLM in the caption space with contrastive learning, we extract its textual capabilities into the output embeddings, significantly improving the output layer’s textual discriminability. We then design an efficient training process where the fine-tuned LLM acts as a powerful teacher for CLIP’s visual encoder. Thanks to the LLM’s presence, we can now incorporate longer and more complex captions without being restricted by vanilla CLIP text encoder’s context window and ability limitations. Our experiments demonstrate that this approach brings substantial improvements in cross-modal tasks. Our method directly boosted the performance of the previously SOTA EVA02 model by 16.5% on both long-text and short-text retrieval tasks, transforming a CLIP model trained solely on English data into a state-of-the-art cross-lingual model. Moreover, when integrated into mul- timodal training with models like Llava 1.5, it consistently outperformed CLIP across nearly all benchmarks, demonstrating comprehensive performance improvements.

LLM2CLIP performance#

Image: summary_tab

It's important to note that all results presented in the paper are evaluated using PyTorch weights. There may be differences in performance when using Hugging Face (hf) models.

Model Details#

  • Model Type: vision foundation model, feature backbone
  • Pretrain Dataset: CC3M, CC12M, YFCC15M and Recap-DataComp-1B(30M subset)

Usage#

Huggingface Version#

Image Embeddings

from PIL import Image
from transformers import AutoModel
from transformers import CLIPImageProcessor
import torch
import os

os.environ["CUDA_VISIBLE_DEVICES"] = "0"

image_path = "CLIP.png"
model_name_or_path = "microsoft/LLM2CLIP-Openai-L-14-224" # or /path/to/local/LLM2CLIP-Openai-L-14

processor = CLIPImageProcessor.from_pretrained("openai/clip-vit-large-patch14")
model = AutoModel.from_pretrained(
    model_name_or_path, 
    torch_dtype=torch.bfloat16,
    trust_remote_code=True).to('cuda').eval()

image = Image.open(image_path)
input_pixels = processor(images=image, return_tensors="pt").pixel_values.to('cuda')

with torch.no_grad(), torch.cuda.amp.autocast():
    outputs = model.get_image_features(input_pixels)

Retrieval

from PIL import Image
from transformers import AutoModel, AutoConfig, AutoTokenizer
from transformers import CLIPImageProcessor
import torch
from llm2vec import LLM2Vec
import os

os.environ["CUDA_VISIBLE_DEVICES"] = "0"

processor = CLIPImageProcessor.from_pretrained("openai/clip-vit-large-patch14")
model_name_or_path = "microsoft/LLM2CLIP-Openai-L-14-224" # or /path/to/local/LLM2CLIP-Openai-L-14
model = AutoModel.from_pretrained(
    model_name_or_path, 
    torch_dtype=torch.bfloat16,
    trust_remote_code=True).to('cuda').eval()

llm_model_name = 'microsoft/LLM2CLIP-Llama-3-8B-Instruct-CC-Finetuned'
config = AutoConfig.from_pretrained(
    llm_model_name, trust_remote_code=True
)
llm_model = AutoModel.from_pretrained(llm_model_name, torch_dtype=torch.bfloat16, config=config,trust_remote_code=True)
tokenizer = AutoTokenizer.from_pretrained(llm_model_name)
llm_model.config._name_or_path = 'meta-llama/Meta-Llama-3-8B-Instruct' #  Workaround for LLM2VEC
l2v = LLM2Vec(llm_model, tokenizer, pooling_mode="mean", max_length=512, doc_max_length=512)

captions = ["a diagram", "a dog", "a cat"]
image_path = "CLIP.png"

image = Image.open(image_path)
input_pixels = processor(images=image, return_tensors="pt").pixel_values.to('cuda')
text_features = l2v.encode(captions, convert_to_tensor=True).to('cuda')

with torch.no_grad(), torch.cuda.amp.autocast():
    image_features = model.get_image_features(input_pixels)
    text_features = model.get_text_features(text_features)

    image_features /= image_features.norm(dim=-1, keepdim=True)
    text_features /= text_features.norm(dim=-1, keepdim=True)

    text_probs = (100.0 * image_features @ text_features.T).softmax(dim=-1)

print("Label probs:", text_probs)

BibTeX & Citation#

@misc{huang2024llm2clippowerfullanguagemodel,
      title={LLM2CLIP: Powerful Language Model Unlock Richer Visual Representation}, 
      author={Weiquan Huang and Aoqi Wu and Yifan Yang and Xufang Luo and Yuqing Yang and Liang Hu and Qi Dai and Xiyang Dai and Dongdong Chen and Chong Luo and Lili Qiu},
      year={2024},
      eprint={2411.04997},
      archivePrefix={arXiv},
      primaryClass={cs.CV},
      url={https://arxiv.org/abs/2411.04997}, 
}

Files

6 files · 2.31 GBWeights 2.31 GB (safetensors). Sizes and sha256 from the signed manifest.
Hide all 6 files with their sha256
FileSizesha256
.gitattributes1.57 KB72202216d5d2650259b8ef1ba1603b20e6df311cded7d3ec3bf2dfd0b91c9a23
README.md5.51 KB0619b69449afc08266f70f05bb3a8c5844bbb392b8d211bc0474e56c3644577d
config.json700 Ba8c7ef382d3f011c4e7b08f557fd19be51fb17fee168a5b90fcb2337aed8dbc4
configuration_clip.py21.1 KBca17926fe7eeaea13db0c56eeae245e89d7121c51c04e1fdd73e3b1e23ba5c23
model.safetensors2.31 GBe8ddf30692072a370307cca0c89b0c53c84a7d7f3dd6eddf5b163bcb184fb0d9
modeling_clip.py72.2 KB9e18f25b8d294d8585fbf66dafb3cc6f6459aeb27474f3abcb42dd8e03c9878b
VersionsEach time the pinned upstream commit or file list changed in this repo. Newest first.
Upstream commitDateContents
6b8a11a94f pinned now2026-11-15 04:14 UTC6 files · 2.31 GB

Use it

$ fw get microsoft/LLM2CLIP-Openai-L-14-224
# manifest sha256 25c143986e68… · 2.31 GB · 6 files
$ fw verify ./LLM2CLIP-Openai-L-14-224 microsoft/LLM2CLIP-Openai-L-14-224
fw.pyChecks the signature and every sha256, tries each source in order, resumes.
$ python3 fw.py get https://freeweights.allternit.com/manifests/microsoft/LLM2CLIP-Openai-L-14-224.json --dir ./LLM2CLIP-Openai-L-14-224 $ python3 fw.py verify ./LLM2CLIP-Openai-L-14-224 ./microsoft__LLM2CLIP-Openai-L-14-224.json
hfThe Hugging Face CLI with one setting. Same repo id.
$ HF_ENDPOINT=https://freeweights.allternit.com hf download microsoft/LLM2CLIP-Openai-L-14-224 --revision 6b8a11a94ff380fa220dfefe73ac9293d2677575 --local-dir ./LLM2CLIP-Openai-L-14-224

License

Name
Apache License 2.0
Id
Apache-2.0
Class
Permissive
Redistribution
yes
Listing
Hosted (signed)
Decided
License as declared by the publisher. No person read it. 2026-11-15
Text in
README.md
Text sha256
0619b69449afc08266f70f05bb3a8c5844bbb392b8d211bc0474e56c3644577d
Terms gate
No extra terms beyond the license.

Read the license text

Licenses are checked against the license table. A custom license passes only after a person reads it.

Provenance

From: microsoft <huggingface.co/microsoft>Newsgroups: alt.freeweights.visionSubject: LLM2CLIP-Openai-L-14-224Date: 2026-11-15Commit: 6b8a11aSigned: 2DC28CC7B26A283B ✓
Upstream
microsoft/LLM2CLIP-Openai-L-14-224
Pinned commit
6b8a11a94ff380fa220dfefe73ac9293d2677575
Manifest
LLM2CLIP-Openai-L-14-224.json · .minisig
Manifest sha256
25c143986e68d818ef65b5ebf9a4491911b384a57fa74c55adba79e4a5b6fadc
Signature
minisign, Ed25519, key 2DC28CC7B26A283B
Created
2026-11-15 04:14 UTC
Generator
freeweights-manifest/0.1.0
Takedowns
None.

How to verify

$ curl -O https://freeweights.allternit.com/manifests/microsoft/LLM2CLIP-Openai-L-14-224.json $ curl -O https://freeweights.allternit.com/manifests/microsoft/LLM2CLIP-Openai-L-14-224.json.minisig $ minisign -Vm LLM2CLIP-Openai-L-14-224.json -P RWQ7KGqyx4zCLXtUFOqvfv8L3g+8fpKJ1FsuxPyOYMF+4KufbUxKq1Oq $ shasum -a 256 <file> # compare with the Files tab

A manifest whose signature fails must be rejected. A file whose size or sha256 does not match must be discarded. Verify a download

Model tree

No related models in this catalog.Nothing here lists this model as its parent, and it names no parent.
Get it
Download
$ HF_ENDPOINT=https://freeweights.allternit.com hf download microsoft/LLM2CLIP-Openai-L-14-224
Open in Freeweights Studio

Pull, verify and run it in the Allternit app on Desktop, web or phone.

Signed manifest
minisign, key 2DC28CC7B26A283B. LLM2CLIP-Openai-L-14-224.json. Provenance. Takedown history: none.
From: dima806 <huggingface.co/dima806>Subject: ai_vs_real_image_detection
From: legekka <huggingface.co/legekka>Subject: AI-Anime-Image-Detector-ViT
From: onnx-community <huggingface.co/onnx-community>Subject: AI-Anime-Image-Detector-ViT-ONNX
From: AICodexLab <huggingface.co/AICodexLab>Subject: answerdotai-ModernBERT-base-ai-detector
From: onnx-community <huggingface.co/onnx-community>Subject: answerdotai-ModernBERT-base-ai-detector-ONNX
From: onnx-community <huggingface.co/onnx-community>Subject: bart-large-cnn-ONNX