# import sys # import tensorflow as tf # import gradio as gr # print("Python:", sys.version) # print("TF:", tf.__version__) # def hello(): # return "Gradio + TensorFlow OK" # gr.Interface(fn=hello, inputs=None, outputs="text").launch() import os os.environ["TF_USE_LEGACY_KERAS"] = "1" import gradio as gr from common.gradio.common import full_analysis with gr.Blocks(theme=gr.themes.Soft()) as demo: gr.Markdown("# Handwriting → Big Five Personality Prediction") gr.Markdown("Upload any image of handwriting → model will try to predict personality trait") with gr.Row(): with gr.Column(): image_input = gr.Image( type="pil", label="Upload handwriting image", sources=["upload"], height=380 ) with gr.Column(): gr.Markdown("### Prediction") prediction_output = gr.Markdown(value="Upload image and click Analyze...") gr.Markdown("### Personality Description") summary_output = gr.Markdown(value="Description will appear here...") btn = gr.Button("Analyze", variant="primary") btn.click( fn=full_analysis, inputs=image_input, outputs=[prediction_output, summary_output] ) image_input.change( fn=full_analysis, inputs=image_input, outputs=[prediction_output, summary_output] ) if __name__ == "__main__": demo.launch(server_name="0.0.0.0", server_port=7860)