Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleHub
提交
f1d0af9d
P
PaddleHub
项目概览
PaddlePaddle
/
PaddleHub
1 年多 前同步成功
通知
283
Star
12117
Fork
2091
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
200
列表
看板
标记
里程碑
合并请求
4
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleHub
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
200
Issue
200
列表
看板
标记
里程碑
合并请求
4
合并请求
4
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
f1d0af9d
编写于
3月 14, 2019
作者:
W
wuzewu
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
support create module without processor
上级
de95bb4f
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
21 addition
and
13 deletion
+21
-13
paddle_hub/commands/run.py
paddle_hub/commands/run.py
+2
-0
paddle_hub/module/module.py
paddle_hub/module/module.py
+19
-13
未找到文件。
paddle_hub/commands/run.py
浏览文件 @
f1d0af9d
...
...
@@ -76,6 +76,8 @@ class RunCommand(BaseCommand):
if
not
self
.
args
.
signature
:
self
.
args
.
signature
=
module
.
default_signature
().
name
# module processor check
module
.
check_processor
()
# data_format check
expect_data_format
=
module
.
processor
.
data_format
(
self
.
args
.
signature
)
input_data_format
=
yaml_config
[
'input_data'
]
...
...
paddle_hub/module/module.py
浏览文件 @
f1d0af9d
...
...
@@ -26,6 +26,7 @@ from paddle_hub import version
from
paddle_hub.module.base_processor
import
BaseProcessor
from
shutil
import
copyfile
import
os
import
sys
import
functools
import
paddle
import
paddle.fluid
as
fluid
...
...
@@ -35,7 +36,7 @@ __all__ = ['Module', 'create_module']
def
create_module
(
sign_arr
,
module_dir
,
processor
,
processor
=
None
,
assets
=
None
,
module_info
=
None
,
exe
=
None
):
...
...
@@ -100,10 +101,10 @@ class Module:
elif
module_dir
:
self
.
_init_with_module_file
(
module_dir
=
module_dir
)
elif
signatures
:
assert
processor
,
"lack of module processor"
assert
issubclass
(
processor
,
BaseProcessor
),
"processor should be sub class of hub.BaseProcessor"
if
processor
:
assert
issubclass
(
processor
,
BaseProcessor
),
"processor should be sub class of hub.BaseProcessor"
if
assets
:
self
.
assets
=
utils
.
to_list
(
assets
)
for
asset
in
assets
:
...
...
@@ -132,11 +133,13 @@ class Module:
file
.
write
(
pycode
)
def
_load_processor
(
self
):
import
sys
processor_path
=
self
.
helper
.
processor_path
()
sys
.
path
.
append
(
processor_path
)
processor_name
=
self
.
helper
.
processor_name
()
self
.
processor
=
__import__
(
processor_name
).
Processor
(
module
=
self
)
if
os
.
path
.
exists
(
processor_path
):
sys
.
path
.
append
(
processor_path
)
processor_name
=
self
.
helper
.
processor_name
()
self
.
processor
=
__import__
(
processor_name
).
Processor
(
module
=
self
)
else
:
self
.
processor
=
None
def
_dump_assets
(
self
):
utils
.
mkdir
(
self
.
helper
.
assets_path
())
...
...
@@ -332,6 +335,8 @@ class Module:
module_info
.
map
.
data
[
'summary'
])
def
__call__
(
self
,
sign_name
,
data
,
**
kwargs
):
self
.
check_processor
()
def
_get_reader_and_feeder
(
data_format
,
data
,
place
):
def
_reader
():
nonlocal
process_data
...
...
@@ -374,6 +379,9 @@ class Module:
return
result
def
check_processor
(
self
):
assert
self
.
processor
,
"this module couldn't be call"
def
context
(
self
,
sign_name
,
for_test
=
False
,
...
...
@@ -459,9 +467,6 @@ class Module:
logger
.
info
(
"proto version is %s"
%
version
.
proto_version
)
logger
.
info
(
"paddle version is %s"
%
paddle
.
__version__
)
for
asset
in
self
.
assets
:
pass
feeded_var_names
=
[
input
.
name
for
key
,
sign
in
self
.
signatures
.
items
()
for
input
in
sign
.
inputs
...
...
@@ -520,7 +525,8 @@ class Module:
f
.
write
(
module_pb
)
# create processor file
self
.
_dump_processor
()
if
self
.
processor
:
self
.
_dump_processor
()
# create assets
self
.
_dump_assets
()
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录