Downloads · 30 days
20
13% of all-time downloads
GreenMap/qwen3-vl-2b-ru-blueprint-extractor
qwen3-vl-2b-ru-blueprint-extractor is a image-text-to-text model from GreenMap. Use it for the image-text-to-text task on the model card, and read the license before you ship it in a product. The card lists the license as apache-2.0.
<font color="red"Если вы читаете это значит модель очень сырая. И использовать ее не рекомендуется.</font
Downloads · 30 days
20
13% of all-time downloads
All-time downloads
158
Public
Parameters
2.1B
4.3 GB on disk
Likes
0
Public
Click a slice to open those files.
.safetensors4.3 GB · 100%
From the Hugging Face model README
<font color="red">Если вы читаете это значит модель очень сырая. И использовать ее не рекомендуется.</font>
Мультимодальная модель для извлечения длины и типа стены по строительным чертежам.
Основана на Qwen/Qwen3-VL-2B-Instruct и дообучена на задаче анализа фрагментов чертежей с выделенными красным прямоугольником объектами. Модель будет обновляться в будующем.
Модель возвращает результат строго в формате JSON.
На вход подается изображение и текстовый запрос:
Верни тип и длину выделенного красным прямоугольником элемента на плане. Тип бери из справочника типов. Если элемента нет в справочнике, верни {{}}. Если длину определить нельзя, верни length: null. Если длина найдена только после продолжения стены, заполни extended_wall. Верни в формате JSON: {{"extended_wall": {{"type": 0, "length": null}}, "walls": [{{"type": 0, "length": null}}]}}
Справочник типов: {objects_types}
где {objects_types} это {"Неизвестно": 3, "Стена_4": 9, "Окно": 0, ...}
{
"extended_wall": {
"type": 0,
"length": null
},
"walls": [
{
"type": 0,
"length": null
}
]
}
Если объект не является стеной:
{}
from transformers import AutoProcessor
from transformers import AutoModelForImageTextToText
from PIL import Image
import torch
MODEL_NAME = "GreenMap/qwen3-vl-2b-ru-blueprint-extractor"
processor = AutoProcessor.from_pretrained(
MODEL_NAME,
trust_remote_code=True,
)
model = AutoModelForImageTextToText.from_pretrained(
MODEL_NAME,
trust_remote_code=True,
dtype=torch.bfloat16,
).cuda()
image = Image.open("drawing.png").convert("RGB")
messages = [
{
"role": "user",
"content": [
{"type": "image", "image": image},
{
"type": "text",
"text": (
"Запрос из файла."
),
},
],
}
]
text = processor.apply_chat_template(
messages,
tokenize=False,
add_generation_prompt=True,
)
inputs = processor(
text=[text],
images=[image],
return_tensors="pt",
)
inputs = {
k: v.cuda()
for k, v in inputs.items()
}
with torch.no_grad():
generated = model.generate(
**inputs,
max_new_tokens=256,
do_sample=False,
)
answer = processor.decode(
generated[0],
skip_special_tokens=True,
)
print(answer)
max_new_tokens=256
do_sample=False
temperature=0.0
Qwen/Qwen3-VL-2B-Instruct