import gradio as gr from ..model.model import NigerianLanguageModel from ..model.config import ModelConfig def create_interface(model: NigerianLanguageModel): def generate_text(prompt: str, language: str) -> str: tagged_prompt = f"[{language.upper()}] {prompt}" return model.generate(tagged_prompt) interface = gr.Interface( fn=generate_text, inputs=[ gr.Textbox(label="Enter your prompt"), gr.Dropdown(choices=model.config.languages, label="Select Language") ], outputs=gr.Textbox(label="Generated Text"), title="Nigerian Language Generator", description="Generate text in Yoruba, Igbo, or Hausa using a fine-tuned GPT model." ) return interface