当前位置: 首页 > news >正文

AI 绘画 | Stable Diffusion 提示词

Prompts提示词简介

在Stable Diffusion中,Prompts是控制模型生成图像的关键输入参数。它们是一种文本提示,告诉模型应该生成什么样的图像。

Prompts可以是任何文本输入,包括描述图像的文本,如“一只橘色的短毛猫,坐在草地上,背景是蓝天白云”,也可以是关键词的组合,如“鸟,森林,天空”。

通过使用Prompts,我们可以控制生成图像的样式、主题、颜色、纹理等。同时,我们还可以通过调整Prompts的权重来控制不同要素在图像中的突出程度。例如,如果将某个关键词的权重设置得更高,那么模型在生成图像时就会更加注重这个关键词的体现。

除了手动编写Prompts,我们还可以利用一些工具来生成Prompts。例如,可以使用AI绘画工具生成一个初步的图像,然后将其作为参考图,通过调整参考图的参数来生成新的Prompts。这样可以使Prompts更加贴合我们的需求,提高生成图像的质量和效率。

需要注意的是,不同的模型和参数设置会对Prompts的解读和生成结果产生影响。因此,在使用Prompts时需要不断尝试和调整,以找到最佳的组合和权重设置。

提示词是提示而不是判定依据,比如你输入质量判定词汇的时候,其实是在限制数据的范围,而不是 “要求” AI 出一张很好的图片。

在这里插入图片描述

提示词语法

基本格式

Stable Diffusion 提示词仅支持用英文,可以是英文句子短语,标签词组。例如:我们要AI画一个女孩在森林漫步的场景图片,我们的提示词可以有两种写法

  • a girl was walking in the forest
  • a girl,walking,forest,

这两种写法的出图效果是一样的。一般情况下,我们都会使用第二种词组标签的写法,一是能写更少的单词,二是后期修改提示词的时候时候非常方便。
注意事项

  • 每个标签之间要用英文逗号分割开来。
  • 不区分大小写。Stable Diffusion都会把大写自动转成小写
  • 越靠前的标签,权重越大。
  • 目前Stable-Diffusion-UI最大支持的提示词是75个。
  • 提示词越多生成的绘画出来的内容就越难把控,不要写入两个或者更多相互矛盾(意思相反的提示词)。
  • 提示词中包含相同或者类似的提示词越多,画面出现提示词内容权重就越大。

权重系数

权重系数可改变提示词特定部分的比重。

分割符

  • , 逗号: 分割词缀,有一定权重排序功能,逗号前权重高,逗号后权重低,因而建议排序:

综述(图像质量+画风+镜头效果+光照效果+主题+构图)
主体(人物&对象+姿势+服装+道具)
细节(场景+环境+饰品+特征)

先把描述图片质量,分辨率、风格的放在提示词的最前面,其次是绘画的主题内容的提示词,最后是绘画细节的提示词。按照这里的顺序书写提示词,绘画的效果会更好。

组合符

在这里插入图片描述

  • () 圆括号: 增加权重0.1,即权重标为1.1
    大部分情况用圆括号即可。
// 权重乘以1.1
(1girl) 
  • {} 花括号: 增加权重0.05
// 权重乘以1.05
{1girl}
  • [] 方括号: 减少权重0.1,也有说是减弱0.05的
    方括号中无法自定义权重数值,自定义权重只能使用(x:0.5)形式。
// 权重乘以0.9
[1girl] 
  • (())、{{}}、[[]] 复用括号: 叠加权重
// 权重乘以1.1*1.1,即权重为1.21
((1girl))
// 权重乘以1.05*1.05,即权重为1.1025
{{1girl}} 
// 权重乘以0.9*0.9,即权重为0.81
[[1girl]]  // 权重乘以1.1*1.1*1.1,即权重为1.331
(((1girl)))
// 权重乘以1.05*1.05*1.05,即权重为1.157625
{{{1girl}}} 
// 权重乘以0.9*0.9*0.9,即权重为0.729
[[[1girl]]]   
  • : 冒号: 自定义权重数值(仅支持圆括号)
    格式:左圆括号 + 词缀 + 冒号 + 数字 + 右圆括号
// 单人女孩词缀,权重为0.75
(1girl:0.75) 
// 单人女孩词缀,权重为1.2
(1girl:1.2) 

连接符

  • AND 和: 将多个词缀聚合在一个提示词顺序位置中,其初始权重一致
// 三个词缀权重一致
bird and dog and pig// 可使用冒号标记其权重
bird:1.5 and dog:1.2 and pig:0.8
  • | 竖线 混合两个描述同一对象的提示词要素
//生成白色和黄色混合的花
white | yellow floewer, 
  • _ 下划线 加强单词之间的联系
在这里插入代码片

标签替换和标签轮转

标签替换

[] 方括号中使用: | 等符号,则可实现较为复杂的分布与交替渲染的需求。

  • [from:to:when]: 渲染元素1到多少进度后开始渲染元素2,实现元素1与元素2的互相叠加,可用于两个词条的融合。即 [元素1:元素2:迭代步数比例] 或者即 [元素1:元素2:迭代步数]
// 当图片采样迭代步数到达40%进度后,开始渲染红色
[blue:red:0.4] flower// 前12步渲染蓝色后,开始渲染红色
[blue:red:12] flower

标签轮转

  • **[A|B|C] [提示词1|提示词2|提示词3]:**元素1和元素2的交替混合渲染,意思就是渲染一次A,再渲染一次B,再渲染一次A~~以此往复直至最后。
//生成的第一步将使用 blue,第二步将使用red,第三步将使用yellow,第四步将使用blue,依此类推。
[blue|red|yellow]

调取 LoRA & Hypernetworks 模型

<> 尖括号: 调取LoRA或超网络模型等。
输入:<lora:filename:multiplier> 或 <hypernet:filename:multiplier> 可调取相应模型。

//调用lora模型
<lora:cuteGirlMix4_v10>
//调用lora模型 权重为0.5
<lora:cuteGirlMix4_v10:0.5>

Emoji表情符

Emoji (💰,💶,💷,💴,💵,🎊,🪅🪄,🎀,👩‍🚀) 表情符号也是可以使用并且 非常准确 的。
😃 微笑 😦 不悦 😉 使眼色 😄 开心 😛 吐舌头 :-C 很悲伤 😮 惊讶 张大口 😕 怀疑
Emoji 因为只有一个字符,所以在语义准确度上表现良好。

Emoji 在构图上有影响,比如 💐☺️💐。

提示词使用技巧

Stable Diffusion是一种基于transformer的文本到图像生成模型,可以通过文本提示生成高质量的图像。提示词是给Stable Diffusion输入的文本提示,它可以指导模型生成什么样的图像。选择合适的提示词非常重要,可以大大影响最终生成结果的质量。下面我将详细讲解提示词的使用技巧:

  • 以英文写提示词。Stable Diffusion是以英文训练的模型,使用英文提示词可以获得最佳效果。

  • **提示词越具体越好。**提示词应该尽可能明确地指出你想要生成什么样的图像,避免模糊、笼统的描述。例如“一只可爱的猫咪”比“一只猫”更好,“一个穿着蓝色衬衫的女孩”比“一个女孩”更好。明确的描述可以减少模型的困惑,生成更符合预期的结果。

  • **使用多词短语而不是单个词。**使用“坐在海边的少女”而不是简单地用“海”和“女孩”。短语可以更清晰地表示组合意义,单个词往往多义,增加模型需要处理的不确定性。

  • **补充修饰词。**使用形容词和副词来增加描述细节,例如“一只快乐地玩耍的金毛猎犬”。修饰词可以明确对象的属性、状态和动作,减少生成的随机性。

  • 指定样式和组成。可以直接指定“风格为糖果色调”“像漫画一样”来指导图像的视觉风格。也可以指定对象“右上角有一只猫”来指导组成。明确指导可以减少需要多次尝试的时间。

  • 排除不需要的内容。可以使用“没有文字”“不要水印”等指示来去掉不需要的元素。特别是需要生成照片时,可以指明“无水印照片”以避免生成带商标的图像。

  • 对 prompts进行细分。可以把提示词分成几部分,分别控制场景、风格、视角等不同方面。例如“一只雪白的猫,背景是蓝天白云,透视角度仰视”。这可以使得提示更结构化,各个方面可以自由组合。

  • **尝试不同的提示方式。**可以用不同的语句结构、词汇描述同一个意图,看哪种效果更好。也可以尝试用不同语言的提示词。提示词的表述方式对结果有很大影响。

  • **生成时候控制参数。**除了文本提示,生成参数如steps、sampling方法等都会影响结果。可以结合参数控制使结果更可控。

  • 查看例图选用已知好的提示词。prompts-engine等网站收集了大量示例图片与prompts,可以直接借鉴使用效果好的提示词。

  • 迭代优化找到最佳提示词。生成结果与预期不符时,可以修改提示词重新生成,逐步逼近理想结果。保持提示词的持续优化非常必要。

综上,良好的提示词应具备明确、具体、细节丰富等特点。需要注意提示词的表述方式,区分不同的控制因素,同时结合参数控制使生成可控。要多次迭代试验,优化找到最佳提示词组合。熟练掌握提示词的运用可以大大提高Stable Diffusion的生成能力,是使用中的关键技巧。

在这里插入图片描述

相关文章:

AI 绘画 | Stable Diffusion 提示词

Prompts提示词简介 在Stable Diffusion中&#xff0c;Prompts是控制模型生成图像的关键输入参数。它们是一种文本提示&#xff0c;告诉模型应该生成什么样的图像。 Prompts可以是任何文本输入&#xff0c;包括描述图像的文本&#xff0c;如“一只橘色的短毛猫&#xff0c;坐在…...

tomcat默认最大线程数、等待队列长度、连接超时时间

tomcat默认最大线程数、等待队列长度、连接超时时间 tomcat的默认最大线程数是200&#xff0c;默认核心线程数(最小空闲线程数)是10。 在核心线程数满了之后&#xff0c;会直接启用最大线程数&#xff08;和JDK线程池不一样&#xff0c;JDK线程池先使用工作队列再使用最大线程…...

本地部署 CogVLM

本地部署 CogVLM CogVLM 是什么CogVLM Github 地址部署 CogVLM启动 CogVLM CogVLM 是什么 CogVLM 是一个强大的开源视觉语言模型&#xff08;VLM&#xff09;。CogVLM-17B 拥有 100 亿视觉参数和 70 亿语言参数。 CogVLM-17B 在 10 个经典跨模态基准测试上取得了 SOTA 性能&am…...

bff层解决了什么痛点

bff层 -- 服务于前端的后端 什么是bff&#xff1f; Backend For Frontend&#xff08;服务于前端的后端&#xff09;&#xff0c;也就是服务器设计API的时候会考虑前端的使用&#xff0c;并在服务端直接进行业务逻辑的处理&#xff0c;又称为用户体验适配器。BFF只是一种逻辑…...

面试经典150题——Day33

文章目录 一、题目二、题解 一、题目 76. Minimum Window Substring Given two strings s and t of lengths m and n respectively, return the minimum window substring of s such that every character in t (including duplicates) is included in the window. If there …...

再谈Android重要组件——Handler(Native篇)

前言 最近工作比较忙&#xff0c;没怎么记录东西了。Android的Handler重要性不必赘述&#xff0c;之前也写过几篇关于hanlder的文章了&#xff1a; Handler有多深&#xff1f;连环二十七问Android多线程&#xff1a;深入分析 Handler机制源码&#xff08;二&#xff09; And…...

Javaweb之javascript的详细解析

JavaScript html完成了架子&#xff0c;css做了美化&#xff0c;但是网页是死的&#xff0c;我们需要给他注入灵魂&#xff0c;所以接下来我们需要学习JavaScript&#xff0c;这门语言会让我们的页面能够和用户进行交互。 1.1 介绍 通过代码/js效果演示提供资料进行效果演示&…...

Linux常用命令——cd命令

在线Linux命令查询工具 cd 切换用户当前工作目录 补充说明 cd命令用来切换工作目录至dirname。 其中dirName表示法可为绝对路径或相对路径。若目录名称省略&#xff0c;则变换至使用者的home directory(也就是刚login时所在的目录)。另外&#xff0c;~也表示为home directo…...

VHDL基础知识笔记(1)

1.实体&#xff1a;其电路意义相当于器件&#xff0c;它相当于电路原理图上的元器件符号。它给出了器件的输入输出引脚。实体又被称为模块。 2.结构体&#xff1a;这个部分会给出实体&#xff08;或者说模块&#xff09;的具体实现&#xff0c;指定输入和输出的行为。结构体的…...

volatile-日常使用场景

6.4 如何正确使用volatile 单一赋值可以&#xff0c;但是含复合运算赋值不可以&#xff08;i之类的&#xff09; volatile int a 10; volatile boolean flag true; 状态标志&#xff0c;判断业务是否结束 作为一个布尔状态标志&#xff0c;用于指示发生了一个重要的一次…...

策略模式在数据接收和发送场景的应用

在本篇文章中&#xff0c;我们介绍了策略模式&#xff0c;并在数据接收和发送场景中使用了策略模式。 背景 在最近项目中&#xff0c;需要与外部系统进行数据交互&#xff0c;刚开始交互的系统较为单一&#xff0c;刚开始设计方案时打算使用了if else 进行判断&#xff1a; if(…...

学习LevelDB架构的检索技术

目录 一、LevelDB介绍 二、LevelDB优化检索系统关键点分析 三、读写分离设计和内存数据管理 &#xff08;一&#xff09;内存数据管理 跳表代替B树 内存数据分为两块&#xff1a;MemTable&#xff08;可读可写&#xff09; Immutable MemTable&#xff08;只读&#xff0…...

Docker Swarm实现容器的复制均衡及动态管理:详细过程版

Swarm简介 Swarm是一套较为简单的工具&#xff0c;用以管理Docker集群&#xff0c;使得Docker集群暴露给用户时相当于一个虚拟的整体。Swarm使用标准的Docker API接口作为其前端访问入口&#xff0c;换言之&#xff0c;各种形式的Docker Client(dockerclient in go, docker_py…...

Proteus仿真--1602LCD显示仿手机键盘按键字符(仿真文件+程序)

本文主要介绍基于51单片机的1602LCD显示仿手机键盘按键字符&#xff08;完整仿真源文件及代码见文末链接&#xff09; 仿真图如下 其中左下角12个按键模拟仿真手机键盘&#xff0c;使用方法同手机键一样&#xff0c;长按自动跳动切换键值&#xff0c;松手后确认选择&#xff…...

Rust语言和curl库编写程序

这是一个使用Rust语言和curl库编写的爬虫程序&#xff0c;用于爬取视频。 use std::env; use std::net::TcpStream; use std::io::{BufReader, BufWriter}; ​ fn main() {// 获取命令行参数let args: Vec<String> env::args().collect();let proxy_host args[1].clon…...

FSDiffReg:心脏图像的特征和分数扩散引导无监督形变图像配准

论文标题&#xff1a; FSDiffReg: Feature-wise and Score-wise Diffusion-guided Unsupervised Deformable Image Registration for Cardiac Images 翻译&#xff1a; FSDiffReg&#xff1a;心脏图像的特征和分数扩散引导无监督形变图像配准 摘要 无监督可变形图像配准是医学…...

音视频技术开发周刊 | 318

每周一期&#xff0c;纵览音视频技术领域的干货。 新闻投稿&#xff1a;contributelivevideostack.com。 日程揭晓&#xff01;速览深圳站大会专题议程详解 LiveVideoStackCon 2023 音视频技术大会深圳站&#xff0c;保持着往届强大的讲师阵容以及高水准的演讲质量。两天的参会…...

asp.net docker-compose添加sql server

打开docker-compose.yml 添加 sqldata:image: mysql:8.1.0 打开docker-compose.override.yml 添加 sqldata:environment:- MYSQL_ROOT_PASSWORDPasswordports:- "8080:8080"volumes:- killsb-one-sqldata:/etc/mysql/conf.d 在docker里面就有了sql server容器镜像…...

uniapp 微信小程序 uni-file-picker上传图片报错 chooseAndUploadFile

这个问题真的很搞&#xff0c; 原因是微信开发者工具更新了&#xff0c;导致图片上传问题。 解决方法&#xff1a; 将微信开发者工具的基础库改为2.33.0一下即可。 在微信开发者工具详情 - 本地设置中&#xff08;记得点击‘推送’按钮&#xff09;&#xff1a;...

《向量数据库指南》——用 Milvus Cloud和 NVIDIA Merlin 搭建高效推荐系统结论

如何搭建一个高效的推荐系统? 简单来说,现代推荐系统由训练/推理流水线(pipeline)组成,涉及数据获取、数据预处理、模型训练和调整检索、过滤、排名和评分相关的超参数等多个阶段。走遍这些流程之后,推荐系统能够给出高度个性化的推荐结果,从而提升产品的用户体验。 为…...

【Python】 -- 趣味代码 - 小恐龙游戏

文章目录 文章目录 00 小恐龙游戏程序设计框架代码结构和功能游戏流程总结01 小恐龙游戏程序设计02 百度网盘地址00 小恐龙游戏程序设计框架 这段代码是一个基于 Pygame 的简易跑酷游戏的完整实现,玩家控制一个角色(龙)躲避障碍物(仙人掌和乌鸦)。以下是代码的详细介绍:…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

多场景 OkHttpClient 管理器 - Android 网络通信解决方案

下面是一个完整的 Android 实现&#xff0c;展示如何创建和管理多个 OkHttpClient 实例&#xff0c;分别用于长连接、普通 HTTP 请求和文件下载场景。 <?xml version"1.0" encoding"utf-8"?> <LinearLayout xmlns:android"http://schemas…...

无法与IP建立连接,未能下载VSCode服务器

如题&#xff0c;在远程连接服务器的时候突然遇到了这个提示。 查阅了一圈&#xff0c;发现是VSCode版本自动更新惹的祸&#xff01;&#xff01;&#xff01; 在VSCode的帮助->关于这里发现前几天VSCode自动更新了&#xff0c;我的版本号变成了1.100.3 才导致了远程连接出…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

ffmpeg(四):滤镜命令

FFmpeg 的滤镜命令是用于音视频处理中的强大工具&#xff0c;可以完成剪裁、缩放、加水印、调色、合成、旋转、模糊、叠加字幕等复杂的操作。其核心语法格式一般如下&#xff1a; ffmpeg -i input.mp4 -vf "滤镜参数" output.mp4或者带音频滤镜&#xff1a; ffmpeg…...

镜像里切换为普通用户

如果你登录远程虚拟机默认就是 root 用户&#xff0c;但你不希望用 root 权限运行 ns-3&#xff08;这是对的&#xff0c;ns3 工具会拒绝 root&#xff09;&#xff0c;你可以按以下方法创建一个 非 root 用户账号 并切换到它运行 ns-3。 一次性解决方案&#xff1a;创建非 roo…...

基于Docker Compose部署Java微服务项目

一. 创建根项目 根项目&#xff08;父项目&#xff09;主要用于依赖管理 一些需要注意的点&#xff1a; 打包方式需要为 pom<modules>里需要注册子模块不要引入maven的打包插件&#xff0c;否则打包时会出问题 <?xml version"1.0" encoding"UTF-8…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

C++.OpenGL (10/64)基础光照(Basic Lighting)

基础光照(Basic Lighting) 冯氏光照模型(Phong Lighting Model) #mermaid-svg-GLdskXwWINxNGHso {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-GLdskXwWINxNGHso .error-icon{fill:#552222;}#mermaid-svg-GLd…...