Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Overbill1683
Stable Diffusion Webui
提交
26500b8c
S
Stable Diffusion Webui
项目概览
Overbill1683
/
Stable Diffusion Webui
11 个月 前同步成功
通知
1770
Star
81
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
分析
仓库
DevOps
项目成员
Pages
S
Stable Diffusion Webui
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Pages
分析
分析
仓库分析
DevOps
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
提交
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
26500b8c
编写于
10月 14, 2023
作者:
A
AUTOMATIC1111
提交者:
GitHub
10月 14, 2023
浏览文件
操作
浏览文件
下载
差异文件
Merge pull request #13610 from v0xie/network-glora
Support inference with LyCORIS GLora networks
上级
a109c7ae
906d1179
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
35 addition
and
0 deletion
+35
-0
extensions-builtin/Lora/network_glora.py
extensions-builtin/Lora/network_glora.py
+33
-0
extensions-builtin/Lora/networks.py
extensions-builtin/Lora/networks.py
+2
-0
未找到文件。
extensions-builtin/Lora/network_glora.py
0 → 100644
浏览文件 @
26500b8c
import
network
class
ModuleTypeGLora
(
network
.
ModuleType
):
def
create_module
(
self
,
net
:
network
.
Network
,
weights
:
network
.
NetworkWeights
):
if
all
(
x
in
weights
.
w
for
x
in
[
"a1.weight"
,
"a2.weight"
,
"alpha"
,
"b1.weight"
,
"b2.weight"
]):
return
NetworkModuleGLora
(
net
,
weights
)
return
None
# adapted from https://github.com/KohakuBlueleaf/LyCORIS
class
NetworkModuleGLora
(
network
.
NetworkModule
):
def
__init__
(
self
,
net
:
network
.
Network
,
weights
:
network
.
NetworkWeights
):
super
().
__init__
(
net
,
weights
)
if
hasattr
(
self
.
sd_module
,
'weight'
):
self
.
shape
=
self
.
sd_module
.
weight
.
shape
self
.
w1a
=
weights
.
w
[
"a1.weight"
]
self
.
w1b
=
weights
.
w
[
"b1.weight"
]
self
.
w2a
=
weights
.
w
[
"a2.weight"
]
self
.
w2b
=
weights
.
w
[
"b2.weight"
]
def
calc_updown
(
self
,
orig_weight
):
w1a
=
self
.
w1a
.
to
(
orig_weight
.
device
,
dtype
=
orig_weight
.
dtype
)
w1b
=
self
.
w1b
.
to
(
orig_weight
.
device
,
dtype
=
orig_weight
.
dtype
)
w2a
=
self
.
w2a
.
to
(
orig_weight
.
device
,
dtype
=
orig_weight
.
dtype
)
w2b
=
self
.
w2b
.
to
(
orig_weight
.
device
,
dtype
=
orig_weight
.
dtype
)
output_shape
=
[
w1a
.
size
(
0
),
w1b
.
size
(
1
)]
updown
=
((
w2b
@
w1b
)
+
((
orig_weight
@
w2a
)
@
w1a
))
return
self
.
finalize_updown
(
updown
,
orig_weight
,
output_shape
)
extensions-builtin/Lora/networks.py
浏览文件 @
26500b8c
...
...
@@ -5,6 +5,7 @@ import re
import
lora_patches
import
network
import
network_lora
import
network_glora
import
network_hada
import
network_ia3
import
network_lokr
...
...
@@ -23,6 +24,7 @@ module_types = [
network_lokr
.
ModuleTypeLokr
(),
network_full
.
ModuleTypeFull
(),
network_norm
.
ModuleTypeNorm
(),
network_glora
.
ModuleTypeGLora
(),
]
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录