HonestAnnie commited on
Commit
def34f2
·
1 Parent(s): 2d7464e
Files changed (1) hide show
  1. app.py +5 -29
app.py CHANGED
@@ -63,25 +63,17 @@ def perform_query(query, authors, num_results):
63
  results = query_chroma(embeddings, authors, num_results)
64
 
65
  if "error" in results:
66
- return [gr.update(visible=True, value=f"Error: {results['error']}") for _ in range(max_textboxes * 3)]
67
 
68
  updates = []
69
  for res in results:
70
- markdown_content = f"**{res['author']}, {res['book']}, Distance: {res['distance']}**\n\n{res['text']}"
71
  updates.append(gr.update(visible=True, value=markdown_content))
72
- updates.append(gr.update(visible=True, value="Flag", elem_id=f"flag-{len(updates)//2}"))
73
- updates.append(gr.update(visible=False, value=res['id'])) # Hide the ID textbox
74
-
75
- updates += [gr.update(visible=False)] * (3 * (max_textboxes - len(results)))
76
 
77
- return updates
78
 
79
- # Initialize the CSVLogger callback for flagging
80
- callback = gr.CSVLogger()
81
 
82
- def flag_output(query, output_text, output_id):
83
- callback.flag([query, output_text, output_id])
84
-
85
  # Gradio interface
86
  max_textboxes = 30
87
 
@@ -96,34 +88,18 @@ with gr.Blocks(css=".custom-markdown { border: 1px solid #ccc; padding: 10px; bo
96
 
97
  components = []
98
  textboxes = []
99
- flag_buttons = []
100
- ids = []
101
 
102
  for _ in range(max_textboxes):
103
  with gr.Column() as col:
104
  text_out = gr.Markdown(visible=False, elem_classes="custom-markdown")
105
- flag_btn = gr.Button(value="Flag", visible=False)
106
- id_out = gr.Textbox(visible=False)
107
- components.extend([text_out, flag_btn, id_out])
108
  textboxes.append(text_out)
109
- flag_buttons.append(flag_btn)
110
- ids.append(id_out)
111
 
112
- callback.setup([inp] + textboxes + ids, "flagged_data_points")
113
-
114
  btn.click(
115
  fn=perform_query,
116
  inputs=[inp, author_inp, num_results_inp],
117
  outputs=components
118
  )
119
 
120
- for i in range(0, len(components), 3):
121
- flag_buttons[i//3].click(
122
- fn=flag_output,
123
- inputs=[inp, textboxes[i//3], ids[i//3]],
124
- outputs=[],
125
- preprocess=False
126
- )
127
-
128
 
129
  demo.launch()
 
63
  results = query_chroma(embeddings, authors, num_results)
64
 
65
  if "error" in results:
66
+ return [gr.update(visible=True, value=f"Error: {results['error']}") for _ in range(max_textboxes * 2)]
67
 
68
  updates = []
69
  for res in results:
70
+ markdown_content = f"**{res['author']}, {res['book']}**\n\n{res['text']}"
71
  updates.append(gr.update(visible=True, value=markdown_content))
 
 
 
 
72
 
73
+ updates += [gr.update(visible=False)] * (max_textboxes - len(results))
74
 
75
+ return updates
 
76
 
 
 
 
77
  # Gradio interface
78
  max_textboxes = 30
79
 
 
88
 
89
  components = []
90
  textboxes = []
 
 
91
 
92
  for _ in range(max_textboxes):
93
  with gr.Column() as col:
94
  text_out = gr.Markdown(visible=False, elem_classes="custom-markdown")
95
+ components.append(text_out)
 
 
96
  textboxes.append(text_out)
 
 
97
 
 
 
98
  btn.click(
99
  fn=perform_query,
100
  inputs=[inp, author_inp, num_results_inp],
101
  outputs=components
102
  )
103
 
 
 
 
 
 
 
 
 
104
 
105
  demo.launch()