开发者社区 > 云原生 > Serverless > 正文

函数计算FC如何创建自定义版本的SD?

函数计算FC如何创建自定义版本的SD?

展开
收起
三分钟热度的鱼 2024-05-22 21:19:18 33 0
2 条回答
写回答
取消 提交回答
  • 您需要首先安装 Docker 程序,根据引导程序安装完成后进入终端进行构建
    下载地址:Docker: Accelerated Container Application Development

    进入到 src/code/images,执行 DOCKER_BUILDKIT=1 docker build -f Dockerfile --target anime -t stable-diffusion:anime-v1 . 即可开始构建镜像
    Dockerfile 支持多阶段构建,您可以通过修改 --target 来指定要构建的目标阶段,并且通过修改 -t 自定义您自己期望的镜像名
    (阿里云容器镜像服务要求的镜像名为 registry.{region}.aliyuncs.com/{namespace}/{repo}:{tag},可通过 docker tag {原本的镜像名} {新的镜像名} 修改镜像名称)

    镜像可推送至阿里云容器镜像服务https://cr.console.aliyun.com,根据引导创建您的 namespace 和 repo,并配置鉴权信息推送(请推送到您期望部署的地区)

    您可以直接在 函数计算 - 服务及函数 找到您 Stable Diffusion 对应的服务,并进入 sd 函数修改镜像地址
    image.png

    如果您需要自己从 0 部署自己的镜像到函数,可以如下执行:

    1. 创建服务
      image.png

    2. 创建函数(选择使用容器镜像创建),镜像提示填写您在阿里云容器镜像服务的地址
      image.png

    3. 指定监听端口,我们在 Dockerfile 中配置的是 7860,并启用 GPU
      image.png
    4. 根据需要填写其他必要的信息(如您在镜像中配置了需要读入特殊的环境变量,可以一并设置)

    ——参考链接

    2024-05-23 08:21:05
    赞同 展开评论 打赏
  • 以下是一个简化的流程:

    准备基础镜像:
    从现有的稳定版本开始,比如使用官方或社区维护的基础镜像,如 registry.cn-hangzhou.aliyuncs.com/aliyun-fc/fc-stable-diffusion:realman-v16。

    修改 Dockerfile:

    在 Dockerfile 中,可以通过更改或添加 RUN、COPY、CMD 等指令来自定义配置、安装额外的依赖、集成插件或更新模型。
    例如,如果你想安装一个新的插件(如 sd-webui-inpaint-anything),可以像下面这样操作:
    FROM registry.cn-hangzhou.aliyuncs.com/aliyun-fc/fc-stable-diffusion:realman-v16
    RUN git clone https://github.com/Uminosachi/sd-webui-inpaint-anything.git ${SD_BUILTIN}/extensions/sd-webui-inpaint-anything
    RUN --mount=type=cache,target=/root/.cache/pip pip install <所需依赖>
    RUN echo "inpaint-anything-v1" > /IMAGE_TAG

    构建并推送镜像:

    使用 Docker 构建命令创建新的镜像,替换 <您的 ACR 命名空间> 和 <您的 ACR 仓库地址> 以及 <版本号>:
    docker build -t registry.cn-hangzhou.aliyuncs.com/<您的 ACR 命名空间>/<您的 ACR 仓库地址>:<版本号> .

    登录阿里云容器镜像服务 ACR,并推送您的镜像。

    部署自定义镜像:

    在函数计算服务中,更新部署配置,使用您刚推送的自定义镜像地址。

    验证与调整:

    重新加载 WebUI 并检查新功能是否正常工作。如有需要,重复上述过程进行调整。

    记得,自定义过程中可能需要对 WebUI 的配置、环境变量等进行相应调整,以确保所有组件协同工作。此外,考虑到合规性和性能因素,确保您有权使用并分发所包含的所有软件组件。 此回答整理自钉群“【交流群】函数计算 AIGC 场景技术交流”

    2024-05-22 22:08:51
    赞同 7 展开评论 打赏

快速交付实现商业价值。

相关产品

  • 函数计算
  • 相关电子书

    更多
    Hologres Serverless之路:揭秘弹性计算组 立即下载
    Serverless开发平台: 让研发效能再提升 立即下载
    Serverless 引领云上研发新范式 立即下载