Views
No views yet
pip install transformers torch pillow1from transformers import Idefics3ForConditionalGeneration, AutoProcessor
2from PIL import Image
3import requests
4
5# Load model and processor
6model = Idefics3ForConditionalGeneration.from_pretrained(
7 "ronantakizawa/SmolVLM-Instruct-GPTQ-4bit",
8 device_map="auto",
9 torch_dtype="auto"
10)
11processor = AutoProcessor.from_pretrained("ronantakizawa/SmolVLM-Instruct-GPTQ-4bit")
12
13# Load an image
14url = "https://huggingface.co/spaces/merve/chatml-llava/resolve/main/bee.jpg"
15image = Image.open(requests.get(url, stream=True).raw)
16
17# Create prompt
18messages = [
19 {
20 "role": "user",
21 "content": [
22 {"type": "image"},
23 {"type": "text", "text": "Describe this image in detail."}
24 ]
25 }
26]
27
28# Generate
29prompt = processor.apply_chat_template(messages, add_generation_prompt=True)
30inputs = processor(text=prompt, images=[image], return_tensors="pt").to(model.device)
31
32generated_ids = model.generate(**inputs, max_new_tokens=500)
33generated_texts = processor.batch_decode(
34 generated_ids,
35 skip_special_tokens=True,
36)
37
38print(generated_texts[0])1pip install vllm
2
3python -m vllm.entrypoints.openai.api_server \
4 --model ronantakizawa/SmolVLM-Instruct-GPTQ-4bit \
5 --quantization gptq \
6 --dtype auto1from openai import OpenAI
2
3client = OpenAI(
4 base_url="http://localhost:8000/v1",
5 api_key="dummy"
6)
7
8response = client.chat.completions.create(
9 model="ronantakizawa/SmolVLM-Instruct-GPTQ-4bit",
10 messages=[
11 {
12 "role": "user",
13 "content": [
14 {"type": "image_url", "image_url": {"url": "https://example.com/image.jpg"}},
15 {"type": "text", "text": "What's in this image?"}
16 ]
17 }
18 ]
19)
20
21print(response.choices[0].message.content)1GPTQModifier(
2 targets="Linear",
3 scheme="W4A16",
4 ignore=[
5 "re:.*lm_head",
6 "re:.*vision_model.*",
7 "re:.*connector.*",
8 "re:.*vision_tower.*"
9 ]
10)LlamaDecoderLayer| Metric | Value |
|---|---|
| Original Size | 4.4 GB |
| Quantized Size | 1.97 GB |
| Compression Ratio | 2.23x (55% reduction) |
| GPU Memory (inference) | ~2-3 GB |
| Vision Quality | Preserved (no degradation) |
| Text Quality | Under 1% quality degradation in DocVQA |
1@misc{smolvlm2024,
2 title={SmolVLM: Small Vision-Language Model},
3 author={HuggingFace Team},
4 year={2024},
5 publisher={HuggingFace},
6 url={https://huggingface.co/HuggingFaceTB/SmolVLM-Instruct}
7}1@software{llmcompressor2024,
2 title={LLM Compressor},
3 author={Neural Magic},
4 year={2024},
5 url={https://github.com/vllm-project/llm-compressor}
6}