降低显存占用的实践方法
针对中端显卡用户,可通过以下组合策略实现流畅运行:
- 使用梯度检查点:在代码中设置
pipe.enable_xformers_memory_efficient_attention()
激活内存优化 - 量化加载:修改模型加载语句为
pipe = InstantCharacterFluxPipeline.from_pretrained(base_model, torch_dtype=torch.float16)
- 分块渲染:将1024px图像拆分为两个512px区域分别生成后拼接
- 限制并发:设置环境变量
PYTORCH_CUDA_ALLOC_CONF=max_split_size_mb:128
进阶优化方案:
- 使用–medvram参数启动Gradio界面
- 替换VAE为tiny版:
pipe.vae = AutoencoderTiny.from_pretrained("madebyollin/taesd")
- 降低CLIP切词长度:修改nb_token=768(原1024)
Essa resposta foi extraída do artigoInstantCharacter: uma ferramenta de código aberto para gerar caracteres consistentes a partir de uma única imagemO