Spaces:
Running
Running
import gradio as gr | |
import requests | |
import os | |
# Функция для отправки запроса к OpenAI GPT-3.5 Turbo | |
def translate_text(text, target_language): | |
# Замените 'YOUR_OPENAI_API_KEY' на ваш API ключ от OpenAI GPT-3.5 Turbo | |
api_key = os.getenv("API_KEY") | |
# Формирование запроса к API OpenAI | |
prompt = f"Translate the following text to {target_language}: \"{text}\"" | |
data = { | |
"prompt": prompt, | |
"temperature": 0.5, | |
"max_tokens": 60, | |
"stop": "\n" | |
} | |
headers = { | |
"Content-Type": "application/json", | |
"Authorization": f"Bearer {api_key}" | |
} | |
url = os.getenv("BASE_URL") | |
# Отправка запроса и получение ответа от OpenAI | |
response = requests.post(url, json=data, headers=headers) | |
if response.status_code == 200: | |
return response.json()['choices'][0]['text'].strip() | |
else: | |
return "Ошибка при переводе текста. Пожалуйста, попробуйте еще раз." | |
# Функция для создания приложения Gradio | |
def translate_interface(text, target_language): | |
translated_text = translate_text(text, target_language) | |
return translated_text | |
# Список поддерживаемых языков для выбора | |
languages = [ | |
"Английский", | |
"Испанский", | |
"Французский", | |
# Добавьте другие языки по мере необходимости | |
] | |
# Создание интерфейса Gradio | |
iface = gr.Interface( | |
fn=translate_interface, | |
inputs=[ | |
gr.inputs.Textbox(label="Введите текст"), | |
gr.inputs.Dropdown(languages, label="Выберите язык для перевода") | |
], | |
outputs=gr.outputs.Textbox(label="Переведенный текст"), | |
title="Простой переводчик", | |
description="Введите текст и выберите язык для перевода." | |
) | |
# Запуск приложения Gradio | |
iface.launch() | |