mirror of
https://github.com/easydiffusion/easydiffusion.git
synced 2025-04-24 11:28:19 +02:00
Merge pull request #1048 from JeLuF/base36
🔥Hotfix: Avoid name clashes for autosave files
This commit is contained in:
commit
6ef72f03ff
@ -1,11 +1,11 @@
|
|||||||
import os
|
import os
|
||||||
import time
|
import time
|
||||||
import base64
|
|
||||||
import re
|
import re
|
||||||
|
|
||||||
from easydiffusion.types import TaskData, GenerateImageRequest
|
from easydiffusion.types import TaskData, GenerateImageRequest
|
||||||
|
|
||||||
from sdkit.utils import save_images, save_dicts
|
from sdkit.utils import save_images, save_dicts
|
||||||
|
from numpy import base_repr
|
||||||
|
|
||||||
filename_regex = re.compile("[^a-zA-Z0-9._-]")
|
filename_regex = re.compile("[^a-zA-Z0-9._-]")
|
||||||
|
|
||||||
@ -133,8 +133,7 @@ def make_filename_callback(req: GenerateImageRequest, suffix=None, now=None):
|
|||||||
now = time.time()
|
now = time.time()
|
||||||
|
|
||||||
def make_filename(i):
|
def make_filename(i):
|
||||||
img_id = base64.b64encode(int(now + i).to_bytes(8, "big")).decode() # Generate unique ID based on time.
|
img_id = base_repr(int(now * 10000), 36)[-7:] + base_repr(int(i),36) # Base 36 conversion, 0-9, A-Z
|
||||||
img_id = img_id.translate({43: None, 47: None, 61: None})[-8:] # Remove + / = and keep last 8 chars.
|
|
||||||
|
|
||||||
prompt_flattened = filename_regex.sub("_", req.prompt)[:50]
|
prompt_flattened = filename_regex.sub("_", req.prompt)[:50]
|
||||||
name = f"{prompt_flattened}_{img_id}"
|
name = f"{prompt_flattened}_{img_id}"
|
||||||
|
Loading…
Reference in New Issue
Block a user