当前位置: 首页 > news >正文

aigc 启动器 sd-webui-aki-v4 decode_base64_to_file

下载地址:

SD-WebUI启动器 绘世-启动器 | 万物档案

decode_base64_to_file报错:

  File "E:\BaiduNetdiskDownload\stable diffusion\sd-webui-aki-v4\extensions\sd-webui-controlnet\scripts\external_code.py", line 7, in <module>from modules.api import apiFile "E:\BaiduNetdiskDownload\stable diffusion\sd-webui-aki-v4\modules\api\api.py", line 9, in <module>from gradio.processing_utils import decode_base64_to_file
ImportError: cannot import name 'decode_base64_to_file' from 'gradio.processing_utils'

报错2:

import gradio as gr
original_IOComponent_init = gr.components.IOComponent.__init__

4.*版本报错, gradio-3.41.2-py3-none-any.whl 不报错

报错2:

  File "E:\BaiduNetdiskDownload\stable diffusion\sd-webui-aki-v4\modules\api\models.py", line 96, in generate_modelDynamicModel.__config__.allow_population_by_field_name = TrueFile "D:\ProgramData\miniconda3\envs\pysd\lib\site-packages\pydantic\_internal\_model_construction.py", line 215, in __getattr__raise AttributeError(item)
AttributeError: __config__

报错的gradio版本:

pip install gradio-3.41.2-py3-none-any.whl

sd-webui-aki-v4

from gradio.processing_utils import decode_base64_to_image

def decode_base64_to_image(encoding: str) -> Image.Image:image_encoded = extract_base64_data(encoding)img = Image.open(BytesIO(base64.b64decode(image_encoded)))try:if hasattr(ImageOps, "exif_transpose"):img = ImageOps.exif_transpose(img)except Exception:log.warning("Failed to transpose image %s based on EXIF data.",img,exc_info=True,)return img

python 实现代码:

def decode_base64_to_image(encoding):if encoding.startswith("data:image/"):encoding = encoding.split(";")[1].split(",")[1]try:image = Image.open(BytesIO(base64.b64decode(encoding)))return imageexcept Exception as err:raise HTTPException(status_code=500, detail="Invalid encoded image")def encode_pil_to_base64(image):with io.BytesIO() as output_bytes:if opts.samples_format.lower() == 'png':use_metadata = Falsemetadata = PngImagePlugin.PngInfo()for key, value in image.info.items():if isinstance(key, str) and isinstance(value, str):metadata.add_text(key, value)use_metadata = Trueimage.save(output_bytes, format="PNG", pnginfo=(metadata if use_metadata else None), quality=opts.jpeg_quality)elif opts.samples_format.lower() in ("jpg", "jpeg", "webp"):parameters = image.info.get('parameters', None)exif_bytes = piexif.dump({"Exif": { piexif.ExifIFD.UserComment: piexif.helper.UserComment.dump(parameters or "", encoding="unicode") }})if opts.samples_format.lower() in ("jpg", "jpeg"):image.save(output_bytes, format="JPEG", exif = exif_bytes, quality=opts.jpeg_quality)else:image.save(output_bytes, format="WEBP", exif = exif_bytes, quality=opts.jpeg_quality)else:raise HTTPException(status_code=500, detail="Invalid image format")bytes_data = output_bytes.getvalue()return base64.b64encode(bytes_data)

http://www.lryc.cn/news/277649.html

相关文章:

  • 【C++进阶05】AVL树的介绍及模拟实现
  • MySQL视图 索引 面试题
  • JAVA实现文件上传至阿里云
  • 设计模式之外观模式【结构型模式】
  • Qt QCheckBox复选按钮控件
  • 加速科技ST2500 数模混合信号测试设备累计装机量突破500台!
  • ASP.NETCore WebAPI 入门 杨中科
  • 问题 C: 活动选择
  • SpringBoot学习(五)-Spring Security配置与应用
  • Java解决删除子串后的字符串最小长度
  • 日志系统一(elasticsearch+filebeat+logstash+kibana)
  • 游戏版 ChatGPT,要用 AI 角色完善生成工具实现 NPC 自由
  • 加工零件的题解
  • 走进shell
  • 【Python】使用tkinter设计开发Windows桌面程序记事本(2)
  • Flutter DateTime 常用处理
  • 【uniapp】APP打包上架应用商-注意事项
  • 【算法题】43. 字符串相乘
  • CH341 SPI方式烧录BK7231U
  • sd-webui-EasyPhoto win 安装笔记
  • gradient_checkpointing
  • 回溯算法part05 算法
  • 阿里云系统盘测评ESSD、SSD和高效云盘IOPS、吞吐量性能参数表
  • RK3568平台开发系列讲解(Linux系统篇)Linux 内核打印
  • 迁移学习的最新进展和挑战
  • Python基础(二十二、自定义模块和包)
  • C#-数组
  • 机器学习周刊第二期:300个机器学习应用案例集
  • 【华为OD机试真题2023CD卷 JAVAJS】中文分词模拟器
  • 基于YOLOv8-pose的画笔关键点(bic_markers)检测