AI 作画火了,如何用 Serverless 函数计算部署 Stable Diffusion?

本文涉及的产品
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
可观测可视化 Grafana 版,10个用户账号 1个月
简介: AI 作画火了,如何用 Serverless 函数计算部署 Stable Diffusion?

作者:寒斜


立即体验基于函数计算部署 Stable Diffusion:

https://developer.aliyun.com/topic/aigc


AIGC 领域目前大火, 除了 Chatgpt,在文生图领域 Stable Diffusion 大放异彩,深刻的地影响着绘画、视频制作等相关领域。利用这项技术,普通人也可以制作出令人惊叹的艺术作品。今天我们将使用阿里云函数计算来部署一套 Stable Diffusion WebUi,给大家展示一下这项技术的魅力。在进入技术教程之前,我们先看一下笔者生成的相关图片内容。


Stable Diffusion WebUi:

https://github.com/AUTOMATIC1111/stable-diffusion-webui


画廊


sd+ mdjrny/ChilloutMix

Cheese Daddy

国风

daclefo_painting


函数计算的优势


  • 开箱即用,通过应用中心或者 Serverless Devs 一键部署快速体验,无需进行复杂的环境配置
  • 用时消费,通过 Serverless 弹性策略在您启动服务的才开始计费
  • 支持 GPU 渲染,出图快,花费低


准备项


1. 开通阿里云函数计算[1]

2. 开通阿里云容器镜像服务 ACR[2]

3. 下载 Serverless Devs[3]

4. 使用 Serverless Devs 配置阿里云秘钥信息[4]


快速开始


一行指令部署

  • 创建一个本地文件目录如 stable-diffusion
  • 在 stable-diffusion 目录下创建一个 s.yaml 文件,内容如下


edition: 1.0.0
name: fc-stable-diffusion
access: default
services:
  cn-shanghai-stable-diffusion-sd:
    component: devsapp/fc
    props:
      region: cn-shanghai
      service:
        description: stable-diffusion部署到函数计算
        internetAccess: true
        name: stable-diffusion
      function:
        handler: index.handler
        timeout: 600
        diskSize: 10240
        caPort: 7860
        instanceType: fc.gpu.tesla.1
        runtime: custom-container
        cpu: 8
        customContainerConfig:
          args: ''
          accelerationType: Default
          image: registry.cn-shanghai.aliyuncs.com/vipas/stable-diffusion-web:v2
          accelerationInfo:
            status: Preparing
          command: ''
          webServerMode: true
        instanceConcurrency: 1
        memorySize: 32768
        environmentVariables: {}
        gpuMemorySize: 16384
        name: sd
        asyncConfiguration: {}
      triggers:
        - name: defaultTrigger
          description: ''
          type: http
          qualifier: LATEST
          config:
            methods:
              - GET
              - POST
              - PUT
              - DELETE
            authType: anonymous
            disableURLInternet: false
      customDomains:
        - domainName: auto
          protocol: HTTP
          routeConfigs:
            - path: /*


  • 执行部署指令


s deploy


效果预览及操作

执行完部署指令后,很快就能拿到访问地址,如下面↓

http://sd.stable-diffusion.xxxxxx.cn-shanghai.fc.devsapp.net 内容(xxxxxx为您自己账号 uid)


cn-shanghai-stable-diffusion-sd: 
  region:   cn-shanghai
  service: 
    name: stable-diffusion
  function: 
    name:       sd
    runtime:    custom-container
    handler:    index.handler
    memorySize: 32768
    timeout:    600
  url: 
    system_url:    https://sd-stable-iffusion-zulpjlkgaj.cn-shanghai.fcapp.run
    custom_domain: 
      - 
        domain: http://sd.stable-diffusion.xxxxxx.cn-shanghai.fc.devsapp.net
  triggers: 
    - 
      type: http
      name: defaultTrigger


函数计算初次启动要花费 3-4 分钟,需要完成镜像拉取,冷启动等操作。


最后画面如下:



我们提供的默认镜像自带了 sd 基础模型。

部署成功之后您可以输入一些文字描述进行图片生成,如上图 sd 生成了一只可爱的小狗🐕。


总结及扩展


函数计算部署 SD,一行指令运行即可。但我们仍然面临很多实际的使用问题,比如这里使用的镜像仅保留了一个基础模型,后面要扩展需要重新打镜像,非常麻烦,整体冷启动时长较长,初次访问体验欠佳。诸如以上,如何动态管理模型和扩展,以及加快启动速度,在接下来实践篇我们进一步探讨。


有奖体验


阿里云将提供免费 Serverless 函数计算产品资源,邀请你,体验一把 AIGC 级的毕加索、达芬奇、梵高等大师作画的快感。下面请尽情发挥你的想象空间!!双重奖品设置,完成体验场景可得社区 1000 积分兑换奖品,还可参加 AI 生成图像比赛赢取 Airpods、500 元猫超卡及社区定制抱枕!


🌏 体验地址:

https://developer.aliyun.com/topic/aigc


你也可以轻松做出下方画作👇👇



相关链接:

[1] 函数计算

https://www.aliyun.com/product/fc?spm=5176.devs

[2] 容器镜像服务 ACR

https://www.aliyun.com/product/acr?spm=5176.28055625.J_3207526240.121.1d22154aWn0gl1&scm=20140722.M_4776670._.V_1

[3] Serverless Devs

https://docs.serverless-devs.com/serverless-devs/quick_start

[4] 阿里云秘钥信息

https://docs.serverless-devs.com/serverless-devs/command/config#config-add-%E5%91%BD%E4%BB%A4

相关实践学习
基于函数计算一键部署掌上游戏机
本场景介绍如何使用阿里云计算服务命令快速搭建一个掌上游戏机。
建立 Serverless 思维
本课程包括: Serverless 应用引擎的概念, 为开发者带来的实际价值, 以及让您了解常见的 Serverless 架构模式
相关文章
|
5天前
|
网络协议 Serverless 应用服务中间件
Serverless 应用引擎操作报错合集之阿里函数计算中在函数计算部署的stable diffusion应用无法访问如何解决
Serverless 应用引擎(SAE)是阿里云提供的Serverless PaaS平台,支持Spring Cloud、Dubbo、HSF等主流微服务框架,简化应用的部署、运维和弹性伸缩。在使用SAE过程中,可能会遇到各种操作报错。以下是一些常见的报错情况及其可能的原因和解决方法。
15 1
|
3天前
|
运维 负载均衡 Java
Serverless 应用引擎产品使用之在阿里函数计算中,创建了个关于 stable diffusion 的函数服务,总是很卡如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
19 0
|
4天前
|
运维 Serverless Linux
Serverless 应用引擎产品使用之在阿里函数计算中安装stable diffusion应用如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
21 4
|
4天前
|
人工智能 运维 Serverless
Serverless 应用引擎产品使用之阿里函数计算中部署Stable Diffusion如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
16 0
|
4天前
|
运维 Serverless 文件存储
Serverless 应用引擎产品使用之阿里函数计算中stable. diffusion应用的服务器可以使用那种99元100G一年的道用型nas如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
12 0
|
机器学习/深度学习 人工智能 自然语言处理
搜狗翻宝Pro机再次开挂,智能翻译硬件成中国人工智能的新风口
第五届世界互联网大会正在如火如荼的举行。
搜狗翻宝Pro机再次开挂,智能翻译硬件成中国人工智能的新风口
|
机器学习/深度学习 人工智能 自然语言处理
与世界同行 2017中国人工智能大会有感
与世界同行 2017中国人工智能大会有感
1545 0
与世界同行 2017中国人工智能大会有感
|
人工智能 自动驾驶
2019年上半年收集到的中国人工智能发展详情文章
2019年上半年收集到的中国人工智能发展详情文章
|
人工智能 芯片
中国人工智能计划,我来说几句
中国人工智能计划,我来说几句
|
机器学习/深度学习 人工智能 自然语言处理
2022 年中国人工智能行业发展现状与市场规模分析 市场规模超 3000 亿元
人工智能产业是智能产业发展的核心,是其他智能科技产品发展的基础,近年来,中国人工智能产业在政策与技术双重驱动下呈现高速增长态势。
1568 0
2022 年中国人工智能行业发展现状与市场规模分析 市场规模超 3000 亿元

相关产品

  • 函数计算