yujiepan / qwen2-vl-tiny-random

huggingface.co
Total runs: 232
24-hour runs: 0
7-day runs: 0
30-day runs: 0
Model's Last Updated: December 02 2024
text-generation

Introduction of qwen2-vl-tiny-random

Model Details of qwen2-vl-tiny-random

This model is for debugging. It is randomly initialized using the config from Qwen/Qwen2-VL-7B-Instruct but with smaller size.

Codes:

import os
from typing import Dict

import requests
import torch
import transformers
from PIL import Image
from torchvision import io
from transformers import (AutoConfig, AutoModelForCausalLM, AutoProcessor,
                          AutoTokenizer, GenerationConfig, pipeline, set_seed)
from transformers.models.qwen2_vl import Qwen2VLForConditionalGeneration

model_id = "Qwen/Qwen2-VL-7B-Instruct"
repo_id = "yujiepan/qwen2-vl-tiny-random"
save_path = f"/tmp/{repo_id}"

config = AutoConfig.from_pretrained(model_id, trust_remote_code=True)
config.hidden_size = 16
config.intermediate_size = 32
config.num_attention_heads = 2
config.num_hidden_layers = 2
config.num_key_value_heads = 1
config.vision_config.embed_dim = 16
config.vision_config.num_heads = 2
config.vision_config.hidden_size = 16
config.vision_config.depth = 2
config.rope_scaling['mrope_section'] = [1, 1, 2]  # sum needs to be 4 here

model = Qwen2VLForConditionalGeneration(config=config)
model = model.to(torch.bfloat16).cuda().eval()
model.generation_config = GenerationConfig.from_pretrained(
    model_id, trust_remote_code=True,
)
set_seed(42)
with torch.no_grad():
    for _, p in sorted(model.named_parameters()):
        torch.nn.init.uniform_(p, -0.3, 0.3)

processor = AutoProcessor.from_pretrained(model_id)
model.save_pretrained(save_path)
processor.save_pretrained(save_path)
os.system(f"ls -alh {save_path}")


def try_inference():
    url = "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg"
    image = Image.open(requests.get(url, stream=True).raw)
    conversation = [
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                },
                {"type": "text", "text": "Describe this image."},
            ],
        }
    ]
    processor = AutoProcessor.from_pretrained(save_path)
    model = Qwen2VLForConditionalGeneration.from_pretrained(
        save_path, torch_dtype=torch.bfloat16, device_map='cuda')
    text_prompt = processor.apply_chat_template(
        conversation, add_generation_prompt=True)
    inputs = processor(
        text=[text_prompt], images=[image], padding=True, return_tensors="pt"
    )
    inputs = inputs.to("cuda")
    output_ids = model.generate(**inputs, max_new_tokens=16)
    generated_ids = [
        output_ids[len(input_ids):]
        for input_ids, output_ids in zip(inputs.input_ids, output_ids)
    ]
    output_text = processor.batch_decode(
        generated_ids, skip_special_tokens=True, clean_up_tokenization_spaces=True
    )
    print(output_text)


try_inference()

Runs of yujiepan qwen2-vl-tiny-random on huggingface.co

232
Total runs
0
24-hour runs
0
3-day runs
0
7-day runs
0
30-day runs

More Information About qwen2-vl-tiny-random huggingface.co Model

qwen2-vl-tiny-random huggingface.co

qwen2-vl-tiny-random huggingface.co is an AI model on huggingface.co that provides qwen2-vl-tiny-random's model effect (), which can be used instantly with this yujiepan qwen2-vl-tiny-random model. huggingface.co supports a free trial of the qwen2-vl-tiny-random model, and also provides paid use of the qwen2-vl-tiny-random. Support call qwen2-vl-tiny-random model through api, including Node.js, Python, http.

qwen2-vl-tiny-random huggingface.co Url

https://huggingface.co/yujiepan/qwen2-vl-tiny-random

yujiepan qwen2-vl-tiny-random online free

qwen2-vl-tiny-random huggingface.co is an online trial and call api platform, which integrates qwen2-vl-tiny-random's modeling effects, including api services, and provides a free online trial of qwen2-vl-tiny-random, you can try qwen2-vl-tiny-random online for free by clicking the link below.

yujiepan qwen2-vl-tiny-random online free url in huggingface.co:

https://huggingface.co/yujiepan/qwen2-vl-tiny-random

qwen2-vl-tiny-random install

qwen2-vl-tiny-random is an open source model from GitHub that offers a free installation service, and any user can find qwen2-vl-tiny-random on GitHub to install. At the same time, huggingface.co provides the effect of qwen2-vl-tiny-random install, users can directly use qwen2-vl-tiny-random installed effect in huggingface.co for debugging and trial. It also supports api for free installation.

qwen2-vl-tiny-random install url in huggingface.co:

https://huggingface.co/yujiepan/qwen2-vl-tiny-random

Url of qwen2-vl-tiny-random

qwen2-vl-tiny-random huggingface.co Url

Provider of qwen2-vl-tiny-random huggingface.co

yujiepan
ORGANIZATIONS

Other API from yujiepan