region:us
import numpy as np
from sklearn.linear_model import LinearRegression
import gradio as gr

# Создаем и обучаем модель на тренировочных данных
X_train = np.array([[1, 1], [2, 2], [3, 3]])  # Пример признаков
y_train = np.array([1, 2, 3])  # Пример целевых переменных (ответов)

model = LinearRegression()
model.fit(X_train, y_train)

# Функция для предсказания
def predict(input_data):
    # Разбиваем входную строку на пары чисел, используя точку с запятой и пробел как разделители
    input_pairs = input_data.split('; ')
    
    # Преобразуем пары чисел в список списков
    input_list = [list(map(float, pair.split(', '))) for pair in input_pairs]
    
    # Преобразуем список в массив NumPy
    input_array = np.array(input_list)

    # Выполняем предсказание
    predictions = model.predict(input_array)

    return predictions

# Определение входных полей для Gradio
input_component = gr.components.Textbox(lines=1, placeholder="Введите признаки в формате '1, 2; 2, 3; 3, 4'")

# Создание интерфейса Gradio
interface = gr.Interface(fn=predict, inputs=input_component, outputs="text", live=True)

# Запуск интерфейса Gradio
interface.launch()