Google Colab上で使用する「TheLastBen」さんのノートブックを使用されている方向けです。
以下の2つのコードセルを追加して、順番に実行(バージョンを選択→実行)することで
バージョンを指定して、Stable Diffusion WebUIを実行することが出来ます。
手順は、
「Connect Google Drive」と
「Install/Update AUTOMATIC1111 repo」の次、
3番目と4番目にコードを追加します。
3番目に追加するコードはバージョンを選択するセルになります。
4番目では3番目で選択したバージョンを実行するセルになります。
追加する3番、4番のコードを実行後に「Requirements」や
「Model Download/Load」などのセルを実行してください。
2024/05/24 現在、Stable Diffusion WebUIのバージョンは1.9.3ですが、
私は1.8.0を使用しております。
3番目のコード
#@markdown # バージョン選択(選択後次の「実行」を行うこと)
#Programming by Gontaro
import ipywidgets as widgets
import requests
from datetime import datetime
my_ggef_a_ver="v[0.0.1]a-2024/05/11"
my_ggef_b_ver="v[0.0.1]b-2024/05/11"
repo_owner = "AUTOMATIC1111"
repo_name = "stable-diffusion-webui"
options = []
def get_releases(repo_owner, repo_name):
url = f"https://api.github.com/repos/{repo_owner}/{repo_name}/releases"
response = requests.get(url)
if response.status_code == 200:
releases = response.json()
return releases
else:
print(f"Failed to fetch releases. Status code: {response.status_code}")
return None
def choiceTagNames(arr):
result=[]
if arr:
for release in arr:
tag_name = release['tag_name']
created_at = release['created_at']
date_obj = datetime.fromisoformat(created_at.replace("Z", "+00:00"))
form_dt = date_obj.strftime("%Y/%m/%d %H:%M:%S")
tmp=tag_name+"#"+form_dt
result.append(tmp)
return result
pass
releases = get_releases(repo_owner, repo_name)
options=choiceTagNames(releases)
select_box = widgets.Select(
options=options,
description='Select an option:'
)
display(select_box)
print("ThisScriptVersion:"+my_ggef_a_ver)
4番目のコード
#@markdown # バージョン変更及び実行(GIT-CheckOut)
# ユーザーが選択したオプションの値を取得
selected_option = select_box.value
print("Selected option:", selected_option)
spl = selected_option.split("#")
sver=spl[0].replace("[", "").replace(",", "")
print("ThisScriptVersion:"+my_ggef_b_ver)
!git checkout tags/$sver
command = f"git checkout tags/{sver}"
print(command)
以上です。
3番目に追加するコードを実行して、すぐに4番目のコードは実行しないでください。
必ず、3番目に追加するコードを実行後にセレクトボックスからバージョンを指定して
4番目のコードを実行するようにしてください。
コメント