Add files API to databox, add common component elements

This commit is contained in:
Georgii Zhulikov 2025-03-12 12:59:28 +03:00
parent f28a9b1d20
commit d66b285dbe
2 changed files with 19 additions and 13 deletions

View file

@ -6,7 +6,7 @@
- Размещение приложения на основе шаблона - Размещение приложения на основе шаблона
- Подробно - Подробно
- [API модулей](./pages/api-module.md) - [API модулей](./pages/api-module.md)
- [Компонент DataBox](./pages/databox.md) - [Компонент DataBox и работа с файлами](./pages/databox.md)
- [Компонент MLComponent](./pages/mlcmp.md) - [Компонент MLComponent](./pages/mlcmp.md)
- [Компонент ExperimentPipeline](./pages/pipeline.md) - [Компонент ExperimentPipeline](./pages/pipeline.md)
- [Терминология](./pages/terminology.md) - [Терминология](./pages/terminology.md)

View file

@ -87,20 +87,26 @@ users/developer/file_groups/my_file_group_file.txt
mountS3Box: mountS3Box:
subPath: users/developer/file_groups/models_pretrained subPath: users/developer/file_groups/models_pretrained
s3BoxName: model-box s3BoxName: model-box
- name: user-box
copyS3Box:
s3BoxName: userdata
``` ```
Здесь подключаются два компонента DataBox: Здесь подключается компонент DataBox с именем `model-box`:
1. Монтируется DataBox `model-box` - Путь `users/developer/file_groups/models_pretrained` в DataBox (в хранилище S3)
- Путь `users/developer/file_groups/models_pretrained` в DataBox (в хранилище S3) - Путь `/home/myproject/data/weights/` в локальной файловой системе контейнера
- Путь `/home/myproject/data/weights/` в локальной файловой системе контейнера - Название компонента DataBox контролируется полем `s3BoxName`
- Название компонента DataBox контролируется полем `s3BoxName` - Название смонтированного компонента для упоминания внутри манифеста контролируется полем `name`. В этом примере эти два названия совпадают.
- Название смонтированного компонента для упоминания внутри манифеста контролируется полем `name`. В этом примере эти два названия совпадают
2. DataBox `userdata` подключается в режиме копирования
- Название компонента DataBox контролируется полем `s3BoxName`
- Название смонтированного компонента для упоминания внутри манифеста контролируется полем `name`. Если в этом манифесте нужно будет упомянуть этот DataBox, нужно будет использовать имя `user-box`, не `userdata`.
### Файловый API
Доступ к файлам через API производится по ссылкам со следующей структурой
```
https://platform.stratpro.hse.ru/my-app/model-box/my_file_group/file.txt
```
Здесь:
- `my-app` - имя приложения
- `model-box` - имя DataBox, в который загружаются данные или из которого скачиваются данные
- `my_file_group/file.txt` путь к файлу, соответствующий пути после `file_groups` в хранилище
- Имя пользователя в участке пути `users/USERNAME/file_groups` определяется, исходя из того, реквизиты какого пользователя используются при выполнении запроса.