三个晚上,我和 WorkBuddy 做了个生图网站

0 阅读8分钟

00-封面.png 我这台只有晚上才开开刷抖音的电脑,现在每天在给我出图。打开一个网址,选个题材,写一句中文,三十多秒,一张图就出来了。

三个晚上之前,这台电脑还是台普通机器:8G 显存,16G 内存,平时上上网。

这事是我和 WorkBuddy 一起干的。它写代码、反复试,我负责看,指挥它修改。


一、为什么在自己电脑上搞

我要的东西其实很简单:一个能让我随便试的地方。

生图这件事,好图不太可能一次写对,只能反复试。同一个题材,换个光线写法,换套衣服,换个背景,试十几次才知道哪版对。要是每试一次都得先犹豫一下,我大概试到第三次就停了,然后拿那版凑合一下当成品。

本地跑的好处就在这里。没有负担,可以无限试错。机器一直开着,我可以为了一个人的脸跑二十遍,可以干着别的事突然想到一个写法然后立刻去试,也可以把参数随便乱改,看看会出什么结果。


二、8G 显存是怎么撑起一张大图的

我这台机器的显卡是 RTX 5060 Ti,8G 显存,内存 16G。

我看到的讨论里,大多是 24G、48G。8G 属于勉强够用的配置。第一晚大部分时间,我都在干一件事:不让它崩。

那晚光是显存不够导致的失败,记了 6 次。表现是跑到一半直接退出,图没有,日志里也看不出什么。

试出三个办法,才算把它塞进去。

一是把模型压小。几十个 G 压到十二个 G 左右,精度理论上掉一点,我看了半天没看出来。

二是先出小图再放大。一步到位出那么大的图,显存扛不住。

三是一次只跑一张。不同时来,反正我一个人也用不上同时。

现在一张图三十多秒,八步。八步是指模型打磨画面的轮数。我看到的常规设置是几十步,我用的是压缩过的快版本。快是真快,代价是它对提示词的准确度更敏感——写偏了,它不会自己给你掰回来。


三、三个晚上,推翻了三次方案

第一次:以为「假」是因为磨皮磨过头

我拿第一版给朋友看,他说太假了,像塑料。

我的第一反应跟大部分人一样:磨皮磨过了。

就做了个柔和版,把皮肤纹理压下去。为了判断「到底多滑」,还专门让 AI 写了个小工具,量脸上四个点的纹理强度,输出一个数。

量完发现两件事。样本就一个人、两张图,说不上结论,但方向很清楚。

一件在我预料里:他嫌假的那张,纹理确实弱,3.10。我自己认可的那张是 4.84。

另一件完全没想到。他觉得假的那张,脸明显更亮。平均亮度 147,我认可的那张 127。

磨皮确实把皮肤磨滑了。但它同时把整张脸照亮了。

人眼判断「假」,看的好像不是滑不滑,是这张脸上还有没有明暗。一张脸如果只有一片均匀的亮,皮肤做得再细,看着也不像活的。

01-自然vs磨皮.png

自然版(左)和磨皮版(右)。右边皮肤更滑,但看着更像假人——整张脸几乎没有明暗变化。

所以我一直修错地方了。皮太滑是表象,光太平才是根子。磨皮能解决的那部分,算不上主要矛盾。真正要动的是光。

第二次:以为分辨率越高越清楚

这件事和 AI 一起测了一晚上。

按常理,放大倍数越高越清楚。我一开始也这么想,直接上了 4 倍。

出来的人脸,皮肤像砂纸。

03-放大方案对比.png

同一张底图、同一段描述,只换放大方式。最右下那格(4 倍再缩回目标尺寸)皮肤已经像砂纸了。

原因其实很简单。这个模型是「快」那一档的,它靠猜。你把一张猜出来的图放大 4 倍,猜对的地方清楚了,猜错的地方也清楚了。

现在就用 2 倍,一次到位。

要是那天晚上我一直往大的试,大概试到天亮还是砂纸。

第三次:以为写「不要」有用

画面里有个东西我不想要,很自然地写:不要 xx。

出来还有。

我以为是不够狠,改成「禁止出现 xx」,前后又加了几句狠话。

还是有。

后来做了三组对照,结果很干净:这个模型基本不吃「不要」。你写了,它读了,当没看见。

那我只能换个思路——不给它容易出错的机会。别画书上的字,别画要求特别准的东西,画面能简单就简单点。

从「事后禁止」改成「事前避开」。这句话听着像废话,但是是测了一个晚上出来的结果。

顺带一个:光不能只说一个词

我想让光从背后打过来,写了「逆光」。

出来是正面平光,一点都不逆。

试了十几种说法才摸到规律:光得说清三件事——从哪来、亮面在哪、阴影在哪。少一个,出来的多半不是你要的光。

04-光照措辞.png 只说一个词的(上排)基本都是平光;把方向、亮面、阴影都写到的(下排)光才真的从侧后方过来。

写「傍晚的窗边」,真正送进模型的那句是「光从左侧窗外低角度射进来,右脸落在阴影里,边缘有一点轮廓光」。

现在只管写想看的画面,光的事,交给这三条。

08-人像样张.jpg 这张的完整描述只有一句话:「亚洲女性,米色针织衫,窗前侧光」。

最有用的一条:脸是定住的

这条是第三晚才确认的,整个人像特写能不能成立就看它。

先说种子。就是一个数字,相当于这张图的编号。同一段描述配同一个数字,出来的基本是同一张图。换个数字,同样的文案出来是另一个人。

同一个种子、同一段人物描述,只改衣服、改背景、改场景,出来还是同一个人。眼睛、眉形、唇形、脸的轮廓都不变。

于是你可以让同一个人换场景拍:今天海边,明天咖啡馆,穿毛衣或者穿风衣。

反过来也成立。动了人物描述,或者换了种子,基本就是另一个人。


四、这个网站怎么用

打开网页,左边是题材和输入框,右边是出好的大图,底下排着这次的缩略图,点一下能换回去看。

不用装软件,手机打开也能用。

工作台.png

十个内置题材:人像、静物产品、美食、室内空间、建筑、花卉植物、服装平铺、动物、风景场景、城市街景。 07-十题材总览.png 这十个题材,都是这套流程跑出来的,一张没修。

三个画幅:竖、方、横。竖图像素出来是 1792×2304。

人像两档质感:自然和柔和。差别就是皮肤保留多少纹理。

写一句中文就行,不用管参数。比如「傍晚的阳台,一杯手冲咖啡,逆光,安静」。点生成,三十多秒。

用下来最管用的一个习惯:觉得哪里不对,一次只改一个词。改多了你不知道是哪个词在起作用,这条我花了很久才养成。


五、为什么这么快

10-三个晚上.png

三个晚上,每晚都在跟一个问题死磕:显存、质感、把东西放到网上给人用。

说起来也不是因为 AI 打字快,是试错的循环变短了。

以前改一样东西:想到要改,查文档,改代码,重启,打开看,发现改错了,重来。一轮半小时,一晚上改不了几轮。

现在:我说「这个太滑」,它改,我刷新看一眼,说「还是滑,但光对了」。一轮一分钟。

一晚上能试几百次。按以前那个节奏,我估摸要三周。

我负责判断:这张能不能看、哪里不对、往哪个方向调。它负责实现:写代码、跑实验、算指标、修 bug、写文档。分工大概就是这样。

同一批参数试二十遍、翻日志找一行报错、几百次实验一个个跑完。


七、最后

现在这个东西已经能在网上使用。

那份清单我整理好了:六条光的写法、哪些词写了反而更糟、放大倍数的对照数据、十个题材怎么挑种子。这些细节文章里塞不下,想要在下面留言「清单」,我一个个发你。

如果想自己在家搭一个的朋友,也欢迎留言交流