什么是Omost
Omost属于一种Prompt Agent,可以对用户输入的prompt进行增强,同时可以控制图像生成的layout。 不仅简化了提示词的编写,还提高了图像生成的精确度和灵活性,再也不用为写提示词头疼了.
试玩地址:https://huggingface.co/spaces/lllyasviel/Omost
Omost项目亮点:
自动扩展提示词:Omost能够将简单的提示词拆解成详细的描述,从图像整体到局部元素的位置和大小均能详细说明。例如输入“a funny cartoon batman fights joker”,系统会生成蝙蝠侠与小丑战斗的完整图像。
高灵活性:生成的图像布局可以保留,用户可以通过简单的提示词对图像中的某个元素进行修改。比如,将龙变成恐龙,系统会根据新提示生成修改后的图像。
图像位置编码:Omost通过将图像划分为729个不同的位置来简化图像元素的描述。每个位置包括预定义的参数,如位置、偏移量和区域,确保图像生成的准确性和细致度。
子提示系统:所有Omost LLM都经过训练,可以提供严格定义的“子提示”,这些子提示可以独立描述事物,并任意组合形成完整的提示。这种设计提高了提示词的灵活性和准确性。
注意力操纵:Omost使用注意力分数调整技术来控制图像生成过程中的区域关注度,实现更精细的图像生成。通过调整注意力分数,Omost能够生成符合提示词描述的图像元素。
提示前缀树:Omost引入提示前缀树技术,通过合并子提示来改进提示理解和描述。例如,可以将路径“a cat and a dog. the cat on the sofa”作为提示,从而生成相应图像。
Omost的实现和使用
Omost项目基于Llama3和Phi3变体模型,用户可以通过提供简单的提示词来生成复杂的图像。以下是该项目的几个关键组件:
位置和偏移量:将图像划分为9个位置,每个位置进一步划分为81个偏移量,共有729个边界框,用于描述图像元素的位置。
distance_to_viewer和HTML_web_color_name:用于调整图像元素的视觉表现,通过组合这些参数可以生成粗略的图像构图。
注意力操纵:基于注意力分数操作的baseline渲染器,通过调整注意力分数来控制不同区域的模型关注度。
Omost应用和前景
Omost技术的推出,不仅简化了提示词的编写,还提高了图像生成的精确度和灵活性。其应用场景包括但不限于AI绘画、图像设计、广告创意、教育等领域。用户可以通过简单的提示词生成复杂的图像,为创意设计提供了强大的工具支持。