fbellomo commited on
Commit
0e63967
·
verified ·
1 Parent(s): 93310d5

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +20 -16
app.py CHANGED
@@ -25,11 +25,13 @@ available_model_versions = ["Demographic Base"]
25
 
26
  default_model_version = "Demographic Base"
27
 
 
 
 
 
 
28
 
29
  def load_dataset(dataset, model_version):
30
- """
31
- Add 'model_version' parameter to utilize it for data loading if necessary.
32
- """
33
  return pd.DataFrame(
34
  {
35
  "Name": ["John", "Doe", "Jane", "Smith"],
@@ -42,15 +44,11 @@ def load_dataset(dataset, model_version):
42
 
43
 
44
  def predict(dataset, attributes, access_token, model_version):
45
- """
46
- Updated to accept and utilize 'model_version'.
47
- """
48
  if not access_token:
49
  raise gr.Error(
50
  "Access token missing or invalid. Please ensure you have a valid access token."
51
  )
52
 
53
- # Use model_version here if needed
54
  prediction_message = "200 predictions made in 2.5 seconds."
55
  prediction_results = pd.DataFrame(
56
  {
@@ -62,10 +60,8 @@ def predict(dataset, attributes, access_token, model_version):
62
 
63
 
64
  def load_dataset_and_predict(dataset, attributes, access_token, model_version):
65
- """
66
- Updated to pass 'model_version' to 'load_dataset' and 'predict'.
67
- """
68
  loaded_data = load_dataset(dataset, model_version)
 
69
 
70
  if access_token:
71
  prediction_message, prediction_results = predict(
@@ -75,7 +71,7 @@ def load_dataset_and_predict(dataset, attributes, access_token, model_version):
75
  prediction_message = "No access token provided, prediction skipped."
76
  prediction_results = None
77
 
78
- return loaded_data, prediction_message, prediction_results
79
 
80
 
81
  interface_theme = gr.themes.Default()
@@ -115,6 +111,9 @@ with gr.Blocks(theme=interface_theme) as demo:
115
  gr.Markdown("### Dataset Preview")
116
  dataset_preview = gr.Dataframe()
117
 
 
 
 
118
  predict_button = gr.Button("Predict Attributes")
119
 
120
  gr.Markdown("### Prediction Results")
@@ -122,9 +121,9 @@ with gr.Blocks(theme=interface_theme) as demo:
122
  prediction_label = gr.Markdown("")
123
 
124
  selected_dataset.change(
125
- fn=load_dataset,
126
- inputs=[selected_dataset, model_version],
127
- outputs=dataset_preview,
128
  )
129
 
130
  predict_button.click(
@@ -132,11 +131,16 @@ with gr.Blocks(theme=interface_theme) as demo:
132
  inputs=[selected_dataset, selected_attributes, access_token, model_version],
133
  outputs=[prediction_label, prediction_preview],
134
  )
 
 
 
 
 
135
 
136
  demo.load(
137
  fn=load_dataset_and_predict,
138
  inputs=[selected_dataset, selected_attributes, access_token, model_version],
139
- outputs=[dataset_preview, prediction_label, prediction_preview],
140
  )
141
 
142
- demo.launch()
 
25
 
26
  default_model_version = "Demographic Base"
27
 
28
+ def generate_code_example(dataset, attributes, model_version):
29
+ code = f"""
30
+ import fantix
31
+ """
32
+ return code.strip()
33
 
34
  def load_dataset(dataset, model_version):
 
 
 
35
  return pd.DataFrame(
36
  {
37
  "Name": ["John", "Doe", "Jane", "Smith"],
 
44
 
45
 
46
  def predict(dataset, attributes, access_token, model_version):
 
 
 
47
  if not access_token:
48
  raise gr.Error(
49
  "Access token missing or invalid. Please ensure you have a valid access token."
50
  )
51
 
 
52
  prediction_message = "200 predictions made in 2.5 seconds."
53
  prediction_results = pd.DataFrame(
54
  {
 
60
 
61
 
62
  def load_dataset_and_predict(dataset, attributes, access_token, model_version):
 
 
 
63
  loaded_data = load_dataset(dataset, model_version)
64
+ code_example = generate_code_example(dataset, attributes, model_version)
65
 
66
  if access_token:
67
  prediction_message, prediction_results = predict(
 
71
  prediction_message = "No access token provided, prediction skipped."
72
  prediction_results = None
73
 
74
+ return loaded_data, prediction_message, prediction_results, code_example
75
 
76
 
77
  interface_theme = gr.themes.Default()
 
111
  gr.Markdown("### Dataset Preview")
112
  dataset_preview = gr.Dataframe()
113
 
114
+ with gr.Accordion("Code Example", open=False):
115
+ code_example = gr.Code()
116
+
117
  predict_button = gr.Button("Predict Attributes")
118
 
119
  gr.Markdown("### Prediction Results")
 
121
  prediction_label = gr.Markdown("")
122
 
123
  selected_dataset.change(
124
+ fn=generate_code_example,
125
+ inputs=[selected_dataset, selected_attributes, model_version],
126
+ outputs=code_example,
127
  )
128
 
129
  predict_button.click(
 
131
  inputs=[selected_dataset, selected_attributes, access_token, model_version],
132
  outputs=[prediction_label, prediction_preview],
133
  )
134
+ predict_button.click(
135
+ fn=generate_code_example,
136
+ inputs=[selected_dataset, selected_attributes, model_version],
137
+ outputs=code_example,
138
+ )
139
 
140
  demo.load(
141
  fn=load_dataset_and_predict,
142
  inputs=[selected_dataset, selected_attributes, access_token, model_version],
143
+ outputs=[dataset_preview, prediction_label, prediction_preview, code_example],
144
  )
145
 
146
+ demo.launch()