一句话 P 图和生成视频背后:LLM、扩散模型与视频生成模型如何协作
现在的AI产品,比如豆包千问,都可以一句话生成或者修改一张图,或者生成视频,不知道你有没有想过,它背后的原理是什么?
1. 先快速说清楚
一句话 P 图和生成视频的本质是:大模型先理解人的自然语言,把需求变成机器可执行的视觉指令;图像或视频生成模型再在这些指令约束下,从噪声或已有素材中逐步生成目标画面。
如果再通俗一点:
你负责"说想法",LLM 负责"听懂并拆解任务",扩散模型或 DiT 负责"真正把图像/视频画出来"。
例如你说:
"把这张照片改成赛博朋克风格,人物不要变,背景换成雨夜东京街头。"
系统内部大致会理解成:
- 任务类型:图像编辑;
- 保持内容:人物身份、脸、姿势;
- 修改内容:背景、风格、光照;
- 目标效果:赛博朋克、雨夜、东京街头、霓虹灯;
- 生成方式:对局部或整体重新生成。
2. LLM 在生图和生视频里到底干什么?
很多人会误以为:LLM 直接生成图像像素或视频帧。
实际上,大多数系统里并不是这样。
LLM 更像是一个"导演"或"产品经理",主要负责理解、规划和调度;真正生成画面的是视觉生成模型。
2.1 理解用户意图
用户的表达往往很模糊,比如:
"帮我把这张图变高级一点。"
LLM 会把这句话翻译成更具体的视觉需求:
- 色调更统一;
- 光影更有层次;
- 背景更干净;
- 构图更突出主体;
- 材质更真实;
- 风格更接近商业摄影。
也就是说,LLM 负责把"人话"变成"模型能执行的视觉语言"。
2.2 改写和增强 Prompt
图像/视频模型通常对提示词比较敏感。
用户可能只说:
"生成一个未来城市。"
LLM 可能会扩展成:
"一座未来主义城市,夜晚,巨型摩天楼,霓虹灯,雨后地面反光,电影感构图,广角镜头,高细节,真实光照。"
这样做的目的不是"啰嗦",而是给生成模型更多明确约束,让结果更稳定。
2.3 生成结构化任务指令
在复杂产品中,LLM 不只是写 Prompt,还会输出结构化指令,例如:
json
{
"task": "image_editing",
"preserve": ["face_identity", "pose", "main_subject"],
"modify": ["background", "lighting", "style"],
"style": "cyberpunk",
"scene": "rainy Tokyo street at night"
}
这样的指令可以继续交给后面的视觉模块执行。
2.4 调用不同视觉工具
一次"自然语言修图"背后,可能不是一个模型完成的,而是一串模型协作完成的:
- 检测模型:找出人、车、天空、衣服等区域;
- 分割模型:抠出需要修改的部分;
- 姿态模型:识别人体骨架;
- 深度模型:估计空间关系;
- 图像生成模型:重绘或补全画面;
- 视频生成模型:生成连续动作;
- 超分模型:提升清晰度;
- 插帧模型:让视频更流畅。
LLM 的作用就是根据用户需求决定"该调用谁、按什么顺序调用、参数怎么设"。
3. 扩散模型 Diffusion:从噪声里"擦"出图像
目前很多高质量文生图、图生图、局部重绘模型都和扩散模型有关。
它的核心思想很简单:
训练时学会"如何把图片加噪声";生成时反过来,学会"如何从噪声中一步步还原图片"。
3.1 正向过程:把真实图像慢慢破坏
训练时,模型会拿一张真实图片,然后不断加噪声:
- 一开始:图片清晰;
- 加一点噪声:略微模糊;
- 再加噪声:主体开始看不清;
- 加很多噪声:几乎变成随机点阵;
- 最后:接近纯噪声。
这个过程叫 forward diffusion,也就是正向扩散。
可以理解为:把一张照片慢慢打散。
3.2 反向过程:从噪声中一步步还原
模型真正要学的是反向过程。
也就是:
给它一张带噪声的图,让它预测应该去掉哪些噪声,才能更接近真实图像。
生成时,系统从一张随机噪声图开始:
- 第一步,去掉一点噪声;
- 第二步,画面中出现大致轮廓;
- 第三步,主体结构逐渐明确;
- 后面几步,补充纹理、光影、材质、细节;
- 最终得到一张完整图像。
所以扩散模型不是"一笔画完",而是"很多步逐渐修出来"。
3.3 文字如何控制图像生成?
仅有扩散模型还不够,因为它只知道"如何生成像真实图片的东西",但不知道你想要什么。
因此需要加入文本条件。
一般流程是:
- 文本编码器把 Prompt 转成语义向量;
- 扩散模型每一步去噪时都读取这些语义向量;
- 模型根据文字约束决定画什么;
- 最终得到符合描述的图像。
比如提示词是:
"一只戴墨镜的柴犬坐在海边。"
模型在去噪过程中会不断受到这些语义约束:
- 主体是柴犬;
- 柴犬要戴墨镜;
- 场景是海边;
- 姿态是坐着;
- 整体画面要合理。
这就是"文字控制图像"的基本原理。
4. Transformer 和 DiT:用注意力机制做生成
早期很多扩散模型使用 U-Net 作为主要去噪网络。
后来,越来越多模型开始使用 Transformer 架构,这类模型常被称为 DiT,Diffusion Transformer。
可以简单理解为:
Diffusion 是生成方法,Transformer/DiT 是负责执行去噪的大脑结构。
4.1 Transformer 擅长什么?
Transformer 的核心能力是 注意力机制 Attention。
注意力机制可以让模型判断:
- 图像中哪些区域和哪些区域有关;
- 文本中哪些词和画面中哪些位置有关;
- 视频里当前帧和前后帧有什么关系。
例如生成"一个人骑马"时,模型需要理解:
- 人应该在马背上;
- 腿的位置要合理;
- 马的身体和头部比例要对;
- 背景不能和主体冲突。
Transformer 比较擅长建模这种全局关系。
4.2 DiT 如何处理图像?
DiT 通常不会直接把整张图的每个像素都当作输入,而是先把图像压缩到潜空间,或者切成一个个小块,也就是 patch。
流程可以简化成:
- 图像被压缩成 latent 特征;
- latent 被切成多个 patch;
- 每个 patch 类似一个 token;
- Transformer 分析这些 token 之间的关系;
- 模型预测每个位置应该去掉哪些噪声;
- 反复迭代后生成图像。
所以,DiT 可以理解为:
把图像当成一串视觉 token,再用 Transformer 进行全局建模和去噪生成。
5. 图像生成和图像编辑有什么区别?
文生图是"从无到有"。
图像编辑则是"在已有图像基础上改"。
图像编辑通常要额外考虑三件事:
5.1 哪些地方要保留?
比如:
- 人脸不变;
- 姿势不变;
- 产品形状不变;
- 构图不变。
5.2 哪些地方要修改?
比如:
- 换背景;
- 换衣服;
- 改风格;
- 补全画面;
- 删除物体。
5.3 修改后是否自然?
模型不只是把某个区域替换掉,还要让新内容和原图保持一致:
- 光照一致;
- 透视一致;
- 边缘融合自然;
- 材质不突兀;
- 人物身份不漂移。
所以一句话 P 图,本质是:
语言指令 + 原图约束 + 局部区域控制 + 生成模型重绘。
6. 生成图像模型是不是生成视频模型的基础?
很大程度上,是。
视频可以看成:
一串连续的图像帧,加上时间维度上的运动变化。
因此视频生成模型往往继承图像模型的能力:
- 画人;
- 画动物;
- 画建筑;
- 画光影;
- 画材质;
- 理解风格;
- 理解文字和视觉的对应关系。
但视频生成绝不是简单地"一帧一帧生成图片"。
如果每帧独立生成,就会出现严重问题:
- 人脸一会儿像本人,一会儿不像;
- 衣服颜色闪烁;
- 背景细节跳动;
- 手指数量变化;
- 物体突然消失;
- 动作不符合物理规律。
这就是视频生成比图像生成更难的地方。
7. 视频生成的核心:时空连续性
"时空连续性"是非常关键的概念。
它通常也叫:
- 时间一致性;
- 时空一致性;
- 时间连贯性;
- 运动一致性。
它的意思是:
视频不但每一帧要好看,前后帧连起来还要稳定、自然、合理。
7.1 空间一致性
空间一致性关注的是单帧内部是否合理:
- 人体结构是否正确;
- 物体位置是否合理;
- 光影关系是否统一;
- 画面构图是否自然。
这更像图像生成模型要解决的问题。
7.2 时间一致性
时间一致性关注的是前后帧之间是否连续:
- 同一个人脸不能变;
- 衣服颜色不能乱闪;
- 背景不能跳动;
- 动作轨迹要平滑;
- 镜头运动要自然。
这就是视频模型额外要解决的问题。
7.3 运动合理性
视频还需要理解"动作"。
比如:
- 人走路时身体重心会转移;
- 猫跳跃会有起跳、腾空、落地;
- 车行驶时背景会产生相对运动;
- 镜头推进时远近物体变化不同。
这涉及运动建模、物理常识和时间维度上的视觉一致性。
8. 视频模型通常如何扩展图像模型?
视频模型会在图像生成能力之上加入时间建模模块。
常见做法包括:
8.1 加入时间注意力
图像模型只看一张图。
视频模型需要同时看多帧,并理解帧与帧之间的关系。
时间注意力可以帮助模型知道:
- 当前帧和上一帧应该如何衔接;
- 人物身份如何保持;
- 动作应该如何延续;
- 镜头运动如何变化。
8.2 引入运动表示
模型可能会显式或隐式学习运动信息,例如:
- 光流;
- 相机运动;
- 物体轨迹;
- 姿态变化;
- 前后帧特征对应关系。
这些信息有助于避免视频闪烁和跳变。
8.3 使用时空 Transformer
对于 DiT 类视频模型,可以把视频看成一堆"时空 token":
- 每一帧有很多空间 patch;
- 多帧之间又形成时间序列;
- Transformer 同时建模空间关系和时间关系。
也就是说,视频 DiT 需要同时回答两个问题:
- 这一帧内部怎么画?
- 这一帧和前后帧怎么连?
9. 最终总结
如果把整个系统比作拍电影:
- 用户 是提出需求的人;
- LLM 是导演和编剧,负责理解需求、拆解任务、写分镜、调度工具;
- 文本编码器 把语言变成模型能理解的语义向量;
- Diffusion/DiT 是真正的画师,负责从噪声中生成图像或视频;
- 图像模型 负责让每一帧好看、真实、符合语义;
- 视频模型 进一步负责让多帧之间动作连贯、身份稳定、时空一致。
最后可以浓缩成一句话:
一句话 P 图和生成视频的原理,就是用 LLM 理解和规划人的语言需求,再用 Diffusion 或 DiT 等视觉生成模型,在文本、图像和时间约束下,从噪声中逐步生成符合语义且时空连续的视觉内容。