豆包里一句话就能P图生视频,背后究竟发生了什么?

一句话 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 反向过程:从噪声中一步步还原

模型真正要学的是反向过程。

也就是:

给它一张带噪声的图,让它预测应该去掉哪些噪声,才能更接近真实图像。

生成时,系统从一张随机噪声图开始:

  1. 第一步,去掉一点噪声;
  2. 第二步,画面中出现大致轮廓;
  3. 第三步,主体结构逐渐明确;
  4. 后面几步,补充纹理、光影、材质、细节;
  5. 最终得到一张完整图像。

所以扩散模型不是"一笔画完",而是"很多步逐渐修出来"。


3.3 文字如何控制图像生成?

仅有扩散模型还不够,因为它只知道"如何生成像真实图片的东西",但不知道你想要什么。

因此需要加入文本条件。

一般流程是:

  1. 文本编码器把 Prompt 转成语义向量;
  2. 扩散模型每一步去噪时都读取这些语义向量;
  3. 模型根据文字约束决定画什么;
  4. 最终得到符合描述的图像。

比如提示词是:

"一只戴墨镜的柴犬坐在海边。"

模型在去噪过程中会不断受到这些语义约束:

  • 主体是柴犬;
  • 柴犬要戴墨镜;
  • 场景是海边;
  • 姿态是坐着;
  • 整体画面要合理。

这就是"文字控制图像"的基本原理。


4. Transformer 和 DiT:用注意力机制做生成

早期很多扩散模型使用 U-Net 作为主要去噪网络。

后来,越来越多模型开始使用 Transformer 架构,这类模型常被称为 DiT,Diffusion Transformer

可以简单理解为:

Diffusion 是生成方法,Transformer/DiT 是负责执行去噪的大脑结构。


4.1 Transformer 擅长什么?

Transformer 的核心能力是 注意力机制 Attention

注意力机制可以让模型判断:

  • 图像中哪些区域和哪些区域有关;
  • 文本中哪些词和画面中哪些位置有关;
  • 视频里当前帧和前后帧有什么关系。

例如生成"一个人骑马"时,模型需要理解:

  • 人应该在马背上;
  • 腿的位置要合理;
  • 马的身体和头部比例要对;
  • 背景不能和主体冲突。

Transformer 比较擅长建模这种全局关系。


4.2 DiT 如何处理图像?

DiT 通常不会直接把整张图的每个像素都当作输入,而是先把图像压缩到潜空间,或者切成一个个小块,也就是 patch。

流程可以简化成:

  1. 图像被压缩成 latent 特征;
  2. latent 被切成多个 patch;
  3. 每个 patch 类似一个 token;
  4. Transformer 分析这些 token 之间的关系;
  5. 模型预测每个位置应该去掉哪些噪声;
  6. 反复迭代后生成图像。

所以,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 需要同时回答两个问题:

  1. 这一帧内部怎么画?
  2. 这一帧和前后帧怎么连?

9. 最终总结

如果把整个系统比作拍电影:

  • 用户 是提出需求的人;
  • LLM 是导演和编剧,负责理解需求、拆解任务、写分镜、调度工具;
  • 文本编码器 把语言变成模型能理解的语义向量;
  • Diffusion/DiT 是真正的画师,负责从噪声中生成图像或视频;
  • 图像模型 负责让每一帧好看、真实、符合语义;
  • 视频模型 进一步负责让多帧之间动作连贯、身份稳定、时空一致。

最后可以浓缩成一句话:

一句话 P 图和生成视频的原理,就是用 LLM 理解和规划人的语言需求,再用 Diffusion 或 DiT 等视觉生成模型,在文本、图像和时间约束下,从噪声中逐步生成符合语义且时空连续的视觉内容。

相关推荐
人工智能培训1 小时前
医疗行业的数字孪生革命
大数据·人工智能·重构·知识图谱·agent
一切皆是因缘际会1 小时前
频域特征解构底层机理与双域融合鉴伪算法优化
人工智能·算法·ai·架构
zhangle1hao1 小时前
从零开始学习ai agent开发
人工智能·学习
zyk_computer1 小时前
AI Agent ,让循环收敛的那套闭环控制系统
人工智能·后端·python·ai·架构·agent·ai agent
2401_872418781 小时前
Slide AI — 智能课件学习助手
人工智能·学习
Luhui_Dev1 小时前
Anthropic 的 Claude Code 翻车经验
人工智能
碳基硅坊1 小时前
用Gemma 4和Obsidian打造本地AI第二大脑
人工智能·知识图谱·obsidian·gemma 4
你住过的屋檐2 小时前
【claude code】claude code在windows下安装使用教程,以及在idea中使用claude code自动AI写代码
人工智能·windows·intellij-idea
m0_图灵灵2 小时前
吴恩达《深度学习》之深度剖析Batch Norm 作用机制的本质
人工智能·深度学习·batch