mulyavinaa commited on
Commit
d22a98d
·
1 Parent(s): c0f8474

Добавление информации об API в README.md

Browse files
README.md CHANGED
@@ -9,7 +9,7 @@ app_file: run.py
9
  pinned: false
10
  ---
11
 
12
- # Программная инженерия. Практическое задание №2
13
 
14
  Приложение разработано с использованием фреймворка [Streamlit](https://streamlit.io/).
15
  Состоит из двух страниц и Главной страницы:
@@ -21,19 +21,26 @@ pinned: false
21
  3. Описание изображения - позволяет получить описание изображения на русском языке. Использует 1 модель:
22
  - Классификация и описание изображений
23
 
 
 
 
 
24
  ## Используемые модели
25
  - Определение языка текста - [papluca/xlm-roberta-base-language-detection](https://huggingface.co/papluca/xlm-roberta-base-language-detection)
26
  - Перевод текста с языка Ru на En - [Helsinki-NLP/opus-mt-ru-en](https://huggingface.co/Helsinki-NLP/opus-mt-ru-en)
27
  - Озвучивание текста на английском языке - [microsoft/speecht5_tts](https://huggingface.co/microsoft/speecht5_tts)
28
  - Классификация и описание изображений. Модель описания изображения [Salesforce/blip-image-captioning-large](https://huggingface.co/Salesforce/blip-image-captioning-large)
29
 
30
- ## Как запустить
31
  Запуск осуществляется через модуль streamlit:
32
  ```
33
  streamlit run run.py
34
  ```
35
 
36
- ## Как использовать
 
 
 
37
  После запуска приложение открывается на Главной странице. Выбор режима работы приложения доступен слева в меню
38
 
39
  ### Генератор аудио
@@ -46,3 +53,52 @@ streamlit run run.py
46
  Необходимо выбрать изображение и нажать кнопку "Получить описание изображения". В результате появится текстовое описание изображения на русском языке.
47
 
48
  ![Результат работы моделей "Классификации и описания изображений"](https://raw.githubusercontent.com/kavlab/urfu_iml_2023_1_3_hw2/main/zvereva_ev/image_result.jpg)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9
  pinned: false
10
  ---
11
 
12
+ # Программная инженерия. Практическое задание №2 и №3
13
 
14
  Приложение разработано с использованием фреймворка [Streamlit](https://streamlit.io/).
15
  Состоит из двух страниц и Главной страницы:
 
21
  3. Описание изображения - позволяет получить описание изображения на русском языке. Использует 1 модель:
22
  - Классификация и описание изображений
23
 
24
+ API разработано с использованием фреймворка [FastAPI]('https://fastapi.tiangolo.com/'). API доступные для использования:
25
+ 1. ```/langdetector/detect``` - Определение языка текста
26
+ 2. ```/translator/translate``` - Перевод текста с языка Ru на En
27
+
28
  ## Используемые модели
29
  - Определение языка текста - [papluca/xlm-roberta-base-language-detection](https://huggingface.co/papluca/xlm-roberta-base-language-detection)
30
  - Перевод текста с языка Ru на En - [Helsinki-NLP/opus-mt-ru-en](https://huggingface.co/Helsinki-NLP/opus-mt-ru-en)
31
  - Озвучивание текста на английском языке - [microsoft/speecht5_tts](https://huggingface.co/microsoft/speecht5_tts)
32
  - Классификация и описание изображений. Модель описания изображения [Salesforce/blip-image-captioning-large](https://huggingface.co/Salesforce/blip-image-captioning-large)
33
 
34
+ ## Как запустить Web-приложение
35
  Запуск осуществляется через модуль streamlit:
36
  ```
37
  streamlit run run.py
38
  ```
39
 
40
+ ## Как запустить API-сервер
41
+ ```uvicorn api:app``` либо ```python api.py```
42
+
43
+ ## Как использовать Web-приложение
44
  После запуска приложение открывается на Главной странице. Выбор режима работы приложения доступен слева в меню
45
 
46
  ### Генератор аудио
 
53
  Необходимо выбрать изображение и нажать кнопку "Получить описание изображения". В результате появится текстовое описание изображения на русском языке.
54
 
55
  ![Результат работы моделей "Классификации и описания изображений"](https://raw.githubusercontent.com/kavlab/urfu_iml_2023_1_3_hw2/main/zvereva_ev/image_result.jpg)
56
+
57
+ ### Как использовать API
58
+ Описание методов API генерируется Swagger и доступно по адресу
59
+ ```
60
+ <hots>/docs
61
+ ```
62
+
63
+ #### Пример вызова сервиса Определение языка текста
64
+ Вызвать url сервиса ```<host>/langdetector/detect``` методом POST
65
+
66
+ ![img.png](https://raw.githubusercontent.com/kavlab/urfu_iml_2023_1_3_hw2/main/mulyavin_aa/PostmanLangDetect.png)
67
+
68
+ Передаваемые параметры:
69
+ ```
70
+ {
71
+ "text": "Приветик от Мити кота"
72
+ }
73
+ ```
74
+
75
+ Результат выполнения:
76
+ ```
77
+ {
78
+ "langs": [
79
+ {
80
+ "label": "bg",
81
+ "score": 0.9945043921470642
82
+ }
83
+ ]
84
+ }
85
+ ```
86
+
87
+ #### Пример вызова сервиса Перевод текста с языка Ru на En
88
+ Вызвать url сервиса ```<host>/translator/translate``` методом POST
89
+
90
+ ![img.png](https://raw.githubusercontent.com/kavlab/urfu_iml_2023_1_3_hw2/main/mulyavin_aa/PostmanTranslate.png)
91
+
92
+ Передаваемые параметры:
93
+ ```
94
+ {
95
+ "text": "Приветик от Мити кота"
96
+ }
97
+ ```
98
+
99
+ Результат выполнения:
100
+ ```
101
+ {
102
+ "text": "Hello from Michi Cat."
103
+ }
104
+ ```
mulyavin_aa/PostmanLangDetect.png ADDED
mulyavin_aa/PostmanTranslate.png ADDED