# import gradio as gr
# import os
# from mistralai.client import MistralClient
# from mistralai.models.chat_completion import ChatMessage
# # Ensure the environment variable for the API key is set
# api_key = os.getenv("MISTRAL_API_KEY")
# if not api_key:
# raise ValueError("MISTRAL_API_KEY environment variable not set")
# model = "mistral-tiny"
# client = MistralClient(api_key=api_key)
# def generate_goals(input_var):
# messages = [
# ChatMessage(role="user", content=f"Generate 10 specific, industry relevant goals for {input_var} using Python and Pandas. Each goal should include a brief name and a one-sentence description of the task or skill. Focus on practical applications in educational assessment, covering areas such as data processing, statistical analysis, visualization, and advanced techniques")
# ]
# try:
# response = client.chat(model=model, messages=messages)
# content = response.choices[0].message.content
# return content
# except Exception as e:
# return f"An error occurred: {str(e)}"
# # HTML content
# html_content = """
#
#
#
#
#
# Comprehensive Exam Data Analysis with Pandas - 30 Industry Goals with Connections
#
#
#
#
# Comprehensive Exam Data Analysis with Pandas - 30 Industry Goals with Connections
#
#
#
#
#
#
#
#
# """
# # Gradio interface
# iface = gr.Interface(
# fn=generate_goals,
# inputs=gr.Textbox(label="Goal Name"),
# outputs=gr.Textbox(label="Generated Goals"),
# title="Exam Data Analysis Goals Generator",
# description="Click on a goal in the visualization to generate related goals.",
# allow_flagging="never",
# theme="default",
# css=html_content
# )
# if __name__ == "__main__":
# iface.launch()
import gradio as gr
import os
from mistralai.client import MistralClient
from mistralai.models.chat_completion import ChatMessage
# Mistral AI setup
api_key = os.getenv("MISTRAL_API_KEY")
if not api_key:
raise ValueError("MISTRAL_API_KEY environment variable not set")
model = "mistral-tiny"
client = MistralClient(api_key=api_key)
def generate_goals(input_var):
messages = [
ChatMessage(role="user", content=f"Generate 5 specific, industry relevant goals for {input_var} using Python and Pandas in exam data analysis. Each goal should include a brief name and a one-sentence description of the task or skill.")
]
try:
response = client.chat(model=model, messages=messages)
return response.choices[0].message.content
except Exception as e:
return f"An error occurred: {str(e)}"
# HTML content with interactive visualization
html_content = """
Exam Data Analysis Goals Generator
Exam Data Analysis Goals Generator
"""
# Gradio interface
iface = gr.Interface(
fn=generate_goals,
inputs="text",
outputs="text",
title="Exam Data Analysis Goals Generator",
description="Click on a goal in the visualization to generate related goals.",
article=html_content
)
# Launch the Gradio app
iface.launch()