Zero-Shot Image Classification
Transformers
ONNX
Chinese
English
m2_encoder
feature-extraction
multimodal
image-text-retrieval
bilingual
chinese
english
vision-language
custom-code
custom_code
Eval Results (legacy)
Instructions to use malusama/M2-Encoder-1B with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use malusama/M2-Encoder-1B with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("zero-shot-image-classification", model="malusama/M2-Encoder-1B", trust_remote_code=True) pipe( "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/hub/parrots.png", candidate_labels=["animals", "humans", "landscape"], )# pip install -U transformers accelerate # Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("malusama/M2-Encoder-1B", trust_remote_code=True, device_map="auto") - Notebooks
- Google Colab
- Kaggle
Download vlmo/torchscale/architecture/utils.py from malusama/M2-Encoder-1B: direct link, hf CLI and curl.
- Browser
- Download file 1.27 kB
-
https://huggingface.co/malusama/M2-Encoder-1B/resolve/main/vlmo/torchscale/architecture/utils.py
- Command line
-
hf download hf://malusama/M2-Encoder-1B/vlmo/torchscale/architecture/utils.py
-
curl -L -o utils.py https://huggingface.co/malusama/M2-Encoder-1B/resolve/main/vlmo/torchscale/architecture/utils.py
1.27 kB
| # Copyright (c) 2022 Microsoft | |
| # Licensed under The MIT License [see LICENSE for details] | |
| import torch.nn as nn | |
| from vlmo.torchscale.component.multihead_attention import MultiheadAttention | |
| from vlmo.torchscale.component.multiway_network import MultiwayNetwork | |
| def init_bert_params(module): | |
| def normal_(data): | |
| data.copy_(data.cpu().normal_(mean=0.0, std=0.02).to(data.device)) | |
| if isinstance(module, nn.Linear): | |
| normal_(module.weight.data) | |
| if module.bias is not None: | |
| module.bias.data.zero_() | |
| if isinstance(module, nn.Embedding): | |
| normal_(module.weight.data) | |
| if module.padding_idx is not None: | |
| module.weight.data[module.padding_idx].zero_() | |
| if isinstance(module, MultiheadAttention): | |
| if isinstance(module.q_proj, MultiwayNetwork): | |
| normal_(module.q_proj.A.weight.data) | |
| normal_(module.q_proj.B.weight.data) | |
| normal_(module.k_proj.A.weight.data) | |
| normal_(module.k_proj.B.weight.data) | |
| normal_(module.v_proj.A.weight.data) | |
| normal_(module.v_proj.B.weight.data) | |
| else: | |
| normal_(module.q_proj.weight.data) | |
| normal_(module.k_proj.weight.data) | |
| normal_(module.v_proj.weight.data) | |