前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >开源AIGC学习—文生图模型本地运行

开源AIGC学习—文生图模型本地运行

原创
作者头像
平常心
发布2024-03-13 20:41:19
4640
发布2024-03-13 20:41:19
举报
文章被收录于专栏:个人总结系列

一、模型本地下载

总共涉及3种方式,来源有huggingface、modelscope,个人学习因为笔记本电脑、网络缘故,选择代码自动下载默认路径然后cp到指定路径。

代码语言:python
代码运行次数:0
复制
1、手动下载
   教程见:https://zhuanlan.zhihu.com/p/475260268
2、git clone方式
   git clone https://huggingface.co/THUDM/chatglm3-6b  /huggingface
虽然也是从huggingface进行git下载,但还是出问题,报Checkout 'https://huggingface.co//huggingface/chatglm3-6b/None' for available files.  
说明本地模型加载有异常,去在线寻找地址不对报错。
3、代码自动下载 手动cp到指定目录
```
   from huggingface_hub import snapshot_download
   repo_id = 'THUDM/CogView2'
   model_dir = snapshot_download(repo_id)
   print(model_dir)

   cp -r model_dir $traget_dir
``` 
   modelscope的也类似

二、文生图模型本地运行

1、本地下载模型

代码语言:python
代码运行次数:0
复制
pip install modelscope

```
from modelscope import snapshot_download
model_dir = snapshot_download('damo/multi-modal_chinese_stable_diffusion_v1.0')
print(model_dir)
# /xx/.cache/modelscope/hub/damo/multi-modal_chinese_stable_diffusion_v1
 ``` 
N01:~# cp -r   /xx/.cache/modelscope/hub/damo/ modelscope/damo

2、python代码运行

代码语言:python
代码运行次数:0
复制
pip install torch
pip install opencv-python
pip install opencv-contrib-python
# 依赖安装,当前是 python3 (Python 3.10.12)
```
import torch
import cv2
from modelscope.pipelines import pipeline
from modelscope.utils.constant import Tasks

task = Tasks.text_to_image_synthesis
model_id = '/modelscope/damo/multi-modal_chinese_stable_diffusion_v1'
pipe = pipeline(task=task, model=model_id)
output = pipe({'text': '中国山水画'})
cv2.imwrite('/mnt/d/aigc_result/result.png', output['output_imgs'][0])
# 生成图片到指定路径
```

代码运行生成图片效果

中国山水
中国山水
代码语言:python
代码运行次数:0
复制
output = pipe({'text': '中国美食的一种饼类', 'num_inference_steps': 15, 'guidance_scale': 7.5, 'negative_prompt':'模
糊的'})

output = pipe({'text': '中国美食的一种,叫老婆饼,实际是面做的饼类', 'num_inference_steps': 50, 'guidance_scale': 7.
5, 'negative_prompt':'模糊的'})
老婆饼
老婆饼

num_inference_steps一般来说,推理步骤越多,生成的图像质量越高,但生成结果需要更多的时间。如果你想要更快的结果,你可以使用更少的步骤。num_inference_steps=较小值的去噪步骤,提到的图像质量相对较低,通常使用50次去噪步骤,足以得到一个高质量图像。

guidance_scale一种提高对条件信号的依从性的方法,在扩散模型的情况下它是文本和整体样本质量。调整它可以更好的使用图像质量更好或更具备多样性。值介于7和8.5之间通常是稳定扩散的好选择。默认情况下,管道使用的guidance_scale为7.5。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、模型本地下载
  • 二、文生图模型本地运行
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档