2Context7Column / app.py
Shreyas1441AI's picture
Update app.py
564acaa verified
import gradio as gr
from xgboost import XGBRegressor
import numpy as np
# --- Load your trained model ---
model = XGBRegressor()
model.load_model("2context7columns.json")
# --- Function to create sliding windows ---
def create_sliding_windows(input_str, window_size=2):
windows = [input_str[i:i+window_size] for i in range(len(input_str)-window_size+1)]
# Convert to float by prepending 0.
return [float("0." + w) for w in windows]
# --- Function for Gradio ---
def predict_final_answer(input_str):
input_str = input_str.strip()
if len(input_str) != 7 or not input_str.isdigit():
return "Error: Input must be exactly 7 digits."
# Create sliding windows
features = create_sliding_windows(input_str, window_size=2)
if len(features) != 6:
return "Error: Number of features must be 6 for prediction."
# Convert to 2D array for XGBoost
features_array = np.array(features).reshape(1, -1)
# Predict tier7
prediction = model.predict(features_array)
ans = f"{prediction[0]:.9f}"
return ans
# --- Gradio Interface ---
iface = gr.Interface(
fn=predict_final_answer,
inputs=gr.Textbox(label="Enter 7-digit string"),
outputs=gr.Textbox(label="Final Answer"),
title="Tier7 Predictor",
description="Enter a 7-digit string to predict tier7 value (returns final digits)."
)
iface.launch()