简介:这是一份手把手的本地化AI图文视频生成网站搭建教程,面向想上手Stable Diffusion/Midjourney的AI绘画爱好者与开发者,解决从环境部署到生成真人图片、动画视频及让图片开口说话的全流程问题。整套教程打包为1个PDF文档,压缩包大小约6.45MB,内容结构清晰,附有源码链接与详细操作指引。目前已有719人浏览学习,教程按5个目录展开:搭建AI网站、模型下载安装、汉化插件、生成模拟真人图片(含不同风格与动画视频)、图片开口说话,并提供了GitHub仓库、Civitai模型下载与插件地址等实用资源。从创建conda虚拟环境、克隆部署stable-diffusion-webui、安装GPU版PyTorch,到配置ChilloutMix模型与汉化界面,每一步都有直观说明,适合零基础读者按步骤实操;读者还可将生成的图片结合语音合成实现“开口说话”,探索更具创意的多媒体玩法,同时注意遵循相关开源许可与隐私规范。
1. 本地化图文视频生成网站:从零部署一套能跑图的 Stable Diffusion WebUI
很多人一听到“本地化 Midjourney”就以为要有一张几万块的显卡,其实把一套 Stable Diffusion WebUI 搭起来,最难的不是出图,而是把 Python、CUDA、模型和扩展在本地串成一条能跑的链路。这份教程资源的价值在于,它把整个搭建过程拆成了 5 个可复现的目录:环境部署、模型下载、汉化、生成真人风格图片、生成动画,最后还带了一步让图片开口说话。也就是说,它覆盖的不只是“出一张图”,而是静态图、风格化、动画、数字人全流程。适合两类人:一类是受不了在线服务隐私限制、想把生成记录留在本机的从业者;另一类是刚接触 Stable Diffusion、想在 C 站(Civitai)模型生态里试水的新手。下面按我实际复现的顺序讲,命令是原教程的,坑是我自己踩的。
2. 搭建基础环境:Python 3.10.6、conda 虚拟环境与 GPU 版 PyTorch
2.1 为什么版本卡得这么死:Python 3.10.6 是兼容性基准线
原教程第一步就让装 Python 3.10.6,很多人不理解为啥不能直接用系统里最新的 3.12。这里有个实际原因:stable-diffusion-webui 的依赖树里,transformers、torchvision、xformers 这些库对 Python 版本的适配是滞后的,3.10.x 是官方社区里兼容性最好的基准。你如果拿 3.11 或 3.12 硬跑,大概率会在安装某个依赖时碰上“找不到对应 wheel”然后编译报错,最后浪费时间在修环境上而不是出图上。所以别嫌版本老,这是社区用脚投票选出来的。
如果你机器上已经装了其他 Python 版本,最常见的方法是开一个 conda 虚拟环境,把版本锁定在 3.10.6,不要动系统级 Python。命令如下:
conda create -n novelai python==3.10.6这里-n novelai是给这个环境起名,你可以随意换成sd-webui或sd-local;python==3.10.6是精确锁版本,注意是两个等号。创建完之后激活:
conda activate novelai python --version代码里的conda activate会切换当前 shell 到该环境,python --version用来确认版本确实是 3.10.6。我一般习惯在创建后先跑这一步,因为偶尔 conda 会解析到 3.10.x 的最后一个小版本,虽然差异不大,但锁死最稳妥。激活后,后续所有安装命令都要在这个环境下执行,否则容易装到系统 Python 里。
2.2 克隆仓库与 GPU 版 PyTorch:先确认 CUDA 再选安装命令
环境准备好之后,把 WebUI 的前端工程克隆到本地。原教程用的是 AUTOMATIC1111 的 stable-diffusion-webui,这也是目前插件生态最全的一个实现:
git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui cd stable-diffusion-webuigit clone会把整个仓库拉到你当前目录下,cd进入工程根目录。注意这个仓库体积不小,加上历史提交可能几百 MB,网络不好的时候很容易 clone 到一半失败,后面第 5 章我会单独说这个问题。
接下来是安装 GPU 版 PyTorch。这一步最关键的是先搞清楚你的显卡驱动支持哪个 CUDA 版本。原教程给的是 PyTorch 官方站点(pytorch.org/get-started/locally)自动生成的命令,页面上会让你选操作系统、包管理器和 CUDA 版本。我建议你先在命令行里确认一下本机 CUDA:
nvidia-sminvidia-smi输出的右上角会显示CUDA Version: 12.1之类的字样,这是驱动支持的最高 CUDA 版本。你安装的 PyTorch 只要 CUDA 版本 <= 这个值就行,不必完全一致。对应关系大致如下:
| 显卡驱动 CUDA 版本 | PyTorch 安装时可选的 CUDA | 推荐命令片段 |
|---|---|---|
| 11.8 | cu118 | --index-url https://download.pytorch.org/whl/cu118 |
| 12.1 及以上 | cu121 / cu124 | --index-url https://download.pytorch.org/whl/cu121 |
然后在激活的 conda 环境里执行安装,比如 CUDA 12.1 的版本:
python -m pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu121--index-url指定从 PyTorch 官方 wheel 源安装,保证拉到的是带 CUDA 的编译版本;如果直接pip install torch默认装的是 CPU 版,后面跑图会慢到怀疑人生。装完验证一次:
import torch print(torch.__version__, torch.cuda.is_available())输出里torch.__version__应该类似2.1.0+cu121,torch.cuda.is_available()必须是True。如果这里显示False,说明 PyTorch 没识别到显卡,先别继续往下走,回头核对 CUDA 版本或驱动。这一步是整个搭建过程里最值得停下来检查的点,因为它直接决定后续所有生成任务的可用性。
2.3 安装第三方依赖与首次启动:耐心等第一轮加载
PyTorch 就绪后,进入工程目录安装 requirements.txt:
cd stable-diffusion-webui python -m pip install -r requirements.txt-r requirements.txt会按文件里锁定的依赖列表逐一安装。这个文件里的依赖都是 WebUI 运行时必需的,包括 gradio(网页界面框架)、transformers、 safetensors 等。安装过程可能会比较久,尤其是当你没有用 conda 而直接用系统 Python 时,容易出现权限问题或版本冲突。
启动主程序有两种方式,原教程直接用了launch.py:
python launch.py不过我更推荐用工程自带的启动脚本webui-user.bat(Windows)或webui.sh(Linux/macOS),因为脚本里会预设一些常用参数,并且会自动检查依赖是否完整。首次启动时,launch.py 会做两件事:一是把 models 目录下的基础模型文件补齐,二是编译部分 CUDA 算子。这个过程可能持续十几分钟,命令行会滚动输出大量信息,属于正常现象,不要中途 Ctrl+C。等命令行里出现Local URL: http://127.0.0.1:7860时,就说明服务起来了,浏览器打开这个地址就能看到 WebUI 界面。
如果启动时报显存不足,可以在启动脚本里加启动参数:8GB 显存加--medvram,6GB 加--lowvram,这能显著降低显存峰值占用。另外如果 xformers 装不上,也可以改用--opt-sdp-attention,效果接近且省去一个编译环节。
3. 模型与汉化:让 WebUI 能画真人和看得懂中文
3.1 模型决定画风上限:从 C 站获取 ChilloutMix
WebUI 本身只是个空壳,默认不带任何模型,你得自己下载别人训练好的权重文件。原教程指向的是 Civitai(被社区称为“C 站”),地址是 civitai.com,上面有大量已经训练好的模型,每个模型页会附带生成示例图和对应提示词。真人风格目前社区用的比较多的是 ChilloutMix 这个模型,它是以写实人像为方向训练的,搭配适当的提示词能生成相当逼真的肖像。
下载时注意两点:优先选.safetensors格式而不是.ckpt,因为前者不会包含恶意代码,安全性更好;文件名保留英文和数字,不要改成一堆中文名,否则 WebUI 模型列表里可能显示乱码。下载完成后把模型文件放到:
stable-diffusion-webui/models/Stable-diffusion/放进去之后,回到 WebUI 页面,左上角模型下拉框里点击刷新按钮,才能看到新模型。如果刷新后还是没有,八成是路径放错了,确认一下目录名大小写,WebUI 对Stable-diffusion这个目录名是敏感的。
有一点要提醒:Civitai 在部分网络环境下访问不稳定,如果你打不开,可以去 Hugging Face 搜同名模型,按模型卡说明下载,下载完核对一下文件大小是否一致。不要从来源不明的网盘下载,模型文件被植入后门的事在社区里发生过不止一次。
3.2 LoRA:在不换底模的前提下切换画风
底模决定整体风格基底,但你想在同一套底模下画不同风格的图,就要靠 LoRA。LoRA 是一种小体积的微调模型,通常几十到几百 MB,作用是在出图时给特定的风格、人物或物体特征加权。原教程举的例子是原神风格 LoRA:从 C 站下载后放进models/Lora目录。
stable-diffusion-webui/models/Lora/在 WebUI 的文生图页面里,点击生成按钮下方的小图标,会弹出一个 LoRA 列表,选中后提示词框里会自动插入一段文本,类似<lora:genshin:0.8>。这段文本里的0.8就是权重,表示 LoRA 对画面的影响程度。权重调太高容易画风过饱和、人物油腻;调太低则几乎看不出效果。我的经验是先从 0.7 起步,不满意再以 0.05 为步进微调。
3.3 汉化插件:三分钟让界面变中文
stable-diffusion-webui 的默认界面是全英文的,官方没有内置中文,需要安装第三方汉化插件。原教程用的是 dtlnor 的 stable-diffusion-webui-localization-zh_CN,安装方式有两种:一种是在 WebUI 的 Extensions 选项卡里搜索安装,另一种是直接从 GitHub 克隆:
cd stable-diffusion-webui/extensions git clone https://github.com/dtlnor/stable-diffusion-webui-localization-zh_CN注意这里是克隆到extensions目录,不是顶层目录,克隆错位置插件不会被识别。装完后重启 WebUI,依次点击 Settings -> User interface -> Localization,在下拉框里选zh_CN,然后点页面顶部的 Apply settings 并重启界面。如果汉化只生效了一部分,或者菜单还是英文,先检查是不是在扩展列表里禁用了该插件,有时候新装的扩展默认是关闭的,需要在 Extensions -> Installed 里勾选 Enabled。
4. 生成模拟真人图片:提示词、参数与 LoRA 的配合实战
4.1 从 C 站复制提示词的正确姿势
模型装好、界面汉化完成之后,最难的部分实际上是提示词。纯靠自写达到 C 站示例图的效果不太现实,更高效的方式是直接参考别人已经验证过的提示词。原教程的方法很直接:在 C 站找到一张你喜欢的真人风格图片,点开详情,把作者公开的正向 Prompt 复制到「提示词」输入框,把反向 Prompt(Negative Prompt)复制到对应的负向提示词框,然后点生成。
值得强调的是负向提示词的重要性。负向提示词的作用是告诉模型“不要画什么”,你通常会看到别人填的是lowres, bad anatomy, bad hands, missing fingers, extra digits这类词组。这些词是有顺序讲究的,靠前的关键词对画面约束力更强。如果你生成的人脸出现手指畸形或者背景糊成一团,先检查负向提示词是不是漏了bad hands和bad anatomy。
另外,C站图片详情页里的提示词往往是别人直接从 WebUI 导出的,里面可能包含<lora:xxx:0.8>这类标签。如果你没下载对应的 LoRA,复制过来后这部分是不会生效的,甚至可能出现红色报错。复制的提示词一定要先扫一遍有没有不认识的 LoRA 标签,再决定要不要下载对应的小模型。
4.2 参数设置:采样器、步数、CFG 与分辨率的关系
原教程里没有细讲参数,但这恰恰是新手最容易翻车的地方。参考 C 站示例时,每个图片详情页通常也会展示生成参数,可以直接照搬。如果对方没给,我一般用下面这套:
| 参数项 | 推荐值 | 说明 |
|---|---|---|
| Sampling method | DPM++ 2M Karras | 真人写实风格收敛快,细节好 |
| Sampling steps | 20~30 | 步数太少图发糊,太多不会显著提升 |
| CFG Scale | 7~11 | 控制提示词服从度,太低图散,太高过曝 |
| Width × Height | 512×768 或 768×512 | 竖构图人像选前者,横构图场景选后者 |
| Denoising strength | 0.4~0.7 | 图生图时才用到,重绘幅度 |
采样器这一项最容易踩坑。ChilloutMix 这类真人模型在训练时大多用了特定的采样器预设,原教程评论区有人反馈“换了个采样器出图就变得灰蒙蒙的”。这是正常现象,不同采样器对噪声轨迹的处理方式不同,如果你复现不出示例图的效果,把采样器换成示例图同款试试,往往能解决大半问题。步数方面,20 步和 30 步的差异其实很小,超过 30 步基本是徒增等待时间。
分辨率的选择要结合你的显卡显存。1024×1024 的图在 6GB 显存上会比较吃力,容易爆显存或者生成时间极长;我一般在 8GB 显存上跑 768×1024,再开启高分辨率修复(Hires. fix)让画面细节更锐利。Hires. fix 的放大倍数建议 1.5~2 倍,再高容易产生塑料质感。
4.3 实战:用底模 + LoRA 组合生成一张真人风格图
把前面的环节串起来,一次完整的生成操作是这样的。先选好底模,我以 ChilloutMix 为例,然后在正向提示词框里填基础描述,再插入 LoRA 标签:
masterpiece, best quality, 1girl, solo, looking at viewer, soft lighting, detailed face, realistic skin texture, <lora:gensiIn:0.75>负向提示词框里填:
lowres, bad anatomy, bad hands, missing fingers, extra digits, worst quality, jpeg artifacts, blurry, watermark这里masterpiece, best quality是常见的质量前缀词,用来提升整体画面完成度;1girl, solo限定主体数量和构图;looking at viewer让视线朝向镜头,适合做肖像类素材;realistic skin texture是真人风格的关键词,能避免皮肤像塑料一样光滑。<lora:gensiIn:0.75>是 LoRA 的调用格式,中间的模型名要和models/Lora目录下的文件名对应,权重0.75是画风介入程度。
如果生成结果偏暗或者人脸不正,先检查一下是不是提示词里缺少soft lighting这类光照描述;如果画面有过曝倾向,把 CFG Scale 从 11 降到 8 试试。生成不是一次到位的事,通常要调三五次才能逼近想要的效果,这部分耐心比技术重要。
5. 避坑:环境、模型与出图最常见的五个问题
5.1 Git clone 中途失败或速度极慢
现象:git clone仓库时卡在某个进度不动,或者直接报fatal: early EOF。
原因:stable-diffusion-webui 仓库体积大,普通网络下长连接容易被中断,git 没有完整接收数据包就会报错。
解决:我一般先试一次完整 clone,失败后改用镜像仓库或直接下载 zip 包。具体做法是进入 GitHub 仓库页面,用 Code -> Download ZIP 下载压缩包,解压到本地同样能得到完整的工程文件。注意下载 zip 的方式后续没法用git pull更新代码,但对你本地跑通流程没有影响。另外也可以把原仓库导入到 Gitee 这类国内代码托管平台,再从 Gitee 克隆,速度会快很多。
5.2 Python 版本不对导致依赖安装编译失败
现象:安装 requirements.txt 时日志里出现Failed to build xxx或No matching distribution found。
原因:新版 Python 下某些依赖没有预编译的 wheel 包,pip 只能尝试本地编译源码,然而编译环境缺工具链或依赖版本不匹配。
解决:回退到 Python 3.10.6 的 conda 环境。检查当前环境的 Python 版本是否真的是 3.10.6,如果 conda 里配的源找不到这个精确版本,通常会退到最近的 3.10.x,问题不大,但不要用 3.11 及以上。确认后重新激活环境再执行安装,不要把命令跑到系统 Python 里。
5.3 模型放进去了,但 WebUI 下拉框里不显示
现象:下载的模型文件已经放到models/Stable-diffusion目录,刷新后列表里还是空的或者只有默认模型。
原因:一种是路径写错,放到了其他目录;另一种是 WebUI 的模型缓存没有刷新,或者模型文件本身损坏。
解决:先确认路径,然后点模型下拉框旁边的刷新图标。如果还不行,关掉 WebUI 进程重新启动,启动时 launch.py 会重新扫描模型目录。再不行就检查模型文件大小,ChilloutMix 这类底模一般 2GB 以上,如果你下载的文件只有几百 MB,大概率是下到了预览图或者下载没完成,删掉重新下载。
5.4 出图脸部崩坏或画面灰蒙蒙
现象:生成的人像脸糊成一团,像打了马赛克;整个画面发灰、对比度低,像蒙了一层雾。
原因:脸崩通常是显存不足导致 WebUI 自动降低了部分精度,或步数太少、负向提示词没填;画面发灰一般是采样器和模型不匹配,或者 CFG 设置过低。
解决:先加--medvram启动参数再看看;脸部细节不足就把步数提到 25~30,并确认负向提示词里有bad hands, bad anatomy。发灰的问题,把采样器换成示例图同款;如果示例图也没标采样器,就优先试 DPM++ 2M Karras。如果两种调整都没效果,检查一下是不是同时加载了太多 LoRA,每次用不着的 LoRA 先关掉。
5.5 Deforum 插件装完后导航栏没有出现对应选项
现象:按照教程把 deforum-for-automatic1111-webui 克隆到 extensions 目录并重启后,WebUI 顶部的导航栏里没有 Deforum 标签。
原因:Deforum 默认不会在导航栏显示,因为它属于独立的生成 Tab,需要在 WebUI 设置里手动启用显示。
解决:进入 Settings 页面,找到 Deforum 相关的设置项,勾选启用,保存设置后重启 WebUI。另外有些版本需要先在 Extensions 列表里确认插件处于激活状态,再重启一次。这个坑最迷惑人的地方在于插件明明显示“已安装”,但入口就是没出来,其实只是设置开关没打开。
5.6 别拿真实人物肖像乱跑模型
现象:用真实人物的照片喂给 WebUI 或训练 LoRA,生成换脸类的图片。
原因:技术上是可行的,但这涉及肖像权和数据合规问题,尤其是未经本人授权使用他人照片训练模型,已经有不少纠纷案例。
解决:只用自己的照片或已获授权的素材做实验;C 站上的真人模型大多是基于虚构人物或授权素材训练的,直接用来生成原创图像没问题。另外生成的虚拟人物图片如果要公开发布,建议在描述里标注“AI 生成”,避免被误解为真实拍摄。这条不是技术问题,但比技术问题更能让你避免麻烦。
6. 进阶:动画视频与开口说话:把静态图变成动态内容
6.1 Deforum 关键帧:用 JSON 控制动画演进
Deforum 插件的核心思路是把你的一段提示词拆分成多个关键帧,然后在关键帧之间插值生成连续动画。原教程给了一个非常直观的模板:
{ "0": "tiny cute swamp bunny, highly detailed, intricate, ultra hd", "12": "same bunny, cyberpunk style, neon lights" }这个 JSON 里,0和12是关键帧编号,表示动画在第 0 帧和第 12 帧分别使用的提示词。Deforum 会在帧与帧之间做语义插值,让画面从“可爱沼泽兔子”逐渐过渡到“赛博朋克霓虹兔子”。如果你想控制中途的负向提示词,可以在帧内容里加--neg分隔:
{ "0": "portrait of a girl, soft lighting, realistic --neg lowres, blurry", "30": "portrait of the same girl, cyberpunk city background" }--neg后面的内容会被当作这一帧的负向提示词。关键帧写得越详细,动画过渡越平滑,但也要注意帧跨度别太大,默认 12 帧一组的插值强度,拉太长容易出现形变。第一次跑 Deforum 建议用 30 帧试水,生成完成后插件依赖 FFmpeg 合成视频。如果你的机器没装 FFmpeg,启动时会有提示,装好后要在 Deforum 设置里指定 FFmpeg 路径,否则到最后一步会卡在“导出视频”上。
6.2 让图片开口说话:D-ID 数字人生成
视频做好之后,最后一步是让静态人像开口说话。原教程用的是 studio.d-id.com,一个在线数字人生成工具。操作流程很直观:上传一张你生成的人像图,在文本框里输入想让“人物”说的话,选择合适的语音音色,点生成就行。平台会把人像嘴型和你输入的话做对齐,最终产出一个几秒钟的说话视频。
这里有个使用技巧:上传的人像最好是正面视角、脸部清晰、光线均匀的图,侧面或遮挡过多的图生成效果会明显变差。另外输入文本不要太长,D-ID 对单句长度有限制,长内容分成多个小段分别生成再拼接更可控。这条链路走通之后,你的本地化图文视频生成网站就从“能出图”升级到了“能出动态人像内容”。
从那以后,我每次搭这套环境都强制自己先确认 Python 版本和 CUDA 状态,再往下走流程;每换一个新模型,也一定先看示例图参数而不是凭感觉调。这套本地化方案的边界也清楚:它跑在本地意味着隐私和安全,但计算资源始终受限于显卡,不存在一张 8GB 显存的卡生成 4K 视频这种好事。希望这次从环境到模型的完整复现,能帮你在搭建时少走几步弯路,把时间留给出图而不是出 bug。需要源码和完整教程目录的,直接按资源页提供的源码包自取就行。
本文还有配套的精品资源,点击获取