|
|
--- |
|
|
license: apache-2.0 |
|
|
language: |
|
|
- zh |
|
|
- en |
|
|
tags: |
|
|
- qwen |
|
|
- qwen2.5-vl |
|
|
- image-captioning |
|
|
- multimodal |
|
|
- nsfw |
|
|
- long-caption |
|
|
library_name: transformers |
|
|
base_model: |
|
|
- Qwen/Qwen2.5-VL-7B-Instruct |
|
|
- XiaomiMiMo/MiMo-VL-7B-RL-2508 |
|
|
--- |
|
|
# 模型名称:thesby/Qwen2.5-VL-7B-NSFW-Caption-V4 |
|
|
|
|
|
## 模型简介 (Model Description) |
|
|
|
|
|
**thesby/Qwen2.5-VL-7B-NSFW-Caption-V4** 是一个专为高质量图像描述(Image Captioning)而优化的多模态大模型。该模型基于强大的 `Qwen/Qwen2.5-VL-7B-Instruct` 进行Lora微调,旨在提供卓越的图像理解和描述生成能力。 |
|
|
|
|
|
我们在一个包含约 **200 万** 高质量图文对的混合数据集上对模型进行了训练,使其在多个维度上都表现出色。相比于 V3,V4模型加入了更多 NSFW 数据和人工标注数据。 |
|
|
|
|
|
### 主要特点 (Key Features) |
|
|
|
|
|
1. **超高质量的图片描述能力 (Ultra-High Quality Captions)**: |
|
|
模型能够精准捕捉图像中的核心主体、环境背景、人物情绪、物体材质和光影等丰富细节,描述能力超过 gpt4.1-mini,接近于 gemini-2.5-flash。 |
|
|
2. **SFW & NSFW 内容全覆盖 (Support for both SFW & NSFW Content)**: |
|
|
经过特殊的数据集训练,模型能够有效识别并描述 SFW (Safe for Work) 和 NSFW (Not Safe for Work) 类型的图像内容。无论是日常生活场景还是成人向内容,都能生成恰当且信息丰富的描述,极大地拓宽了模型的适用边界。 |
|
|
3. **超长文本描述能力 (Long-form Detailed Description)**: |
|
|
与传统模型生成简短标题不同,本模型擅长对复杂的图像场景进行详尽入微的描绘。它可以生成包含数百个单词的详细段落,深入分析图像的叙事结构和潜在含义,尤其适合需要深度内容解读的应用场景。 |
|
|
## 如何使用 (How to Use) |
|
|
|
|
|
使用方式和 Qwen/Qwen2.5-VL-7B-Instruct 完全相同,模型在图片最大尺寸 800*800 微调,遵从这一限制可以获得更好的效果。 |
|
|
```python |
|
|
from transformers import Qwen2_5_VLForConditionalGeneration, AutoTokenizer, AutoProcessor |
|
|
from qwen_vl_utils import process_vision_info |
|
|
# default: Load the model on the available device(s) |
|
|
model = Qwen2_5_VLForConditionalGeneration.from_pretrained( |
|
|
"thesby/Qwen2.5-VL-7B-NSFW-Caption-V4", torch_dtype="auto", device_map="auto" |
|
|
) |
|
|
# default processer |
|
|
processor = AutoProcessor.from_pretrained("thesby/Qwen2.5-VL-7B-NSFW-Caption-V4") |
|
|
# The default range for the number of visual tokens per image in the model is 4-16384. |
|
|
# You can set min_pixels and max_pixels according to your needs, such as a token range of 256-1280, to balance performance and cost. |
|
|
# min_pixels = 256*28*28 |
|
|
# max_pixels = 800 * 800 |
|
|
# processor = AutoProcessor.from_pretrained("thesby/Qwen2.5-VL-7B-NSFW-Caption-V4", min_pixels=min_pixels, max_pixels=max_pixels) |
|
|
messages = [ |
|
|
{ |
|
|
"role": "user", |
|
|
"content": [ |
|
|
{ |
|
|
"type": "image", |
|
|
"image": "https://qianwen-res.oss-cn-beijing.aliyuncs.com/Qwen-VL/assets/demo.jpeg", |
|
|
}, |
|
|
{"type": "text", "text": "请用自然流畅的中文对以下图片进行全面而详细的描述。包括所有可见元素及其属性(如颜色、大小、形状、质地),它们的空间关系,以及任何显著特征或上下文。确保用自然流畅的中文描述清晰、生动,能够捕捉图片的每一个方面,不遗漏任何重要细节。"}, |
|
|
], |
|
|
} |
|
|
] |
|
|
# Preparation for inference |
|
|
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") |
|
|
# Inference: Generation of the output |
|
|
generated_ids = model.generate(**inputs, max_new_tokens=128) |
|
|
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) |
|
|
``` |
|
|
## 用途与限制 (Uses and Limitations) |
|
|
### 预期用途 (Intended Uses) |
|
|
* **自动化内容标注**:为海量图片生成高质量的描述和标签,用于内容管理、检索和推荐系统。 |
|
|
* **无障碍辅助功能**:为视障用户描述图像内容,帮助他们理解视觉信息。 |
|
|
* **创意内容生成**:作为灵感来源,为艺术创作、故事写作、广告文案等提供基于图像的文本描述。 |
|
|
* **数字内容分析**:对包括SFW和NSFW在内的多种图像内容进行自动化分析和归档。 |
|
|
### 不适用范围 (Out-of-Scope) |
|
|
* 本模型不应用于生成任何有害、非法、歧视性或侵犯他人隐私的内容。 |
|
|
* 模型的输出不应被视为绝对事实,更不能用于任何需要高精度和高可靠性的关键决策(如医疗诊断、法律判决等),所有重要应用都需有人工审核。 |
|
|
* 用户在使用模型处理NSFW内容时,应严格遵守当地法律法规,并承担相应责任。 |
|
|
### 局限性与偏见 (Limitations and Bias) |
|
|
* **幻觉 (Hallucination)**:与所有大模型一样,本模型可能产生“幻觉”,即生成图像中不存在的细节。 |
|
|
* **数据偏见 (Data Bias)**:模型的输出可能反映其训练数据中存在的社会和文化偏见(例如,在性别、种族或年龄方面的刻板印象)。 |
|
|
* **NSFW判断边界**:对于处于SFW和NSFW边界的模糊图像,模型的判断和描述可能与人类预期不符。 |
|
|
## 训练细节 (Training Details) |
|
|
### 训练数据 (Training Data) |
|
|
本模型在一个精心构建的、约 **200 万** 图文对的数据集上进行了微调。该数据集经过严格的筛选和清洗,混合了: |
|
|
* 高质量的公开图文数据集。 |
|
|
* 专门收集和标注的、涵盖广泛SFW和NSFW场景的私有数据集。 |
|
|
数据分布旨在提升模型在细节捕捉和长文本生成方面的能力,同时确保对不同类型内容的泛化性。 |
|
|
### 训练过程 (Training Procedure) |
|
|
* **基础模型 (Base Model)**:`Qwen/Qwen2.5-VL-7B-Instruct` |
|
|
* **微调策略 (Finetuning Strategy)**:Lora微调 (Lora Fine-tuning) |
|
|
* **框架 (Framework)**:unsloth |
|
|
* **主要超参数 (Hyperparameters)**: |
|
|
* Learning Rate: 2e-5 |
|
|
* Batch Size: 16 |
|
|
* Epochs: 1 |
|
|
* Optimizer: AdamW |
|
|
### 计划 (Plans) |
|
|
* 提高**英文**caption效果 |
|
|
* 增加**短视频**caption能力 |
|
|
|