charlieoneill commited on
Commit
2509cce
1 Parent(s): 41fb331

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +32 -18
app.py CHANGED
@@ -397,21 +397,6 @@ def create_interface():
397
 
398
  return search_results, all_values, all_indices
399
 
400
-
401
-
402
- # # Prepare search results
403
- # search_results = []
404
- # for doc_id in topk_doc_ids:
405
- # metadata = df_metadata[df_metadata['arxiv_id'] == doc_id].iloc[0]
406
- # title = metadata['title'].replace('[', '').replace(']', '')
407
- # search_results.append([
408
- # title,
409
- # int(metadata['citation_count']),
410
- # int(metadata['year'])
411
- # ])
412
-
413
- # return search_results, all_values, all_indices
414
-
415
  @gr.render(inputs=[input_text, search_results_state, feature_values_state, feature_indices_state, manually_added_features_state, subject])
416
  def show_components(text, search_results, feature_values, feature_indices, manually_added_features, current_subject):
417
  if len(text) == 0:
@@ -477,27 +462,56 @@ def create_interface():
477
  with gr.Column(scale=1):
478
  update_button = gr.Button("Update Results")
479
  sliders = []
 
 
 
 
 
 
 
 
 
 
 
 
480
  for i, (value, index) in enumerate(zip(feature_values, feature_indices)):
481
  feature = next((f for f in subject_data[current_subject]['feature_analysis'] if f['index'] == index), None)
482
  label = f"{feature['label']} ({index})" if feature else f"Feature {index}"
483
 
 
 
 
 
484
  # Add prefix and change color for manually added features
485
  if index in manually_added_features:
486
  label = f"[Custom] {label}"
487
- slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=value, label=label, key=f"slider-{index}", elem_id=f"custom-slider-{index}")
488
  else:
489
- slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=value, label=label, key=f"slider-{index}")
490
 
491
  sliders.append(slider)
492
 
 
 
 
 
 
 
 
 
 
 
493
  def on_slider_change(*values):
494
  manually_added_features = values[-1]
495
  slider_values = list(values[:-1])
496
 
 
 
 
497
  # Reconstruct feature_indices based on the order of sliders
498
  reconstructed_indices = [int(slider.label.split('(')[-1].split(')')[0]) for slider in sliders]
499
 
500
- new_results, new_values, new_indices = update_search_results(slider_values, reconstructed_indices, manually_added_features, current_subject)
501
  return new_results, new_values, new_indices, manually_added_features
502
 
503
  update_button.click(
 
397
 
398
  return search_results, all_values, all_indices
399
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
400
  @gr.render(inputs=[input_text, search_results_state, feature_values_state, feature_indices_state, manually_added_features_state, subject])
401
  def show_components(text, search_results, feature_values, feature_indices, manually_added_features, current_subject):
402
  if len(text) == 0:
 
462
  with gr.Column(scale=1):
463
  update_button = gr.Button("Update Results")
464
  sliders = []
465
+ # for i, (value, index) in enumerate(zip(feature_values, feature_indices)):
466
+ # feature = next((f for f in subject_data[current_subject]['feature_analysis'] if f['index'] == index), None)
467
+ # label = f"{feature['label']} ({index})" if feature else f"Feature {index}"
468
+
469
+ # # Add prefix and change color for manually added features
470
+ # if index in manually_added_features:
471
+ # label = f"[Custom] {label}"
472
+ # slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=value, label=label, key=f"slider-{index}", elem_id=f"custom-slider-{index}")
473
+ # else:
474
+ # slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=value, label=label, key=f"slider-{index}")
475
+
476
+ # sliders.append(slider)
477
  for i, (value, index) in enumerate(zip(feature_values, feature_indices)):
478
  feature = next((f for f in subject_data[current_subject]['feature_analysis'] if f['index'] == index), None)
479
  label = f"{feature['label']} ({index})" if feature else f"Feature {index}"
480
 
481
+ # Transform the value to a 0-1 range
482
+ transformed_value = max(0.01, min(1, value)) # Ensure value is between 0.01 and 1
483
+ linear_value = (np.log10(transformed_value) + 2) / 2 # Map 0.01-1 to 0-1
484
+
485
  # Add prefix and change color for manually added features
486
  if index in manually_added_features:
487
  label = f"[Custom] {label}"
488
+ slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=linear_value, label=label, key=f"slider-{index}", elem_id=f"custom-slider-{index}")
489
  else:
490
+ slider = gr.Slider(minimum=0, maximum=1, step=0.01, value=linear_value, label=label, key=f"slider-{index}")
491
 
492
  sliders.append(slider)
493
 
494
+ # def on_slider_change(*values):
495
+ # manually_added_features = values[-1]
496
+ # slider_values = list(values[:-1])
497
+
498
+ # # Reconstruct feature_indices based on the order of sliders
499
+ # reconstructed_indices = [int(slider.label.split('(')[-1].split(')')[0]) for slider in sliders]
500
+
501
+ # new_results, new_values, new_indices = update_search_results(slider_values, reconstructed_indices, manually_added_features, current_subject)
502
+ # return new_results, new_values, new_indices, manually_added_features
503
+
504
  def on_slider_change(*values):
505
  manually_added_features = values[-1]
506
  slider_values = list(values[:-1])
507
 
508
+ # Transform slider values back to original scale
509
+ transformed_values = [10 ** ((2 * float(v)) - 2) for v in slider_values]
510
+
511
  # Reconstruct feature_indices based on the order of sliders
512
  reconstructed_indices = [int(slider.label.split('(')[-1].split(')')[0]) for slider in sliders]
513
 
514
+ new_results, new_values, new_indices = update_search_results(transformed_values, reconstructed_indices, manually_added_features, current_subject)
515
  return new_results, new_values, new_indices, manually_added_features
516
 
517
  update_button.click(