IOPaint AI修图模型自动下载与本地缓存机制详解
IOPaint AI修图模型自动下载与本地缓存机制详解【免费下载链接】IOPaintImage inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.项目地址: https://gitcode.com/GitHub_Trending/io/IOPaintIOPaint 是基于 AI 模型的图像修复工具擦除和重绘都依赖本地模型文件。本文面向刚接触 IOPaint 的用户讲清三件事模型什么时候被自动下载、模型缓存在哪里、出问题时怎么查。读完你可以独立把模型目录挪到指定磁盘并用命令验证缓存状态。启动时如何判定缺模型并触发下载缓存目录的三类模型存储位置与类型判定规则用XDG_CACHE_HOME和--model-dir迁移模型目录的方法模型已下载但不被识别、下载中断的排查步骤自动下载模型什么时候触发触发时机只有一个iopaint start --modelxxx启动时。程序先调用scan_models()扫描缓存目录只有当指定模型不在扫描结果里才会打印not found in ...并执行下载第二次启动同一命令时这一步被跳过所以不会重复下载。擦除模型与Diffusion模型走两条下载通道内置擦除模型AVAILABLE_MODELS中的 lama、mat、fcf、manga 等由模型类自己的download()完成。以 LaMa 为例download()按固定 URL 下载并校验 MD5is_downloaded()只检查缓存路径下文件是否存在。Diffusion 模型走 Hugging Face 通道cli_download_model调用DiffusionPipeline.download并优先指定variantfp16。下载失败时handle_from_pretrained_exceptions会依次降级先试revisionfp16再试revisionmain如果报网络错误Max retries exceeded日志会直接提示设置代理或加--local-files-only。下载 fp16 variant - 失败则 revisionfp16 - 再失败则 revisionmain本地模型缓存目录结构与类型识别规则缓存放什么、放在哪全由 download.py 的scan_models()决定它拼起来四路结果scan_inpaint_models内置擦除模型逐个调用is_downloaded()scan_single_file_diffusion_models单文件模型scan_diffusers_modelsHugging Face 缓存里的 diffusers 目录结构模型scan_converted_diffusers_models转换后的 diffusers 模型单文件模型必须放在模型目录下stable_diffusion/SD1.5或stable_diffusion_xl/SDXL里且扩展名是.safetensors或.ckpt其他一律忽略。模型类型如何判定并缓存到iopaint_cache.json识别顺序是文件名里含 inpaint 直接归类为 inpainting 模型不含的话就临时加载一次用 UNet 输入通道数9 通道即 inpainting4 通道即 base判定。判定结果写进对应目录下的iopaint_cache.json下次扫描直接读缓存不再加载模型。diffusers 目录结构模型则从HF_HUB_CACHE扫描靠model_index.json里的_class_name识别文件夹名models--org--name会被还原成org/name展示。WebUI 模型列表就是这份扫描结果来源见 model_manager.py。如何把IOPaint模型目录挪到大容量磁盘默认模型目录取XDG_CACHE_HOME环境变量未设置时是~/.cache见 const.py 的DEFAULT_MODEL_DIR。迁移有两种方式export XDG_CACHE_HOME/data/disk/iopaint_cache iopaint start --modellama或者每次启动加--model-dir /data/disk/iopaint_cache。注意setup_model_dirruntime.py会把这个路径同时写入U2NET_HOME和XDG_CACHE_HOME分割插件的模型也落在同一处。一个实际影响XDG_CACHE_HOME是系统级变量改它会影响其他遵守 XDG 规范的程序建议只在启动 IOPaint 的终端里临时设置不要写进全局 profile。验证与排查确认模型缓存状态用iopaint list列出已识别的模型iopaint list输出的每一行就是一个可加载模型。WebUI 下拉框和这份列表同源所以下拉框里没有的模型这条命令里也查不到。模型已下载但缓存目录不被识别的排查步骤先确认文件放对了位置单文件模型不在stable_diffusion/或stable_diffusion_xl/目录下、或扩展名不是.safetensors/.ckpt会被静默跳过diffusers 结构模型要求缓存里存在可解析的model_index.json。其次是类型判定失败删除对应目录下的iopaint_cache.json让系统重新判定再跑iopaint list确认。下载中断后的恢复方法与离线模式网络不通时典型报错是 Max retries exceeded日志会提示两条路给终端配置代理或手动下载文件放入缓存目录对应子目录。如果模型其实已经下完、只是想不再联网检查启动时加--local-files-only它会设置HF_HUB_OFFLINE和TRANSFORMERS_OFFLINE加载全程只读本地文件。一张清单收尾IOPaint 的模型管理只有三条规则启动先扫描、缺什么才下载、类型判定结果落盘缓存。你现在就可以运行iopaint list对照 WebUI 的模型下拉框验证一遍扫描结果。参考链接下载与扫描逻辑iopaint/download.py模型类型识别与HF下载降级iopaint/model/utils.py模型管理器iopaint/model_manager.py【免费下载链接】IOPaintImage inpainting tool powered by SOTA AI Model. Remove any unwanted object, defect, people from your pictures or erase and replace(powered by stable diffusion) any thing on your pictures.项目地址: https://gitcode.com/GitHub_Trending/io/IOPaint创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Redisson Bloom Filter 完整指南:并发读写场景的异常处理与容量决策

Redisson Bloom Filter 完整指南:并发读写场景的异常处理与容量决策

Redisson Bloom Filter 完整指南:并发读写场景的异常处理与容量决策 【免费下载链接】redisson Redisson: Valkey & Redis Java Client and Real-Time Data Platform. Sync/Async/RxJava/Reactive API. Over 50 Valkey and Redis based Java objects and servic…

2026/11/9 9:40:17 阅读更多 →
把Win10任务栏和开始菜单装回来:ExplorerPatcher完全上手指南

把Win10任务栏和开始菜单装回来:ExplorerPatcher完全上手指南

把Win10任务栏和开始菜单装回来:ExplorerPatcher完全上手指南 【免费下载链接】ExplorerPatcher This project aims to enhance the working environment on Windows 项目地址: https://gitcode.com/GitHub_Trending/ex/ExplorerPatcher Win11把任务栏钉在了…

2026/10/25 22:51:54 阅读更多 →
spotDL 使用教程:快速把 Spotify 歌曲和歌单下载到本地的完整指南

spotDL 使用教程:快速把 Spotify 歌曲和歌单下载到本地的完整指南

spotDL 使用教程:快速把 Spotify 歌曲和歌单下载到本地的完整指南 【免费下载链接】spotify-downloader Download your Spotify playlists and songs along with album art and metadata (from YouTube if a match is found). 项目地址: https://gitcode.com/GitH…

2026/10/31 2:04:03 阅读更多 →

最新新闻

Electron桌面应用开发实战:从环境搭建到打包发布全流程

Electron桌面应用开发实战:从环境搭建到打包发布全流程

做前端这些年,我大部分时间都在跟浏览器标签页打交道,直到第一次把桌面应用跑起来,才发现原来自己一直被限制在地址栏和刷新按钮围起来的框框里。Electron这个词,最开始是在某段时间频繁出现在同事的讨论里,一个用HTML…

2026/11/8 1:19:03 阅读更多 →
滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

滑盖智能锁T109深度解析:结构原理、安装调试与故障排查

简介:亚太天能T109滑盖智能锁产品说明书是一份PDF格式的官方技术文档,主要面向智能锁安装人员、终端用户及售后维护者,帮助快速掌握产品安装、配置与常见故障处理。全包仅1个PDF文件,大小4.37MB,内容结构清晰&#xff…

2026/11/8 14:17:55 阅读更多 →
PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

PMSM弱磁控制原理与Simulink建模:高速AGV驱动系统设计指南

上个月我在调试一台高速AGV的驱动系统,整车要求空载跑到8m/s,电机转速已经拉到额定点,驱动器的输出电压也顶到了母线电压极限附近。再往上踩速度指令,转速纹丝不动,三相电流反而开始震荡。那会儿我的第一反应就是&…

2026/11/9 1:59:56 阅读更多 →
C++核心知识点:从内存管理到STL的实战指南

C++核心知识点:从内存管理到STL的实战指南

C 这门语言我前前后后折腾了十几年,用它写过嵌入式驱动、做过游戏服务端,也搭过基础组件库。每次看到新人一头扎进"C 核心知识点"这个搜索词,我其实挺感慨的——这门语言的难点从来不是语法多,而是知识点之间的耦合太深…

2026/11/8 1:38:41 阅读更多 →
T109滑盖智能锁怎么装?安装调试与故障排查全攻略

T109滑盖智能锁怎么装?安装调试与故障排查全攻略

简介:亚太天能T109滑盖智能锁产品说明书以PDF格式发布,适合智能锁用户、安装人员与售后维修人员阅读。内容围绕T109系列指纹密码刷卡锁展开,先介绍前面板、后面板、锁体、机械钥匙、电池盒盖等部件名称与功能,再给出完整安装步骤&…

2026/11/9 7:45:06 阅读更多 →
LLM知识降熵:从信息垄断到理解权下放

LLM知识降熵:从信息垄断到理解权下放

你有没有过这种经历:翻开源码注释、论文摘要或者一份专业报告,每个字都认识,连在一起却像天书。想找人聊聊,身边要么没人懂,要么懂的懒得跟你解释。后来我试着把同一段内容丢给一个大语言模型,几秒钟之后&a…

2026/11/8 1:23:14 阅读更多 →

日新闻

周新闻

月新闻