Buckets:
| import"../chunks/DsnmJJEf.js";import{i as f,h,C as g,H as J,a as e,E as y,s as Z}from"../chunks/DdZvggmf.js";import{p as U,o as b,s as l,f as w,a as r,b as j,c,n as I}from"../chunks/BbekZcyp.js";const W='{"title":"AutoPipeline","local":"autopipeline","sections":[],"depth":1}';var T=c('<meta name="hf:doc:metadata"/>'),G=c('<p></p> <!> <!> <p><a href="../api/models/auto_model">AutoPipeline</a> 是一种按<em>任务和模型</em>选择的pipeline,会根据任务自动选择正确的pipeline子类。这样你就不用提前知道具体的pipeline子类名称,也能加载不同类型的pipeline。</p> <p>这和 <code>DiffusionPipeline</code> 不同。后者是只按<em>模型</em>选择的pipeline,会根据模型自动选择pipeline子类。</p> <p><code>AutoPipelineForImage2Image</code> 会返回某个特定的pipeline子类,例如 <code>StableDiffusionXLImg2ImgPipeline</code>,它只能用于 image-to-image 任务。</p> <!> <p>如果用同一个模型加载 <code>DiffusionPipeline</code>,则会返回 <code>StableDiffusionXLPipeline</code> 子类。它可以根据输入用于 text-to-image、image-to-image 或 inpainting 任务。</p> <!> <p>你可以查看 <a href="https://github.com/huggingface/diffusers/blob/130fd8df54f24ffb006d84787b598d8adc899f23/src/diffusers/pipelines/auto_pipeline.py#L114" rel="nofollow">mappings</a>,确认某个模型是否受支持。</p> <p>如果尝试加载不受支持的模型,就会报错。</p> <!> <p><a href="../api/models/auto_model">AutoPipeline</a> 一共有四种类型:</p> <ul><li><code>AutoPipelineForText2Image</code></li> <li><code>AutoPipelineForImage2Image</code></li> <li><code>AutoPipelineForInpainting</code></li> <li><code>AutoPipelineForText2Audio</code></li></ul> <p>这些类都带有预定义的映射关系,会把某个pipeline关联到对应任务的子类上。</p> <p>调用 <code>from_pretrained()</code> 时,它会从 <code>model_index.json</code> 文件中提取类名,并根据映射关系为该任务选择合适的pipeline子类。</p> <!> <p></p>',1);function A(m,u){U(u,!1),b(()=>{new URLSearchParams(window.location.search).get("fw")}),f();var a=G();h("4ifgl2",t=>{var d=T();Z(d,"content",W),r(t,d)});var i=l(w(a),2);g(i,{containerStyle:"float: right; margin-left: 10px; display: inline-flex; position: relative; z-index: 10;"});var s=l(i,2);J(s,{title:"AutoPipeline",local:"autopipeline",headingTag:"h1"});var p=l(s,8);e(p,{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwZGlmZnVzZXJzJTIwaW1wb3J0JTIwQXV0b1BpcGVsaW5lRm9ySW1hZ2UySW1hZ2UlMEElMEFwaXBlbGluZSUyMCUzRCUyMEF1dG9QaXBlbGluZUZvckltYWdlMkltYWdlLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjJSdW5EaWZmdXNpb24lMkZKdWdnZXJuYXV0LVhMLXY5JTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5iZmxvYXQxNiUyQyUyMGRldmljZV9tYXAlM0QlMjJjdWRhJTIyJTJDJTBBKSUwQXByaW50KHBpcGVsaW5lKSUwQSUyMlN0YWJsZURpZmZ1c2lvblhMSW1nMkltZ1BpcGVsaW5lJTIwJTdCJTBBJTIwJTIwJTIyX2NsYXNzX25hbWUlMjIlM0ElMjAlMjJTdGFibGVEaWZmdXNpb25YTEltZzJJbWdQaXBlbGluZSUyMiUyQyUwQSUyMCUyMC4uLiUwQSUyMg==",highlighted:`<span class="hljs-keyword">import</span> torch | |
| <span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForImage2Image | |
| pipeline = AutoPipelineForImage2Image.from_pretrained( | |
| <span class="hljs-string">"RunDiffusion/Juggernaut-XL-v9"</span>, torch_dtype=torch.bfloat16, device_map=<span class="hljs-string">"cuda"</span>, | |
| ) | |
| <span class="hljs-built_in">print</span>(pipeline) | |
| <span class="hljs-string">"StableDiffusionXLImg2ImgPipeline { | |
| "</span>_class_name<span class="hljs-string">": "</span>StableDiffusionXLImg2ImgPipeline<span class="hljs-string">", | |
| ... | |
| "</span>`,lang:"py",wrap:!1});var n=l(p,4);e(n,{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwZGlmZnVzZXJzJTIwaW1wb3J0JTIwRGlmZnVzaW9uUGlwZWxpbmUlMEElMEFwaXBlbGluZSUyMCUzRCUyMERpZmZ1c2lvblBpcGVsaW5lLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjJSdW5EaWZmdXNpb24lMkZKdWdnZXJuYXV0LVhMLXY5JTIyJTJDJTIwdG9yY2hfZHR5cGUlM0R0b3JjaC5iZmxvYXQxNiUyQyUyMGRldmljZV9tYXAlM0QlMjJjdWRhJTIyJTJDJTBBKSUwQXByaW50KHBpcGVsaW5lKSUwQSUyMlN0YWJsZURpZmZ1c2lvblhMUGlwZWxpbmUlMjAlN0IlMEElMjAlMjAlMjJfY2xhc3NfbmFtZSUyMiUzQSUyMCUyMlN0YWJsZURpZmZ1c2lvblhMUGlwZWxpbmUlMjIlMkMlMEElMjAlMjAuLi4lMEElMjI=",highlighted:`<span class="hljs-keyword">import</span> torch | |
| <span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> DiffusionPipeline | |
| pipeline = DiffusionPipeline.from_pretrained( | |
| <span class="hljs-string">"RunDiffusion/Juggernaut-XL-v9"</span>, torch_dtype=torch.bfloat16, device_map=<span class="hljs-string">"cuda"</span>, | |
| ) | |
| <span class="hljs-built_in">print</span>(pipeline) | |
| <span class="hljs-string">"StableDiffusionXLPipeline { | |
| "</span>_class_name<span class="hljs-string">": "</span>StableDiffusionXLPipeline<span class="hljs-string">", | |
| ... | |
| "</span>`,lang:"py",wrap:!1});var o=l(n,6);e(o,{code:"aW1wb3J0JTIwdG9yY2glMEFmcm9tJTIwZGlmZnVzZXJzJTIwaW1wb3J0JTIwQXV0b1BpcGVsaW5lRm9ySW1hZ2UySW1hZ2UlMEElMEFwaXBlbGluZSUyMCUzRCUyMEF1dG9QaXBlbGluZUZvckltYWdlMkltYWdlLmZyb21fcHJldHJhaW5lZCglMEElMjAlMjAlMjAlMjAlMjJvcGVuYWklMkZzaGFwLWUtaW1nMmltZyUyMiUyQyUyMHRvcmNoX2R0eXBlJTNEdG9yY2guZmxvYXQxNiUyQyUwQSklMEElMjJWYWx1ZUVycm9yJTNBJTIwQXV0b1BpcGVsaW5lJTIwY2FuJ3QlMjBmaW5kJTIwYSUyMHBpcGVsaW5lJTIwbGlua2VkJTIwdG8lMjBTaGFwRUltZzJJbWdQaXBlbGluZSUyMGZvciUyME5vbmUlMjI=",highlighted:`<span class="hljs-keyword">import</span> torch | |
| <span class="hljs-keyword">from</span> diffusers <span class="hljs-keyword">import</span> AutoPipelineForImage2Image | |
| pipeline = AutoPipelineForImage2Image.from_pretrained( | |
| <span class="hljs-string">"openai/shap-e-img2img"</span>, torch_dtype=torch.float16, | |
| ) | |
| <span class="hljs-string">"ValueError: AutoPipeline can't find a pipeline linked to ShapEImg2ImgPipeline for None"</span>`,lang:"py",wrap:!1});var M=l(o,10);y(M,{source:"https://github.com/huggingface/diffusers/blob/main/docs/source/zh/tutorials/autopipeline.md"}),I(2),r(m,a),j()}export{A as component}; | |
Xet Storage Details
- Size:
- 6.02 kB
- Xet hash:
- db1cc428f678e87adbb1a5ad0e784b2f4a17960887edcf8b8ecc8428b2b2864c
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.