QVQ-72B,如期而至!繼QWQ后,通義千問又開源視覺推理大模型!
大家好,我是劉聰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)練得來的。
有個(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依然存在一些問題:
- 可能存在語言混亂的現(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
贊
收藏
回復(fù)
分享
微博
QQ
微信
舉報(bào)

回復(fù)
相關(guān)推薦