日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

5分鐘使用EAS一鍵部署Kohya SD模型微調應用

通過EAS,您可以一鍵部署開源Kohya_ss服務并訓練LoRA模型。在AI繪畫場景中,您可以將經過訓練的LoRA模型應用于Stable Diffusion(SD)服務,作為輔助模型,以提升SD繪畫的效果。

前提條件

準備工作

  1. 登錄OSS管理控制臺,進入某個同地域下的Bucket路徑內。例如:oss://kohya-demo/kohya/

  2. 在當前Bucket路徑下新建項目文件夾。例如:KaraDetroit_loar。同時,在此項目文件夾下新建ImageLogModel3個文件夾,如有JSON配置文件也可上傳至此項目文件夾。

    image.png

    • Image:存放訓練素材源文件。

    • Model:存放訓練完成后的模型文件。

    • Log:存放日志。

    • SS_config.json:JSON文件,用于批量配置參數,非必需。使用時可在JSON配置中修改相關參數,如文件夾路徑、輸出模型命名等。具體配置詳情可參考GitHub。文本示例請參考SS_config.json

  3. 將準備好的圖片打包成壓縮文件上傳至Image文件夾下。本文使用的圖片及描述文件示例:100_pic.tgz

    image.png

    重要
    • 圖片文件夾命名必須符合格式:數字+下劃線+名稱。例如:100_pic。

    • 圖片僅支持格式:.png.jpg.jpeg.webp.bmp

    • 每張圖片必須提供一個同名的描述文件,格式可為.txt,描述信息必須放在第一行,如有多個描述信息,可使用逗號分隔。

    參數

    描述

    數字

    每張圖片重復訓練次數,一般要求大于等于100。總訓練次數一般要求大于1500。

    • 若文件夾內包含10張圖片,則每張圖片訓練1500/10=150次,圖片文件夾名數字部分可為“150”。

    • 若文件夾內包含20張圖片,則每張圖片訓練1500/20=75(<100)次,圖片文件夾名數字部分可為“100”。

    下劃線

    固定值,必填。

    名稱

    符合OSS文件名稱規則的任意字符串,本例中為“pic”。

部署Kohya_ss服務

  1. 進入模型在線服務頁面。

    1. 登錄PAI控制臺

    2. 在左側導航欄單擊工作空間列表,在工作空間列表頁面中單擊待操作的工作空間名稱,進入對應工作空間內。

    3. 在工作空間頁面的左側導航欄選擇模型部署>模型在線服務(EAS),進入模型在線服務(EAS)頁面。image

  2. 模型在線服務(EAS)頁面,單擊部署服務,在自定義模型部署區域,單擊自定義部署

  3. 新建服務頁面,可通過表單或JSON配置相關參數。

    通過表單配置參數

    • 配置模型服務信息

      image

      參數

      描述

      服務名稱

      自定義服務名稱。本案例使用的示例值為:kohya_ss_demo。

      部署方式

      選擇鏡像部署AI-Web應用

      鏡像選擇

      PAI平臺鏡像列表中選擇kohya_ss;鏡像版本選擇1.2

      說明

      由于版本迭代迅速,部署時鏡像版本選擇最高版本即可。

      模型配置

      • 掛載類型:OSS掛載。本文以OSS掛載為例。

      • OSS路徑:選擇同地域下的OSS路徑。本文為oss://kohya-demo/kohya/

      • 掛載路徑:可自定義。本文為/workspace

        重要

        是否只讀必須將開關關閉。否則模型文件無法輸出到OSS中。

      運行命令

      • 選擇鏡像后系統會自動配置運行命令。本文為:python -u kohya_gui.py --listen=0.0.0.0 --server_port=8000 --headless

        • --listen用于將本程序綁定到指定的本機IP地址上,接收外部請求并進行處理。

        • --server_port:監聽端口號。

    • 配置資源部署信息

      image

      參數

      描述

      資源組種類

      選擇公共資源組

      資源配置方法

      選擇常規資源配置

      資源配置選擇

      必須選擇GPU類型,實例規格推薦使用ml.gu7i.c16m60.1-gu30(性價比最高)。本文選擇了當前最小規格ml.gu7i.c8m30.1-gu30

    • 其它未提及配置可根據實際情況按需設置。

    通過JSON配置參數

    • 對應配置編輯中設置JSON格式數據。

      image.png

    • JSON參考示例如下。

      重要

      以下示例第4行"name",第18行"oss"等配置請按實際情況修改。

      {
          "metadata":
          {
              "name": "kohya_ss_demo",
              "instance": 1,
              "enable_webservice": true
          },
          "cloud":
          {
              "computing":
              {
                  "instance_type": "ecs.gn6e-c12g1.12xlarge",
                  "instances": null
              }
          },
          "storage": [
          {
              "oss":
              {
                  "path": "oss://kohya-demo/kohya/",
                  "readOnly": false
              },
              "properties":
              {
                  "resource_type": "model"
              },
              "mount_path": "/workspace"
          }],
          "containers": [
          {
              "image": "eas-registry-vpc.cn-hangzhou.cr.aliyuncs.com/pai-eas/kohya_ss:1.2",
              "script": "python -u kohya_gui.py --listen=0.0.0.0 --server_port=8000 --headless",
              "port": 8000
          }]
      }
  4. 單擊部署,等待幾分鐘后即可完成模型部署。當服務狀態運行中時,服務部署成功。

訓練LoRA模型

  1. 單擊目標服務服務方式列下的查看Web應用,進入Kohya_ss服務。

  2. 選擇Dreambooth LoRA

    image.png

  3. 設置Configuration file。可選,若無SS_config.json可跳過此步驟。

    image.png

    說明

    配置文件路徑為配置模型服務信息中的掛載路徑+OSS中創建的文件夾路徑+SS_config.json。在本文中為:/workspace/KaraDetroit_loar/SS_config.json

  4. 設置SourceModel。本文使用safetensors,相比較checkpoint來說更具有安全性。

    image.png

  5. 設置Folders。填寫前面步驟在OSS中所創建的ImageLogModel路徑和輸出文件名。

    image.png

    參數

    描述

    Image folder

    需要訓練的圖片文件夾路徑。設置為配置模型服務信息中的掛載路徑拼接OSS中創建的Image路徑。在本文中為:/workspace/KaraDetroit_loar/Image

    Logging folder

    輸出日志的文件夾路徑。設置為配置模型服務信息中的掛載路徑拼接OSS中創建的Log路徑。在本文中為:/workspace/KaraDetroit_loar/Log

    Output folder

    輸出模型的文件夾路徑。設置為配置模型服務信息中的掛載路徑拼接OSS中創建的Model路徑。在本文中為:/workspace/KaraDetroit_loar/Model

    Model output name

    模型輸出名稱。例如:my_model。

  6. 設置Training parameters。示例值見準備工作步驟中的SS_config.json內容。

    參數

    描述

    LoRA Type

    LoRA類型:

    • LoCON:可以調整SD的每一層。如:ResBlockTransformer

    • LoHA:同樣大小處理更多信息。

    LoRA network weights

    LoRA網絡權重,如果要接著訓練則選用最后訓練的LoRA。選填。

    Train batch size

    訓練批量大小。該值越大,對顯存的要求越高。

    Epoch

    訓練輪數,將所有數據訓練一次為一輪。需要自行計算。一般情況下:

    • Kohya中總訓練次數 = 訓練圖片數量 x 重復次數 x 訓練輪數 / 訓練批量大小

    • WebUI中總訓練次數 = 訓練圖片數量 x 重復次數

    使用類別圖像時,在Kohya或在WebUI中總訓練次數都會乘2,在Kohya中模型存儲次數會減半。

    Save every N epochs

    每N個訓練周期保存一次。如設為2,則每完成2輪訓練保存一次訓練結果。

    Caption Extension

    打標文件擴展名,例如:.txt。選填。

    Mixed precision

    混合精度。視顯卡性能決定。默認可選no、fp16、bf16。30GB顯存以上的顯卡建議設置為bf16。

    Save precision

    保存精度,同上。

    Number of CPU threads per core

    CPU每核線程數。主要為顯存,根據所購實例和需求調整。

    Learning rate

    學習率。默認0.0001。

    LR Scheduler

    學習率調度器。按需選擇cosinecosine with restart等函數。

    LR Warmup(% of steps)

    學習預熱步數。按需調節,默認為10,無需預熱則可選擇0。

    Optimizer

    優化器。按需選擇,默認AdamW8bitDAdaptation代表自動操作。

    Max Resolution

    最大分辨率。根據圖片情況進行設置。

    Network Rank(Dimension)

    模型復雜度。一般設置為128即可適應大部分場景。

    Network Alpha

    一般設置為比Network Rank(Dimension)小或者相同,常用的便是Network Rank設置為128,Network Alpha設置為64。

    Convolution Rank(Dimension)

    & Convolution Alpha

    卷積度,LoRA對模型的微調涵蓋范圍。需根據不同的LoRA Type進行調整。

    Kohya官方建議:

    • LoCondim <= 64alpha = 1(或更低)。

    • LoHAdim <= 32alpha = 1

    clip skip

    使用的CLIP模型的次數,取值范圍是1到12,值越小,生成的圖像就越接近原始圖像或輸入圖像。

    • 寫實模型:選擇1。

    • 二次元:選擇2。

    Sample every n epoch

    每N輪樣本。每幾輪保存一次樣本。

    Sample Prompts

    提示詞樣本。需要使用命令,參數如下:

    • --n:提示詞、反向提示詞。

    • --w:圖片寬度。

    • --h:圖片高度。

    • --d:圖像種子。

    • --l:提示詞相關性(cfg)。

    • --s:迭代步數(steps)。

  7. 在頁面下方,單擊Train model開始進行訓練。image.png

  8. 模型在線服務(EAS)頁面的服務列表中單擊對應的服務名稱,進入服務詳情。單擊服務日志即可實時查看訓練進度。

    image

    當出現model saved即表示訓練完成。

    image.png

  9. 訓練完成后,在配置的模型目錄(Model)中獲取訓練得到的LoRA模型文件。例如:my_model.safetensors

    image.png

使用訓練的LoRA模型進行Stable Diffusion AIGC繪畫

當您訓練好自己的LoRA模型后,可將其上傳到相應的SD WebUI的目錄中進行掛載使用,從而實現利用自己訓練的LoRA模型生成圖片。如何部署Stable Diffusion服務,可參考:5分鐘使用EAS一鍵部署Stable Diffusion實現文生圖能力

如何在Stable Diffusion WebUI中上傳LoRA模型文件,詳情設置如下:

Stable Diffusion WebUI的集群版(Cluster)

  1. 配置Stable Diffusion WebUI模型服務信息

    image.png

    說明

    stable-diffusion-webui需選擇-cluster版本,服務啟動成功后會在掛載的OSS路徑下自動創建/data-{當前登錄用戶ID}/models/Lora路徑。

  2. 運行命令中添加以下參數:

    • --lora-dir,可選參數。

      • --lora-dir未指定時,所有用戶的模型文件隔離,只加載{OSS路徑}/data-{當前登錄用戶ID}/models/Lora下的模型文件。

      • --lora-dir指定時,所有用戶均會加載該目錄以及{OSS路徑}/data-{當前登錄用戶ID}/models/Lora目錄下的模型文件。例如:--lora-dir /code/stable-diffusion-webui/data-oss/models/Lora

    • --data-dir {OSS掛載路徑},例如:--data-dir /code/stable-diffusion-webui/data-oss

  3. 將LoRA模型文件上傳到 {OSS路徑}/data-{當前登錄用戶ID}/models/Lora中。例如:oss://bucket-test/data-oss/data-1596******100/models/Lora

    image.png

    說明

    OSS中的/data-{當前登錄用戶ID}/models/Lora路徑會在當前服務啟動成功后自動創建,因此需在服務啟動成功后再上傳LoRA模型文件。

    {當前登錄用戶ID}可在頁面右上角的個人頭像處查看。

    image.png

Stable Diffusion WebUI的單機版

  1. 配置Stable Diffusion WebUI模型服務信息

    image.png

    說明

    stable-diffusion-webui需選擇非-cluster版本,服務啟動成功后會在掛載的OSS路徑下自動創建/models/Lora路徑。

  2. 運行命令中添加參數:--data-dir {OSS掛載路徑}。例如:--data-dir /code/stable-diffusion-webui/data-oss

  3. 將LoRA模型文件上傳到{OSS路徑}/models/Lora下。例如:oss://bucket-test/data-oss/models/Lora

    image.png

    說明

    掛載的OSS中的/models/Lora路徑會在當前服務啟動成功后自動創建,無需自行創建。因此需要在服務啟動成功后再上傳LoRA模型文件。