File size: 1,440 Bytes
115fce4
 
 
b3bc249
115fce4
b3bc249
 
 
 
f5c3a62
2050f60
115fce4
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48

import gradio as gr
import ctranslate2
from transformers import AutoModel, AutoTokenizer


# Load the model and tokenizer from Hugging Face
model_id = "Makima57/deepseek-math-Numina"
model = AutoModel.from_pretrained(model_id)
tokenizer = AutoTokenizer.from_pretrained("AI-MO/NuminaMath-7B-TIR")
model_path = model_id
generator = ctranslate2.Generator(model_path, device="cpu", compute_type="int8")

# Function to generate predictions using the model
def get_prediction(question):
    input_text = model_prompt + question
    input_tokens = tokenizer.tokenize(input_text)
    results = generator.generate_batch([input_tokens])
    output_tokens = results[0].sequences[0]
    predicted_answer = tokenizer.convert_tokens_to_string(output_tokens)
    return predicted_answer

# Gradio interface for user input and output
def gradio_interface(question, correct_answer):
    predicted_answer = get_prediction(question)
    return {
        "question": question,
        "predicted_answer": predicted_answer,
        "correct_answer": correct_answer,
    }

# Gradio app setup
interface = gr.Interface(
    fn=gradio_interface,
    inputs=[
        gr.Textbox(label="Math Question"),
        gr.Textbox(label="Correct Answer"),
    ],
    outputs=[
        gr.JSON(label="Results")
    ],
    title="Math Question Solver",
    description="Enter a math question to get the model prediction."
)

if __name__ == "__main__":
    interface.launch()