Rooni commited on
Commit
07fa4cd
1 Parent(s): b54d6e6

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +41 -38
app.py CHANGED
@@ -2,54 +2,57 @@ import gradio as gr
2
  import requests
3
  import os
4
 
5
- # Функция для отправки fetch запроса к OpenAI GPT-3.5-turbo
6
- def translate_text(input_text, target_language):
7
- # Ваш ключ API GPT-3.5-turbo
8
  api_key = os.getenv("API_KEY")
9
 
10
- # URL API GPT-3.5-turbo
11
- api_url = os.getenv("BASE_URL")
12
-
13
- # Формирование заголовков запроса
 
 
 
 
14
  headers = {
15
  "Content-Type": "application/json",
16
- "Authorization": f'Bearer {api_key}'
17
- }
18
-
19
- # Формирование параметров запроса
20
- data = {
21
- 'prompt': [{'role': 'system', 'content': f'Переведи пожалуйста правильно, понятно, сохраняя мысль, идеально на {target_language}: \"{input_text}\"'}],
22
- 'max_tokens': 15000,
23
- 'model': "gpt-3.5-turbo"
24
  }
 
25
 
26
- # Отправка запроса к OpenAI GPT-3.5-turbo
27
- response = requests.post(api_url, headers=headers, json=data)
28
-
29
- # Обработка ответа и возврат переведенного текста
30
  if response.status_code == 200:
31
- return response.json()["choices"][0]["text"]
32
  else:
33
- return f"Error {response.status_code}: {response.text}"
34
-
35
- # Функция для создания интерфейса Gradio
36
- def translate_interface(input_text, target_language, translate_button):
37
- # Перевести текст только при нажатии кнопки
38
- if translate_button.clicked:
39
- translated_text = translate_text(input_text, target_language)
40
- return translated_text
41
- else:
42
- return ""
43
-
44
- # Создание интерфейса Gradio с использованием Button
 
 
 
 
45
  iface = gr.Interface(
46
  fn=translate_interface,
47
- inputs=["text", gr.Dropdown(["English", "Spanish", "French", "German", "Italian", "Russian", "Chinese"]), gr.Button("Translate")],
48
- outputs="text",
49
- live=True,
50
- title="OpenAI GPT-3.5-turbo Translator",
51
- description="Translate text to the selected language using GPT-3.5-turbo."
 
 
52
  )
53
 
54
- # Запуск интерфейса Gradio
55
  iface.launch()
 
2
  import requests
3
  import os
4
 
5
+ # Функция для отправки запроса к OpenAI GPT-3.5 Turbo
6
+ def translate_text(text, target_language):
7
+ # Замените 'YOUR_OPENAI_API_KEY' на ваш API ключ от OpenAI GPT-3.5 Turbo
8
  api_key = os.getenv("API_KEY")
9
 
10
+ # Формирование запроса к API OpenAI
11
+ prompt = f"Translate the following text to {target_language}: \"{text}\""
12
+ data = {
13
+ "prompt": prompt,
14
+ "temperature": 0.5,
15
+ "max_tokens": 60,
16
+ "stop": "\n"
17
+ }
18
  headers = {
19
  "Content-Type": "application/json",
20
+ "Authorization": f"Bearer {api_key}"
 
 
 
 
 
 
 
21
  }
22
+ url = os.getenv("BASE_URL")
23
 
24
+ # Отправка запроса и получение ответа от OpenAI
25
+ response = requests.post(url, json=data, headers=headers)
26
+
 
27
  if response.status_code == 200:
28
+ return response.json()['choices'][0]['text'].strip()
29
  else:
30
+ return "Ошибка при переводе текста. Пожалуйста, попробуйте еще раз."
31
+
32
+ # Функция для создания приложения Gradio
33
+ def translate_interface(text, target_language):
34
+ translated_text = translate_text(text, target_language)
35
+ return translated_text
36
+
37
+ # Список поддерживаемых языков для выбора
38
+ languages = [
39
+ "Английский",
40
+ "Испанский",
41
+ "Французский",
42
+ # Добавьте другие языки по мере необходимости
43
+ ]
44
+
45
+ # Создание интерфейса Gradio
46
  iface = gr.Interface(
47
  fn=translate_interface,
48
+ inputs=[
49
+ gr.inputs.Textbox(label="Введите текст"),
50
+ gr.inputs.Dropdown(languages, label="Выберите язык для перевода")
51
+ ],
52
+ outputs=gr.outputs.Textbox(label="Переведенный текст"),
53
+ title="Простой переводчик",
54
+ description="Введите текст и выберите язык для перевода."
55
  )
56
 
57
+ # Запуск приложения Gradio
58
  iface.launch()