Skip to content

Commit fc321a2

Browse files
committed
feat(template): add image pipeline template
1 parent 9540771 commit fc321a2

File tree

4 files changed

+47
-110
lines changed

4 files changed

+47
-110
lines changed

model.py renamed to attr.py

Lines changed: 3 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -9,28 +9,17 @@
99
#!/usr/bin/env python
1010
# coding=utf-8
1111

12-
import json
13-
import numpy as np
14-
from loguru import logger
1512
from megflow import register
1613

17-
from .lite import PredictorLite
18-
19-
2014
@register(inputs=['inp'], outputs=['out'])
21-
class Classify:
15+
class Attribute:
2216
def __init__(self, name, arg):
23-
logger.info("loading model...")
2417
self.name = name
25-
self._model = PredictorLite(path=arg['path'],
26-
device=arg['device'],
27-
device_id=arg['device_id'])
2818

2919
def exec (self):
3020
envelope = self.inp.recv()
3121
if envelope is None:
3222
return
23+
print('attr')
24+
self.out.send(envelope)
3325

34-
data = envelope.msg['data']
35-
result = self._model.inference(data)
36-
self.out.send(envelope.repack(result))

config.toml

Lines changed: 17 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,27 @@
1-
main = "quickstart-modelserving"
1+
main = "image"
2+
3+
[[nodes]]
4+
name = "det"
5+
ty = "Detect"
6+
device = "cpu"
7+
device_id = 0
8+
9+
[[nodes]]
10+
name = "attr"
11+
ty = "Attribute"
12+
device = "cpu"
13+
device_id = 0
214

315
[[graphs]]
416
name = "subgraph"
5-
inputs = [{ name = "inp", cap = 16, ports = ["model:inp"] }]
6-
outputs = [{ name = "out", cap = 16, ports = ["model:out"] }]
17+
inputs = [{ name = "inp", cap = 16, ports = ["det:inp"] }]
18+
outputs = [{ name = "out", cap = 16, ports = ["attr:out"] }]
719
connections = [
20+
{ cap = 16, ports = ["det:out", "attr:inp"] },
821
]
922

10-
[[graphs.nodes]]
11-
name = "model"
12-
ty = "Model"
13-
path = "##PATH##"
14-
device = "cpu"
15-
device_id = 0
16-
1723
[[graphs]]
18-
name = "tutorial_01_image"
24+
name = "image"
1925
connections = [
2026
{ cap = 16, ports = ["source:out", "destination:inp"] },
2127
{ cap = 16, ports = ["source:inp", "destination:out"] }
@@ -25,7 +31,6 @@ connections = [
2531
name = "source"
2632
ty = "ImageServer"
2733
port = 8080
28-
response = "json"
2934

3035
[[graphs.nodes]]
3136
name = "destination"

det.py

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
# MegFlow is Licensed under the Apache License, Version 2.0 (the "License")
2+
#
3+
# Copyright (c) 2019-2021 Megvii Inc. All rights reserved.
4+
#
5+
# Unless required by applicable law or agreed to in writing,
6+
# software distributed under the License is distributed on an
7+
# "AS IS" BASIS, WITHOUT ARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
8+
9+
#!/usr/bin/env python
10+
# coding=utf-8
11+
12+
from megflow import register
13+
14+
@register(inputs=['inp'], outputs=['out'])
15+
class Detect:
16+
def __init__(self, name, arg):
17+
print('init det')
18+
self.name = name
19+
20+
def exec (self):
21+
envelope = self.inp.recv()
22+
print('det')
23+
if envelope is None:
24+
return
25+
print('det')
26+
self.out.send(envelope)
27+

lite.py

Lines changed: 0 additions & 84 deletions
This file was deleted.

0 commit comments

Comments
 (0)