自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

QVQ-72B,如期而至!繼QWQ后,通義千問又開源視覺推理大模型!

發(fā)布于 2024-12-25 12:12
瀏覽
0收藏

大家好,我是劉聰NLP。

沒錯(cuò),是的,對(duì)的,很棒,千問!

QWQ之后,千問團(tuán)隊(duì)又開源了視覺推理大模型QVQ,是72B的呦。

圣誕快樂,如期而至!

HF: https://huggingface.co/Qwen/QVQ-72B-Preview

為啥是72B,可想而知,這個(gè)QVQ就是基于前一段時(shí)間開源的Qwen2-VL-72B模型上進(jìn)一步訓(xùn)練得來的。

QVQ-72B,如期而至!繼QWQ后,通義千問又開源視覺推理大模型!-AI.x社區(qū)

有個(gè)7B的為啥沒出QVQ-7B,估計(jì)是參數(shù)來太少,做o1式推理效果不行,QWQ也是32B起步的,所以模型參數(shù)量很關(guān)鍵。

在榜單上的效果,QVQ在MMMU是突破了70,并且整體效果相較于Qwen2-VL-72B還是好了很多,同時(shí)也是對(duì)標(biāo)了閉源模型,QVQ依舊能打。

QVQ-72B,如期而至!繼QWQ后,通義千問又開源視覺推理大模型!-AI.x社區(qū)

但QVQ-72B依然存在一些問題:

  • 可能存在語言混亂的現(xiàn)象,最明顯的就是中英文夾雜
  • 模型容易陷入循環(huán)推理,導(dǎo)致回復(fù)結(jié)果冗長(zhǎng),甚至可能無法返回最終答案
  • 安全性可能有些問題,估計(jì)這個(gè)版本在安全上應(yīng)該沒來及的做太多,甚至是沒做
  • QVQ不能完全替代Qwen2-VL-72B,隨著推理步驟的驗(yàn)證,模型可能逐漸失去對(duì)圖像內(nèi)容的關(guān)注,從而產(chǎn)生幻覺。

模型,我還在下載,測(cè)試完,再寫評(píng)測(cè)文章!

用法跟Qwen2-VL-72B一樣,HF代碼如下:

from transformers import Qwen2VLForConditionalGeneration, AutoTokenizer, AutoProcessor
from qwen_vl_utils import process_vision_info

# 模型通過HF Repo加載
model = Qwen2VLForConditionalGeneration.from_pretrained(
    "Qwen/QVQ-72B-Preview", torch_dtype="auto", device_map="auto"
)

# 加載processor
processor = AutoProcessor.from_pretrained("Qwen/QVQ-72B-Preview")

# 這里的系統(tǒng)提示詞跟之前有差別
messages = [
    {
        "role": "system",
        "content": [
            {"type": "text", "text": "You are a helpful and harmless assistant. You are Qwen developed by Alibaba. You should think step-by-step."}
        ],
    },
    {
        "role": "user",
        "content": [
            {
                "type": "image",
                "image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/QVQ/demo.png",
            },
            {"type": "text", "text": "What value should be filled in the blank space?"},
        ],
    }
]

# 輸入準(zhǔn)備
text = processor.apply_chat_template(
    messages, tokenize=False, add_generation_prompt=True
)
image_inputs, video_inputs = process_vision_info(messages)
inputs = processor(
    text=[text],
    images=image_inputs,
    videos=video_inputs,
    padding=True,
    return_tensors="pt",
)
inputs = inputs.to("cuda")

# 模型推理
generated_ids = model.generate(**inputs, max_new_tokens=8192)
generated_ids_trimmed = [
    out_ids[len(in_ids) :] for in_ids, out_ids in zip(inputs.input_ids, generated_ids)
]
output_text = processor.batch_decode(
    generated_ids_trimmed, skip_special_tokens=True, clean_up_tokenization_spaces=False
)
print(output_text)

本文轉(zhuǎn)載自 ??NLP工作站??,作者: 劉聰NLP

標(biāo)簽
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦