一文搞懂Stable Diffusion中的提示词

欢迎来到Stable Diffusion的世界,这里是AI和创意的交汇点。在这里,我们将一起探索如何通过精心设计的提示词,指引这一强大的AI工具创造出令人叹为观止的图像。无论你是技术爱好者,还是对AI艺术充满好奇的初学者,这里都有你需要的秘籍。从基础语法到精细的权重调整,我们将带你深入了解如何高效利用提示词,激发Stable Diffusion的无限潜能。准备好了吗?让我们开始这趟探索之旅吧! —— AI Dreams, APlayBoy Teams!

基本语法

 在使用 Stable Diffusion WebUI 进行文本生成时,首先需要熟悉一些基本语法和输入形式。

组成

1. 英文提示词 (English Prompts)

  • 作用:构成提示词的基础,直接描述想要生成的图像内容、风格、情感等。
  • 示例:如“sunset over the ocean”,“futuristic cityscape”。

2. 权重值 (Weights)

  • 作用:指定提示词或其部分在生成图像时的相对重要性。
  • 示例:在“sunset:1.5, ocean:0.5”,“sunset”具有更高的权重,对生成图像的影响更大。

3. 小括号 (Parentheses)

  • 作用:用于强调提示词中的特定部分,增加其重要性。
  • 示例:“(peaceful) forest”中,小括号强调“peaceful”。

4. 中括号 (Square Brackets)

  • 作用:添加附加信息或次要特征,对图像的影响较小。
  • 示例:在“mountain [snow-covered]”,中括号描述次要特征“snow-covered”。

5. 大括号 (Curly Braces)

  • 作用:提供多个选项,采样的过程中让模型在这些选项中依次选择。
  • 示例:在“car {red | blue | green}”,大括号提供多种颜色选项。

6. lora

  • 作用:可能指“LoRA”(Low-Rank Adaptation),一种模型微调技术,用于调整模型的特定部分。
  • 应用:在提示词中使用可能意味着对生成过程的特定方面进行微调。
  • 语法[lora: Prompt01:n]
  • 示例[lora: Misty Forest:1.5] 假设这个语法可以让模型更加专注于“Misty Forest”(雾中森林)的特征,并以1.5倍的权重强调它。

7. embedding

  • 作用:将单词或短语转换为模型能理解的数值形式,直接操纵这些数值表示。
  • 应用:在提示词中使用embedding影响图像生成。
  • 语法[embedding: Prompt01:n]
  • 示例[embedding: Surreal Landscape:1.5] 这意味着模型将使用特定的嵌入向量来更强烈地反映“Surreal Landscape”(超现实风景)的特征,权重为1.5。

8. hypernetwork

  • 作用:一种神经网络架构,用于生成或调整其他网络的权重。
  • 应用:在提示词中使用hypernetwork可能涉及调整图像生成过程。
  • 语法[hypernetwork: Prompt01:n]
  • 示例[hypernetwork: Futuristic City:0.5] 这个语法可以让模型通过hypernetwork技术以0.5的权重生成“Futuristic City”(未来城市)的图像。

9. dreambooth

  • 作用:一种个性化训练技术,用于在保持模型整体知识的同时,对特定任务或样本进行微调。
  • 应用:用于生成具有特定风格或特征的图像,例如,训练模型以生成特定艺术家的风格。
  • 语法[dreambooth: Specific Character or Style:n]
  • 示例[dreambooth: Van Gogh Style:1.2] 这意味着模型将以1.2倍的权重生成具有梵高风格的图像。

提示词输入形式

  • 语言:Stable Diffusion WebUI 的提示词仅支持英文输入。如果需要使用其他语言,可以考虑使用提示词插件或转换成英文描述。
  • 形式:可以使用句子来描述生成的文本内容,但为了更精细地控制不同词汇的权重,建议使用提示词的标签(tag)。
  • 逗号分隔:多个提示词之间需要使用英文逗号进行分隔。请确保使用的逗号是英文逗号,以确保正常解析。
  • 可以换行:为了提高可读性,可以在多个提示词之间添加换行符和空格,这不会影响生成效果,但请记住,仍然需要使用英文逗号进行分隔。

在文本生成过程中,理解和合理设置提示词的权重是非常重要的,这涉及到生成文本的内容、语气、重点等方面的控制。下面对权重的顺序、自身权重和位置权重进行更详细的解释和扩展:

自身权重

 自身权重是每个提示词本身的重要性。默认情况下,每个提示词的自身权重为1,这意味着它们具有相等的影响力。但可以根据需要增加或减小每个提示词的自身权重,以调整其在生成文本中的重要性。

 例如,如果我们希望强调文本中的某个关键词,可以将该关键词的自身权重增加,从而使其在生成中更突出。这可以用来控制文本的语气、情感或主题。

顺序权重

 在提示词的使用中,顺序权重是一个关键概念。它决定了在生成文本时提示词的位置对最终文本的贡献程度。通常情况下,越靠前的提示词位置权重越高,这意味着它们对生成文本的影响更显著。这是因为模型在生成文本时会逐步构建句子,靠前的提示词会更早地影响句子的开头,从而对整个句子的生成产生更大的影响。

举例来说,如果我们使用以下提示词序列进行文本生成:

  • "阳光明媚的"(位置权重高)
  • "沙滩上"(位置权重中)
  • "海浪拍打"(位置权重低)

 那么生成的文本可能更倾向于以"阳光明媚的"开头,然后描述"沙滩上"的情景,最后提到"海浪拍打"的细节。这种顺序权重的设置有助于控制生成文本的结构和情感。

调整权重

 在Stable Diffusion WebUI中调整提示词的权重是一个重要的技巧,它可以帮助你更精确地控制图像生成的结果。以下是调整提示词权重的一些基本方法:

1. 直接指定权重值

  • 示例flowing river:1.5, ancient tree:0.5。在这个例子中,“flowing river”(流动的河流)的权重更高(1.5),表明它在图像生成中的影响力更大,而“ancient tree”(古树)的权重较低(0.5),影响较小。

2. 使用括号来强调

  • 示例(flowing river) near the ancient tree。这里,小括号中的“flowing river”被强调,表明它比“near the ancient tree”更重要。

3. 组合使用权重和括号

  • 示例((flowing river:2.0) near the ancient tree:1.0)。在这个例子中,“flowing river”不仅被双层括号强调,还具有更高的权重(2.0),而“near the ancient tree”权重较低(1.0)。

4. 平衡权重

  • 示例:在描述一个自然景观时,确保“flowing river”和“ancient tree”等元素的权重相对平衡,例如“flowing river:1.0, ancient tree:1.0”。

5. 实验和调整

  • 示例:如果“flowing river:1.5, ancient tree:0.5”未能生成预期的图像效果,可以尝试调整为“flowing river:1.0, ancient tree:1.5”,看看是否能更好地突出古树。

 通过合理组织和选择这些元素,您可以精确控制生成文本的各个方面,包括内容、风格、语法等。这些组成元素的结合和设置方式可以根据具体需求和目标进行灵活调整,以实现所需的文本生成效果。

提示词数量限制

 通常,提示词的数量应该在合理的范围内,以确保生成文本的质量和可控性。在 Stable Diffusion WebUI 中,建议不超过77个关键词。超出这个限制后,额外的关键词的作用会变得相对较小,可能会对生成文本的结果产生较小的影响。

控制提示词数量的原因

 控制提示词数量的原因在于,随着提示词数量的增加,模型需要处理更多的信息和约束,这可能会导致生成文本的多样性减少,而更加受限于输入的提示词。此外,大量的提示词可能会使输入变得复杂,不易管理。

如何选择提示词

 选择合适的提示词对于在Stable Diffusion或类似的AI图像生成模型中获得理想的图像结果至关重要。以下是一些关键步骤和建议,可以帮助您更有效地选择提示词:

1. 明确图像目标

  • 在开始之前,明确您想要生成的图像的主题、风格和内容。这将帮助您聚焦于相关的描述和词汇。
  • 示例:如果您想要创建一个宁静的自然景观,您的目标可能是“平静的湖泊,日落时分”。

2. 考虑图像的主要元素

  • 思考您希望图像中出现的关键元素,如物体、场景、人物或动物等,并将它们作为提示词的一部分。
  • 示例:对于“平静的湖泊,日落时分”,主要元素可能是“湖泊”和“日落”。

3. 添加风格和情感描述

  • 根据您想要的图像风格(如现实主义、印象派、超现实主义)和情感(如快乐、悲伤、神秘)添加相应的描述。
  • 示例:为了增加情感深度,可以添加“宁静和平和”的描述,使其成为“宁静和平和的湖泊,日落时分”。

4. 使用具体和详细的描述

  • 使用具体和详细的描述来指导图像的具体细节。
  • 示例:添加细节如“反射在水面的橙色和紫色的光线”,使提示词变为“宁静和平和的湖泊,日落时分,反射在水面的橙色和紫色的光线”。

5. 平衡细节和简洁性

  • 在提供足够的信息和保持提示词简洁之间找到平衡。过于冗长的提示词可能导致模型混淆。
  • 示例:避免过度详细,如不必添加“湖中的每一条鱼”,保持为“宁静和平和的湖泊,日落时分,反射在水面的橙色和紫色的光线”。

6. 避免矛盾和模糊

  • 确保提示词之间没有内在矛盾,并尽量避免使用模糊不清的描述。
  • 示例:不要添加矛盾的元素,如“繁忙的城市背景”,保持自然景观的一致性。

7. 考虑文化和语境

  • 考虑到文化背景和语境对词汇的影响。不同的文化背景可能对相同的词汇有不同的解读。
  • 示例:如果目标受众熟悉东方艺术,可以添加“如中国山水画般的背景”。

8. 参考示例和工具

  • 参考其他艺术家或用户的提示词,使用在线提示词工具或插件来获得灵感和建议。
  • 示例:在civitai上查看类似“宁静湖泊日落”图像的在线库,获取灵感。

9. 实验和迭代

  • 不同的提示词组合可能会产生不同的效果。不要害怕实验和调整,以找到最佳的组合。
  • 示例:尝试不同的风格描述,如“印象派的湖泊日落”,看看哪种更符合您的喜好。

10. 使用权重和强调

  • 如果需要,可以通过添加权重值或使用括号来强调某些元素。
  • 示例:如果想强调日落的美,可以使用“(日落:1.5) 宁静和平和的湖泊”。

(日落:1.5) 宁静和平和的湖泊,日落时分,反射在水面的橙色和紫色的光线,如中国山水画般的背景

 通过遵循这些指导原则,您可以更有效地选择提示词,从而指导图像生成模型创造出符合您预期的图像。记住,实验和迭代是探索最佳提示词组合的关键。

提示词顺序

 在使用Stable Diffusion或类似的图像生成模型时,提示词的顺序可以影响最终生成的图像。虽然没有固定的规则,但以下是一些常见的指导原则和建议,可以帮助你更有效地组织提示词:

1. 主要元素优先

  • 操作:首先添加描述图像主要主题或元素的提示词。
  • 原因:模型通常会优先考虑并更加关注提示词序列中的前面部分。
  • 示例:如果主题是“森林”,则开始时使用“森林”。

2. 风格和氛围描述

  • 操作:在主要元素之后,添加设置整体感觉或风格的描述。
  • 原因:这有助于模型理解图像的整体风格和氛围。
  • 示例:“森林,晨雾,宁静”。

3. 具体细节

  • 操作:在确定了主要元素和整体风格之后,添加具体的细节描述。
  • 原因:细节描述有助于模型理解和渲染图像的具体特征。
  • 示例:“森林,晨雾,宁静,鸟鸣,阳光透过树叶”。

4. 次要元素

  • 操作:最后添加次要元素或对整体图像影响较小的描述。
  • 原因:这些元素虽然不是焦点,但可以增加图像的丰富性和深度。
  • 示例:“森林,晨雾,宁静,鸟鸣,阳光透过树叶,远处的小溪”。

5. 权重和强调

  • 操作:通过添加权重值或使用括号来强调某些元素。
  • 原因:这有助于进一步指导模型,确保特定元素在图像中得到适当的体现。
  • 示例:“(森林:1.5),晨雾,宁静,鸟鸣,阳光透过树叶”。

(森林:1.5),晨雾,宁静,鸟鸣,阳光透过树叶

负面提示词

 在Stable Diffusion或类似的图像生成模型中,使用负面提示词(Negative Prompts)是一种排除特定元素或特征的技术。这种方法可以帮助确保生成的图像不包含您不希望出现的内容。以下是编写负面提示词的一些指导原则:

1. 直接排除

  • 使用明确的语言指出不希望出现在图像中的元素。
  • 示例:如果您不想在图像中看到任何建筑物,可以使用“无建筑物”或“没有建筑”。

2. 使用否定词汇

  • 在提示词中加入否定词汇,如“不”、“无”、“没有”等。
  • 示例:“美丽的自然风景,没有城市”。

3. 避免混淆

  • 确保负面提示词不会与其他正面提示词产生混淆或矛盾。
  • 示例:不要同时使用“繁忙的街道”和“没有人群”,这可能会导致模型混淆。

4. 权重控制

  • 可以通过为负面提示词分配权重来控制其影响力。
  • 示例:“美丽的海滩,没有垃圾:2.0”(这里“没有垃圾”被赋予更高的权重)。

5. 结合正面提示词

  • 在使用负面提示词时,同时考虑正面提示词,以确保图像内容的平衡。
  • 示例:“宁静的森林,没有人造物品”。

6. 明确和具体

  • 尽量使负面提示词明确和具体,避免使用过于模糊的描述。
  • 示例:“清新的空气,无工业污染”。

7. 注意事项

  • 负面提示词的影响:过多或过重的负面提示词可能会导致模型产生意料之外的结果。
  • 平衡使用:负面提示词应谨慎使用,以保持图像内容的自然和和谐。

注意事项

 在使用Stable Diffusion或类似的图像生成模型时,编写有效的提示词是关键。掌握了提示词的顺序之后,以下是一些编写提示词时需要注意的具体事项:

1. 明确性

  • 尽量使用具体和明确的描述,避免模糊或过于泛泛的词汇。明确的描述有助于模型更准确地理解您的意图。
  • 示例:使用“蓝天下的金色麦田”而不是仅仅“美丽的风景”。

2. 简洁性

  • 虽然详细有助于指导,但过于冗长的提示词可能导致模型混淆。尝试保持提示词简洁而精确。
  • 示例:使用“古老的石桥在秋天的森林中”而不是“一个非常古老且有很多历史的石头制成的桥横跨在一个充满了各种各样树木的森林中,这些树木的叶子因为秋天到来而变成了红色和黄色”。

3. 平衡细节和总体概念

  • 在描述具体细节的同时,不要忽视整体概念。确保提示词既包含总体概念,也有足够的细节。
  • 示例:“繁华都市夜景,霓虹灯光,熙熙攘攘的人群”。

4. 避免矛盾

  • 确保提示词之间没有内在矛盾。矛盾的描述可能导致模型产生混乱的结果。
  • 示例:避免类似“寒冷的沙漠炎热的冰川”这样矛盾的描述。

5. 考虑风格和情感

  • 在提示词中加入风格和情感的描述,可以帮助模型生成具有特定氛围的图像。
  • 示例:“梵高风格的星空,梦幻般的色彩”。

6. 使用比喻和象征

  • 创造性地使用比喻和象征性语言可以激发模型产生独特的图像。
  • 示例:“时间的河流,历史的涟漪”。

7. 适当使用技术术语

  • 如果您对特定领域有深入了解,可以使用相关的技术术语来获得更专业的结果。
  • 示例:“巴洛克式建筑,精致的雕刻细节”。

8. 实验和迭代

  • 不同的提示词组合可能产生不同的效果。不要害怕实验和调整,以找到最佳的组合。

9. 文化和语境意识

  • 考虑到文化背景和语境对词汇的影响。不同的文化背景可能对相同的词汇有不同的解读。
  • 示例:“春节的庆祝,红色灯笼,烟花爆竹”。

提示词插件:

  • One Button Prompt
  • sd-dynamic-prompts
  • prompt-all-in-one

在本篇AI探索之旅的尾声,感谢每位朋友的陪伴,如果大家有疑问、见解,欢迎留言、讨论。您的点赞、关注是我持续分享的动力。APlayBoy,期待与您一起在AI的世界里不断成长!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/269472.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

excel数值无法左对齐

右键,单元格格式 修改为常规 解决

力扣--动态规划64.最小路径和

思路分析: 基本思路: 本算法采用动态规划的思想,通过构建一个额外的二维矢量 dp 来存储每个位置的最小路径和。最终目标是求得右下角位置的最小路径和,即整个网格的最小路径和。 初始化: 初始化矢量的行数和列数&…

【AI视野·今日Sound 声学论文速览 第五十一期】Mon, 4 Mar 2024

AI视野今日CS.Sound 声学论文速览 Mon, 4 Mar 2024 Totally 6 papers 👉上期速览✈更多精彩请移步主页 Daily Sound Papers VoxGenesis: Unsupervised Discovery of Latent Speaker Manifold for Speech Synthesis Authors Weiwei Lin, Chenhang He, Man Wai Mak, …

Stable Diffusion——Animate Diff一键AI图像转视频

前言 AnimateDiff 是一个实用框架,可以对文本生成图像模型进行动画处理,无需进行特定模型调整,即可为大多数现有的个性化文本转图像模型提供动画化能力。而Animatediff 已更新至 2.0 版本和3.0两个版本,相较于 1.0 版本&#xff…

【学位论文】上海交通大学 研究生学位论文 本地保存

上海交大研究生学位论文网:http://thesis.lib.sjtu.edu.cn/ (只能校内访问或SJTU VPN访问) 如果希望下载论文,需要参考:https://github.com/olixu/SJTU_Thesis_Crawler 安装过程 安装过程的几个坑: &a…

RabbitMQ-TTL/死信队列/延迟队列高级特性

文章目录 TTL死信队列消息成为死信的三种情况队列如何绑定死信交换机 延迟队列RabbitMQ如何实现延迟队列 总结来源B站黑马程序员 TTL TTLTTL(Time To Live):存活时间/过期时间当信息到达存活时间后,还没有被消费,会被自动清除。RabbitMQ可以对消息设置过…

vue修改打包后静态资源路径的修改

不得不说,ai是真的强大,直接自己生成。

【AI Agent系列】【MetaGPT多智能体学习】3. 开发一个简单的多智能体系统,兼看MetaGPT多智能体运行机制

本系列文章跟随《MetaGPT多智能体课程》(https://github.com/datawhalechina/hugging-multi-agent),深入理解并实践多智能体系统的开发。 本文为该课程的第四章(多智能体开发)的第一篇笔记。主要记录下多智能体的运行…

[Flutter get_cli] 配置 sub_folder:false报错

flutter get_cli 配置 get_cli:sub_folder:false报错如下 Because getx_cli_learn01 depends on get_cli from unknown source "sub_folder", version solving failed. 原因是在 pubspec.yaml文件中, get_cli:sub_folder:false要和 dependencies: xxx dev_depe…

HTML---表单验证

文章目录 目录 本章目标 一.表单验证概述 二.表单选择器 属性过滤选择器 三.表单验证 表单验证的方法 总结 本章目标 掌握String对象的用法会使用表单选择器的选择页面元素会使用JQuery事件进行表单验证Ajax的概念和作用 一.表单验证概述 前端中的表单验证是在用户提交表…

vs2022 qt 关于lnk2001和2019同时报错的问题

需要像qt中添加模块,这里,缺少qtopenglwidgets模块

Discuz IIS上传附件大于28M失败报错Upload Failed.修改maxAllowedContentLength(图文教程)

下图:Discuz X3.5的系统信息,上传许可为1024MB(1GB) 论坛为局域网论坛,仅供内部同事交流使用! 使用官方最新的Discuz! X3.5 Release 20231221 UTF-8 下图:选择上传附件(提示可以最大上传100M)…

01. Nginx入门-Nginx简介

Web基础知识 Web协议通信原理 Web协议通信过程 浏览器本身是一个客户端,当输入URL后,首先浏览器会请求DNS服务器,通过DNS获取相应的域名对应的IP。通过IP地址找到对应的服务器后,监理TCP连接。等浏览器发送完HTTP Request&…

掘根宝典之C语言字符串输入函数(gets(),fgets(),get_s())

字符串输入前的注意事项 如果想把一个字符串读入程序,首先必须预留该字符串的空间,然后用输入函数获取该字符串 这意味着必须要为字符串分配足够的空间。 不要指望计算机在读取字符串时顺便计算它的长度,然后再分配空间(计算机不会这样做&a…

#QT(网络编程-UDP)

1.IDE:QTCreator 2.实验:UDP 不分客户端和服务端 3.记录 (1)做一个UI界面 (2)编写open按钮代码进行测试(用网络调试助手测试) (3)完善其他功能测试 4.代码 …

Git 远程仓库之Github

目前我们使用到的 Git 命令都是在本地执行,如果你想通过 Git 分享你的代码或者与其他开发人员合作。 你就需要将数据放到一台其他开发人员能够连接的服务器上。 目前最出名的代码托管平台是Github,我们将使用了 Github 作为远程仓库。 添加远程库 要添…

【Python】进阶学习:__len__()方法的使用介绍

【Python】进阶学习:__len__()方法的使用介绍 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希望得到您的订…

209.长度最小的子数组

给定一个含有 n 个正整数的数组和一个正整数 target 。 找出该数组中满足其总和大于等于 target 的长度最小的 连续子数组 [numsl, numsl1, ..., numsr-1, numsr] ,并返回其长度。如果不存在符合条件的子数组,返回 0 。 第一次写,越界了 in…

链式插补 (MICE):弥合不完整数据分析的差距

导 读 数据缺失可能会扭曲结果,降低统计功效,并且在某些情况下,导致估计有偏差,从而破坏从数据中得出的结论的可靠性。 处理缺失数据的传统方法(例如剔除或均值插补)通常会引入自己的偏差或无法充分利用数…

MySQL王国:从基础到高级的完整指南【文末送书-28】

文章目录 MySQL从入门到精通第一部分:MySQL基础第二部分:MySQL进阶第三部分:MySQL高级应用 MySQL从入门到精通(第3版)(软件开发视频大讲堂)【文末送书-28】 MySQL从入门到精通 MySQL是一种开源…