Florence-2-base-PromptGen v1.5项目介绍
项目概述
Florence-2-base-PromptGen v1.5是PromptGen工具的一次重大升级,为图像标注和描述任务提供了强大的支持。此版本引入了两条新的描述指令:<GENERATE_TAGS>和<MIXED_CAPTION>,并显著提高了准度,这归因于更新后的训练数据集,不再依赖于Civitai数据,从而避免了由误解造成的lora触发词和不准确标签的问题。
关于PromptGen
Florence-2-base-PromptGen是专为MiaoshouAI Tagger for ComfyUI训练的模型,是一个先进的图像描述工具,基于微软的Florence-2模型进行精细调优。
引入新标记模型的原因
目前大多数视觉识别模型主要用于一般的视觉识别,但在执行提示语生成和图像标记时,描述的格式和细节要求不同。Florence-2-base-PromptGen专为改善提示语和标记工作中的体验和准确性而训练,基于经过清理的Civitai标记的图像进行训练,最终标记结果是用于生成这些图像的提示语,从而避免产生像“这是关于一个女孩的图像...”这样的烦人描述。
主要特点
- 使用<MORE_DETAILED_CAPTION>指令时,对图像进行详细描述。
- 使用<DETAILED_CAPTION>指令时,创建含有主体位置结构化信息的描述,并能读取图像文字,有助于重现场景。
- 相较其他模型,内存使用效率更高!这是一款非常轻量级的描述模型,仅需约1G的显存便能快速生成高质量图像描述。
- 设计用于处理Flux模型的图像描述,支持T5XXL CLIP和CLIP_L,两者都可以在一次生成中初始化,有效提升使用Flux模型时的处理速度。
使用说明
- <GENERATE_TAGS>:生成Danbooru风格标签
- <CAPTION>:生成图像的一行说明
- <DETAILED_CAPTION>:生成结构化的图像说明,并检测图片中主体位置
- <MORE_DETAILED_CAPTION>:生成非常详细的图像描述
- <MIXED_CAPTION>:生成混合描述,在使用T5XXL和CLIP_L时尤为有用
版本历史
在1.5版本中,有以下改进:
- <GENERATE_PROMPT>被弃用并替换为<GENERATE_TAGS>
- 新增<MIXED_CAPTION>指令
- <DETAILED_CAPTION>和<MORE_DETAILED_CAPTION>的准确性显著提高
- 增强了对图像水印的识别能力
如何使用
用户可以通过Hugging Face Model Hub直接加载该模型:
from PIL import Image
import requests
from transformers import AutoModelForCausalLM, AutoProcessor
model = AutoModelForCausalLM.from_pretrained("MiaoshouAI/Florence-2-base-PromptGen-v1.5", trust_remote_code=True)
processor = AutoProcessor.from_pretrained("MiaoshouAI/Florence-2-base-PromptGen-v1.5", trust_remote_code=True)
prompt = "<MORE_DETAILED_CAPTION>"
url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/tasks/car.jpg?download=true"
image = Image.open(requests.get(url, stream=True).raw)
inputs = processor(text=prompt, images=image, return_tensors="pt").to(device)
generated_ids = model.generate(
input_ids=inputs["input_ids"],
pixel_values=inputs["pixel_values"],
max_new_tokens=1024,
do_sample=False,
num_beams=3
)
generated_text = processor.batch_decode(generated_ids, skip_special_tokens=False)[0]
parsed_answer = processor.post_process_generation(generated_text, task=prompt, image_size=(image.width, image.height))
print(parsed_answer)
在MiaoshouAI Tagger ComfyUI下使用
用户可以使用ComfyUI-Miaoshouai-Tagger来运行此模型,详细的使用和安装说明已经发布在相关GitHub页面上。如果已安装MiaoshouAI Tagger,需要先在ComfyUI Manager中更新节点,或使用git pull获取最新更新。