30行代码拥有个性stable-diffusion文生图在线GPU【免费】部署的应用

简介: 30行代码拥有个性stable-diffusion文生图在线GPU【免费】部署的应用

一、摘要


  • 老鸟们有信用卡注册hugfacede的就不用看我的了。
  • 本文利用aistudio的PaddleNLP,利用网络爬取的少量中国美食图片进行用LoRA模型训练。
  • 另外使用 AI Studio 应用中心进行模型部署,利用GPU资源进行推理展示!

地址:aistudio.baidu.com/aistudio/pr…


二、模型训练


【赛题链接】:github.com/PaddlePaddl…

【PaddlePaddle Hackathon 第四期 任务总览】:github.com/PaddlePaddl…

【队名】:大江向东我向西画画队

【模型简介】:美食、中国美食、顶尖美食

【模型链接】: huggingface.co/livingbody/…

【AI Studio 项目地址】:aistudio.baidu.com/aistudio/pr…【AI Studio 应用中心】:AIGC中国美食


1.创意简介&效果展示


  • 中国美食与花
  • a photo of Chinese cuisine  with flowers

image.pngimage.png


2.训练代码


2.1paddlenlp安装


# 请运行这里安装所需要的依赖环境!!
!pip install "paddlenlp>=2.5.2" safetensors "ppdiffusers>=0.11.1" --user
from IPython.display import clear_output
clear_output() # 清理很长的内容


2.2 huggingface登陆


!git config --global credential.helper store
from huggingface_hub import login
login()


2.3. 解压缩数据集


# 解压缩数据集
!unzip -qoa data/data198584/food.zip -d food


2.4. 训练


!python train_dreambooth_lora.py \
  --pretrained_model_name_or_path="runwayml/stable-diffusion-v1-5"  \
  --instance_data_dir="./food" \
  --output_dir="lora_outputs" \
  --instance_prompt="a photo of Chinese cuisine" \
  --resolution=512 \
  --train_batch_size=1 \
  --gradient_accumulation_steps=1 \
  --checkpointing_steps=100 \
  --learning_rate=1e-4 \
  --lr_scheduler="constant" \
  --lr_warmup_steps=0 \
  --max_train_steps=500 \
  --seed=0 \
  --lora_rank=4 \
  --push_to_hub=False \
  --validation_prompt="a photo of Chinese cuisine   with flowers" \
  --validation_steps=100 \
  --num_validation_images=4


2.5. 上传模型


from utils import upload_lora_folder
upload_dir                    = "lora_outputs"                   # 我们需要上传的文件夹目录
repo_name                     = "Chinese_Food"                  # 我们需要上传的repo名称
pretrained_model_name_or_path = "runwayml/stable-diffusion-v1-5" # 训练该模型所使用的基础模型
prompt                        = "a photo of Chinese cuisine  with flowers" # 搭配该权重需要使用的Prompt文本
upload_lora_folder(
    upload_dir=upload_dir,
    repo_name=repo_name,
    pretrained_model_name_or_path=pretrained_model_name_or_path,
    prompt=prompt, 
)

image.png

huggingface.co/livingbody/…


三、模型gradio部署


很简单,写代码,然后部署


1.写代码


# 1.安装依赖
import os
os.system("pip install paddlenlp==2.5.2")
os.system("pip install ppdiffusers==0.11.1")
# 2.导入库文件
import gradio as gr
from ppdiffusers import DiffusionPipeline, DPMSolverMultistepScheduler
import paddle
# 3.功能函数
def quickstart(prompt):
    image = pipe(prompt).images[0]
    return image
# 4.样式设计
with gr.Blocks() as demo:
    gr.Markdown("# 用LoRA 和 DreamBooth画出你眼中的 中国美食吧")
    gr.Image("image/500.png")
    gr.Markdown("## promot 为: Chinese cuisine ,即中国美食的意思。")
    greet_btn = gr.Button("开始生成") 
    input_text=gr.Textbox(label="输入你想要描述的中国美食")   
    # 5.接口调用
    greet_btn.click(quickstart, inputs=input_text, outputs=gr.Image())
# 6.加载模型
pipe = DiffusionPipeline.from_pretrained("runwayml/stable-diffusion-v1-5")
pipe.scheduler = DPMSolverMultistepScheduler.from_config(pipe.scheduler.config)
pipe.unet.load_attn_procs("lora_outputs/", from_hf_hub=True)
# 7.启动
demo.launch()

2.点击部署


image.png


3.界面


image.png

image.png


4.生成图


image.png

地址:aistudio.baidu.com/aistudio/pr…


相关实践学习
基于阿里云DeepGPU实例,用AI画唯美国风少女
本实验基于阿里云DeepGPU实例,使用aiacctorch加速stable-diffusion-webui,用AI画唯美国风少女,可提升性能至高至原性能的2.6倍。
目录
相关文章
|
4天前
|
人工智能 机器人 Serverless
魔搭大模型一键部署到阿里云函数计算,GPU 闲置计费功能可大幅降低开销
魔搭大模型一键部署到阿里云函数计算,GPU 闲置计费功能可大幅降低开销
599 2
|
4天前
|
TensorFlow 算法框架/工具 异构计算
Windows部署TensorFlow后识别GPU失败,原因是啥?
Windows部署TensorFlow后识别GPU失败,原因是啥?
|
4天前
|
并行计算 Linux Docker
Docker【部署 07】镜像内安装tensorflow-gpu及调用GPU多个问题处理Could not find cuda drivers+unable to find libcuda.so...
Docker【部署 07】镜像内安装tensorflow-gpu及调用GPU多个问题处理Could not find cuda drivers+unable to find libcuda.so...
341 0
|
7月前
|
人工智能 并行计算 openCL
魔搭+Xinference 平台:CPU,GPU,Mac-M1多端大模型部署
随着 Llama2 的开源,以及通义千问、百川、智谱等国内大模型的问世,很多用户有了本地部署去尝试大模型的需求,然而硬件的需求阻碍了很多人的尝试,并不是所有人都拥有一块英伟达显卡的,所以 Llama2 问世不久,大神 Andrej Karpathy 的一个 weekend project 爆火——llama2.c。
魔搭+Xinference 平台:CPU,GPU,Mac-M1多端大模型部署
|
7月前
|
PyTorch Serverless 算法框架/工具
Serverless应用引擎中部署带有GPU支持的PyTorch镜像
Serverless应用引擎中部署带有GPU支持的PyTorch镜像
182 1
|
8月前
|
弹性计算 人工智能 PyTorch
GPU实验室-在云上部署ChatGLM2-6B大模型
ChatGLB2-6B大模型:由智谱AI及清华KEG实验室于2023年6月发布的中英双语对话开源大模型。截至2023年7月,在C-Eval中,排名靠前。Pytorch:一个开源的Python机器学习库,基于Torch,底层由C++实现,应用于人工智能领域,如计算机视觉和自然语言处理。它主要由Meta Platforms的人工智能研究团队开发。著名的用途有:特斯拉自动驾驶,Uber最初发起而现属Linux基金会项目的概率编程软件Pyro,Lightning。
|
4天前
|
机器学习/深度学习 人工智能 异构计算
【Docker 专栏】Docker 与 GPU 加速应用的结合
【5月更文挑战第9天】GPU加速技术在处理大规模数据和复杂计算时展现强大性能,尤其在AI和深度学习领域。Docker作为轻量级容器化工具,提供隔离、可移植和高效的环境。结合GPU加速,关键在于容器访问GPU设备和安装相应驱动。NVIDIA提供了支持工具,允许Docker利用GPU。应用场景包括人工智能、科学计算和视频处理。优势包括资源利用率提升和部署灵活性,但面临驱动兼容性、资源管理和监控调试的挑战。未来,随着技术发展,Docker与GPU加速在边缘计算中的应用将有广阔前景。
【Docker 专栏】Docker 与 GPU 加速应用的结合
|
4天前
|
关系型数据库 Serverless 异构计算
Serverless 应用引擎产品使用之在阿里云函数计算中使用包含GPU的实例并且镜像超过10GB了如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
58 0
|
4天前
|
运维 监控 Serverless
一键开启 GPU 闲置模式,基于函数计算低成本部署 Google Gemma 模型服务
本文介绍如何使用函数计算 GPU 实例闲置模式低成本、快速的部署 Google Gemma 模型服务。
164803 57
|
4天前
|
弹性计算 并行计算 UED
带你读《弹性计算技术指导及场景应用》——4. 自动安装NVIDIA GPU驱动和CUDA组件
带你读《弹性计算技术指导及场景应用》——4. 自动安装NVIDIA GPU驱动和CUDA组件
http://www.vxiaotou.com