diff --git a/design/meps/mep-serving/MEP-SERVING.md b/design/meps/mep-serving/MEP-SERVING.md new file mode 100644 index 0000000..432bc99 --- /dev/null +++ b/design/meps/mep-serving/MEP-SERVING.md @@ -0,0 +1,330 @@ + +| title | authors | owning-sig | participating-sigs | status | creation-date | reviewers | approvers | stage | milestone | +| ----- | ------- | ---------- | ------------------ | ------ | ------------- |---------- | --------- | ----- | --------- | +| MindSpore Serving | xuyongfei | serving | serving | provisional/implementable/implemented/deferred/rejected/withdrawn/replaced | 2020-11-16 | xuyongfei/zhangyinxia | xuyongfei/zhangyinxia | beta | beta: "v0.6" | + +# MEP-SERVING: Serving + +## Table of Contents + +- [Summary](#summary) +- [Motivation](#motivation) + - [Goals](#goals) + - [Non-Goals](#non-goals) +- [Proposal](#proposal) + - [User Stories (optional)](#user-stories-optional) + - [Story 1](#story-1) + - [Story 2](#story-2) + - [Notes/Constraints/Caveats (optional)](#notesconstraintscaveats-optional) + - [Risks and Mitigations](#risks-and-mitigations) +- [Design Details](#design-details) + - [Graduation Criteria](#graduation-criteria) + - [Upgrade / Downgrade Strategy](#upgrade--downgrade-strategy) +- [Implementation History](#implementation-history) +- [Drawbacks](#drawbacks) +- [Alternatives](#alternatives) +- [Infrastructure Needed (optional)](#infrastructure-needed-optional) +- [References (optional)](#references-optional) + + +## Summary + + + +MindSpore Serving is a lightweight and high-performance service module that helps MindSpore developers efficiently deploy online inference services in the production environment. After completing model training using MindSpore, you can export the MindSpore model and use MindSpore Serving to create an inference service for the model. Currently, only Ascend 910 is supported. + + +## Motivation + + + +1. MindSpore and Serving header files are interdependent. +2. ACL related code is managed in Serving. +3. Enabling different port services requires recompilation. + +### Goals + + + +1. Decoupling of MindSpore and Serving. +2. Serving no longer distinguishes the backend. +3. Serving can provide more flexible interface calls. + +### Non-Goals + + + +NA + +## Proposal + + + +1. Adjust and enhance the external interface: grpc + restful. +2. Single model concurrent, give full play to chip capability. +3. The model implements two forms of batch. +4. Support data pre-processing and post-processing sink to the service back-end. +5. Support multiple models. + +### User Stories (optional) + + + +NA + +#### Story 1 +NA + +#### Story 2 +NA + +### Notes/Constraints/Caveats (optional) + + + +NA + +### Risks and Mitigations + + + +NA + +## Design Details + + + +1. RESTful +``` +POST http://${HOST_IP}:${PORT_NUM}/model/${MODEL_NAME}[/version/${VERSION}]:${METHOD_NAME} +``` + +2. instances format +``` +{ + "instances":[ + { + "tagx": "foo", + "signalx": [1,2,3,4,5], + "sensorx": [[1,2], [3,4]] + }, + { + "tagx": {"b64": "bytes_data_base64_code"}, + "signalx": 3, + "sensorx": [[4,5], [6,8], [4,5], [6,8]] + } + ] +} +``` + +3. replay +``` +{ + "instances":[ + { + "label": "new" + }, + { + "tagx": {"b64": "bytes_data_base64_code"}, + "signalx": 3, + "sensorx": [[4,5], [6,8], [4,5], [6,8]] + } + ] +} +``` + +### Test Plan + + + +1.ut + +2.st + + +### Graduation Criteria + + + +NA + +### Upgrade / Downgrade Strategy + + + +NA + +## Implementation History + + + +NA + +## Drawbacks + + + +NA + +## Alternatives + + + +NA + +## Infrastructure Needed (optional) + + + +NA + +## References (optional) + + + +NA diff --git a/sigs/serving/README.md b/sigs/serving/README.md new file mode 100644 index 0000000..16dbae2 --- /dev/null +++ b/sigs/serving/README.md @@ -0,0 +1,27 @@ +# MindSpore Serving Special Interest Group (SIG) + +This is the working repo for the Serving Special Interest Group (SIG). This repo contains all the artifacts, materials, meeting notes and proposals regarding. Feedbacks and contributions are welcomed. +1. Adjust and enhance the external interface: grpc + restful. +2. Single model concurrent, give full play to chip capability. +3. The model implements two forms of batch. +4. Support data pre-processing and post-processing sink to the service back-end. +5. Support multiple models. + +# SIG Leads + +* Xu Yongfei (Huawei) + +# Logistics + +* SIG leads will drive the meeting. +* Meeting annoucement will be posted on our gitee channel: https://gitee.com/mindspore/community/tree/master/sigs/serving +* Feedbacks and topic requests are welcomed by all. + +# Discussion + +* Slack channel: +* Documents and artifacts: https://gitee.com/mindspore/community/tree/master/sigs/serving + +# Meeting notes + + diff --git a/sigs/serving/docs/design-template.md b/sigs/serving/docs/design-template.md new file mode 100644 index 0000000..e69de29 diff --git a/sigs/serving/meetings/meeting-template.md b/sigs/serving/meetings/meeting-template.md new file mode 100644 index 0000000..ef1f23f --- /dev/null +++ b/sigs/serving/meetings/meeting-template.md @@ -0,0 +1,14 @@ +# Thursday Nov 19, 2020 at 17:00pm GMT+8 + +## Agenda + +## Conference links + +## Attendees +* Xu Yongfei (Huawei) + +## Notes +* TODO + +## Action items +* TODO