基础知识
向量
向量空间的可运算性决定了向量本身能够作为GAI的基石,比如“国王”向量 - “男人”向量 + “女人”向量 ≈ “女王”向量
这种性质让提示词的组合产生真正的语义融合,而不是机械叠加
社区生态 Community
HuggingFace & ModelScope
模型引擎 Model Engine
Transformers
模型开发、实验性部署、小规模应用
通用 NLP 模型库,覆盖训练、推理全流程
提供提供完整的预训练模型与配套工具(pipeline & tokenizer) 支持pytorch & tensorflow等后端 集成 Trainer & LoRA等微调工具
优化特性
- 基础优化:支持 FP16/INT8 量化、ONNX/TensorRT 导出
- 动态批处理(Dynamic Batching):通过 pipeline 或自定义实现
- 硬件适配:利用
BetterTransformer优化 CPU/GPU 推理
缺点
- 批处理效率较低
- 长文本生成时显存管理不足(如 KV Cache 复用不高效)
VLLM
高并发 LLM 服务
高长文本生成吞吐量:PagedAttentionKV Cache分页管理
连续批处理(Continuous Batching):动态插入新请求到运行中的批次,提高GPU利用率
共享内存:减少冗余请求
量化:FP16 & INT8
分布式推理:支持 Tensor Parallelism 多 GPU 部署
兼容 Hugging Face 模型
提供异步 API 和 OpenAI 兼容接口
缺点
- 主要支持自回归模型(如 GPT、LLaMA)
- 训练/微调支持有限
模型格式 Model Format
pytorch
模型训练、实验性推理
通用深度学习框架的默认格式
文件类型:.pt或.pth
特性
- 支持动态图(eager模式)和静态图(通过
torch.jit或torch.compile) - 原生适配 NVIDIA GPU(CUDA)、CPU(通过 MKL 优化)
- 支持动态量化(Post-Training Quantization, PTQ)和 QAT(Quantization-Aware Training)
优缺点
- 完整的模型信息(权重、计算图、训练超参数) & 可直接用于训练和推理
- 文件体积大 & 推理效率低
fp8
H100 服务器上的高性能推理
新一代低精度推理格式(NVIDIA H100 等硬件专优)
特性
- 8-bit 浮点,相比 FP16 提升 2-4 倍吞吐量,显存占用减半
- 需 NVIDIA Hopper 架构
优缺点
- 精度损失极小,适合生成任务 & 无需校准,直接截断 FP16 权重
- 硬件限制:仅 H100+ 支持 & 生态支持差:依赖 CUDA 12+ 和特定库
gptq
GPTQ: Post-Training Quantization,适用于消费级GPU的轻量部署
ggufv2
awq
实际应用
CLIP(Contrastive Language-Image Pre-training)
文本编码器(Text Encoder),把文字和图片翻译成同一套数学坐标的模型,2021年OpenAI发布的多模态模型
将Prompt转化输出为Condition向量(语义的数学表示)
文字提示变成语义向量
CLIP一共有12层,越往后越具象越具体越浅薄,越往前越抽象越深刻;通过提高SKIP值可以将向量转为更为具体的表述,降低SKIP值则会转为更为抽象的表述(Skip 层就是告诉模型“取哪一层的输出作为语义向量”。选第 2 层(skip=2)比选最后一层(skip=1)更有艺术创造力,因为保留了更多中间层的发散性特征)
CLIP拥有最大token,超出会静默丢弃
CLIP Set Last Layer:CLIP最后一层为输出层
画不出来的东西,是因为 CLIP 训练数据里没有,这决定了整个Text2Iamge的结果;
具体用到的参数:Text & Last Layer
Unet
卷积神经网络的一种架构,先下采样,再上采样,中间有跳跃连接保留细节(先压缩信息,再恢复信息)
预测噪音,输出给采样器,最终删除噪音
潜空间里反复去噪,每一步都参考 CLIP 给出的语义条件,确保去噪方向符合文字描述
- Unet一般为模型能力的核心,在参数大小上相对其他模块最大,是模型能力的关键,也是推理速度的关键
- Unet中间层潜空间的每一个像素位置会和CLIP输出的文字向量做注意力计算得到权重,这也是Text2Image能够以文字控制局部区域的效果
- 之所以不直接生成图片,而是预测噪音,是因为其本质上是学习数据分布的梯度,知道梯度方向就能从任意随机点走到数据分布中的高质量样本,比直接生成图片更为稳定
- 精细的纹理需要更多Step + 更低的 CFG(让 UNet 自由发挥更多)
具体用到的参数:Ksample的Steps(越高降噪越多,越精细也越耗时) & Ksample的CFG(引导词系数,越高越贴合引导词,过高会失真) & LoRA
VAE
变分自编码器(Variational Autoencoder),一种生成模型,包括编码器和解码器,核心能力为压缩与还原
像素和潜空间转换
Encoder:把输入的大图片压缩成小的潜空间表示
Decoder:把最终去噪完成的潜空间表示,还原成人眼能看的像素图像——将潜空间表示还原成大图
- 0.18215:VAE 输出的潜空间数值,在训练前被统计了标准差;从纯噪音生成潜图时,噪音要先乘以这个值(缩放),解码前要除以这个值(还原);如果忘掉这一步,图像会彻底崩掉
- 将图片压缩再还原会产生信息损失,这是VAE的特性
- 可以说VAE 是一个独立插件,换 VAE 是换解码风格,影响色彩和细节,而不影响构图,而换 VAE 不会改变内容,但会改变质感;这就像同样的照片用不同的放大机冲印,或者说同一个场景加了不同的滤镜
具体参数:VAE Load & VAE Decode
Text2Image
- 提示词工程与安全层:输入过滤(屏蔽色情暴力违法词汇)、关键词扩写(把小众描述映射到模型认识的词组)、参数模板化。
- 推理调度引擎:模型加载/卸载策略(管理VRAM)、动态批处理、队列管理、CFG强度与步数的自动化权衡。
- 结果流水线:生成初图 → 面部修复(CodeFormer) → 超分辨率放大 → 自动审美评分筛选 → 返回用户。