Small fixes
This commit is contained in:
parent
22e768aa2c
commit
76fab7da40
2 changed files with 19 additions and 13 deletions
|
@ -43,7 +43,7 @@
|
|||
- Образы Docker
|
||||
|
||||
|
||||
Роль и связь компонентов модуля:
|
||||
Связь компонентов модуля:
|
||||
|
||||
```mermaid
|
||||
flowchart LR
|
||||
|
@ -57,8 +57,8 @@ flowchart LR
|
|||
|
||||
%% S3 Infrastructure
|
||||
S3Storage[(S3 Хранилище)]
|
||||
FileAPI ---> S3Box-UserData[S3 Box: Данные пользователей]
|
||||
FileAPI ---> S3Box-ModelWeights[S3 Box: Веса моделей]
|
||||
FileAPI <---> S3Box-UserData[S3 Box: Данные пользователей]
|
||||
FileAPI <---> S3Box-ModelWeights[S3 Box: Веса моделей]
|
||||
S3Box-UserData --> S3Storage
|
||||
|
||||
%% ML Component Section
|
||||
|
@ -67,7 +67,7 @@ flowchart LR
|
|||
MLService[ML Service]
|
||||
end
|
||||
|
||||
MLAPI --> ML-Component
|
||||
MLAPI <--> ML-Component
|
||||
ML-Component --> S3Box-UserData
|
||||
ML-Component --> S3Box-ModelWeights
|
||||
S3Box-ModelWeights --> S3Storage
|
||||
|
|
|
@ -1,5 +1,14 @@
|
|||
# ExperimentPipeline
|
||||
|
||||
- [ExperimentPipeline](#experimentpipeline)
|
||||
- [Переменные](#переменные)
|
||||
- [Взаимодействие кода модуля с фреймворком](#взаимодействие-кода-модуля-с-фреймворком)
|
||||
- [Манифест ExperimentPipeline](#манифест-experimentpipeline)
|
||||
- [Манифест APIComponent отдельного пайплайна](#манифест-apicomponent-отдельного-пайплайна)
|
||||
- [Манифест APIComponent пайплайнов в целом](#манифест-apicomponent-пайплайнов-в-целом)
|
||||
- [Изменение пути монтирования отдельных переменных (необязательно).](#изменение-пути-монтирования-отдельных-переменных-необязательно)
|
||||
|
||||
|
||||
Компонент ExperimentPipeline позволяет создать сервис для асинхронной обработки запросов пользователей.
|
||||
|
||||
ExperimentPipeline подходит для вычислительных задач, которые:
|
||||
|
@ -22,10 +31,7 @@ ExperimentPipeline подходит для вычислительных зада
|
|||
|
||||
|
||||
|
||||
|
||||
## Добавление пайплайна в приложение
|
||||
|
||||
### Переменные
|
||||
## Переменные
|
||||
|
||||
Данные передаются на вход и выход пайплайна, а также между его отдельными этапами через *переменные*. Эти переменные используются в нескольких частях работы пайплайна:
|
||||
|
||||
|
@ -39,7 +45,7 @@ ExperimentPipeline подходит для вычислительных зада
|
|||
* выходные - могут быть переданы в поле `outputs` при вызове пайплайна через API. Значением может быть только путь к папке, не к файлу.
|
||||
* внутренние - не передаются через API, но могут быть указаны как входные и выходные переменные отдельных этапов пайплайна, и в таком случае данные будут автоматически переданы между этапами.
|
||||
|
||||
### Взаимодействие кода модуля с фреймворком
|
||||
## Взаимодействие кода модуля с фреймворком
|
||||
|
||||
Для каждого контейнера, созданного во время выполнения пайплайна, будут определены переменные окружения в формате `UNIP_PIPELINE_<VAR_NAME>`. Значения таких переменных - пути к файлами и папкам в локальной файловой системе контейнера, с которыми должен работать код модуля.
|
||||
|
||||
|
@ -70,7 +76,7 @@ def main():
|
|||
Входные переменные могут быть файлами или папками, а выходная - только папкой, поэтому в примере добавляется путь к файлу.
|
||||
|
||||
|
||||
### Манифест ExperimentPipeline
|
||||
## Манифест ExperimentPipeline
|
||||
|
||||
Пример манифеста самого пайплайна.
|
||||
|
||||
|
@ -161,7 +167,7 @@ spec:
|
|||
|
||||
Каждый этап работает с собственными входными и выходными данными. Переменные, определённые здесь, в пайплайне, но не определённые в API, считаются внутренними переменными. Например, в примере выше такой переменной является `model`.
|
||||
|
||||
### Манифест APIComponent отдельного пайплайна
|
||||
## Манифест APIComponent отдельного пайплайна
|
||||
|
||||
Пример манифеста API пайплайна
|
||||
|
||||
|
@ -231,7 +237,7 @@ spec:
|
|||
Если данные переданы не в виде файла, они сохраняются в файл, и этот файл уже передаётся в контейнер. Данные сохраняются простым преобразованием в строку и сохранением этой строки в текстовый файл.
|
||||
|
||||
|
||||
### Манифест APIComponent пайплайнов в целом
|
||||
## Манифест APIComponent пайплайнов в целом
|
||||
|
||||
```yaml
|
||||
apiVersion: "unified-platform.cs.hse.ru/v1"
|
||||
|
@ -252,7 +258,7 @@ spec:
|
|||
|
||||
Главное отличие от других APIComponent - пункт `pipelines.enabled: true`. Изменяемые разработчиком пункты - имя приложения `metadata.namespace`, имя самого компонента `metadata.name` и имя секрета с реквизитами `spec.restfulApi.auth.basic.credentials`
|
||||
|
||||
### Изменение пути монтирования отдельных переменных (необязательно).
|
||||
## Изменение пути монтирования отдельных переменных (необязательно).
|
||||
|
||||
Иногда необходимо подключить к модулю данные из файлового хранилища, которые не загружал пользователь. Частый пример - веса ИИ-моделей, которые используются при запросах всех пользователей. В таких случаях для входной переменной можно указать конкретный путь, к которому она будет подключена, вместо того, чтобы выводить её в API.
|
||||
|
||||
|
|
Loading…
Reference in a new issue