Ritvik19 commited on
Commit
ad4cd29
·
verified ·
1 Parent(s): bad08ae

Minor Fixes

Browse files
Files changed (1) hide show
  1. app.py +27 -23
app.py CHANGED
@@ -21,6 +21,7 @@ from insights_bullet_chain import insights_bullet_chain
21
  from synopsis_chain import synopsis_chain
22
  from custom_exceptions import InvalidArgumentError, InvalidCommandError
23
  from openai_configuration import openai_parser
 
24
 
25
  st.set_page_config(layout="wide")
26
 
@@ -36,14 +37,14 @@ Here's a quick guide to getting started with me:
36
  | `/configure --key <api key> --model <model>` | Configure the OpenAI API key and model for our conversation. |
37
  | `/add-papers <list of urls>` | Upload and process documents for our conversation. |
38
  | `/library` | View an index of processed documents to easily navigate your research. |
39
- | `/view-doc <document id>` | View the content of a specific document. |
40
  | `/session-expense` | Calculate the cost of our conversation, ensuring transparency in resource usage. |
41
  | `/export` | Download conversation data for your records or further analysis. |
42
- | `/auto-insight <document id>` | Automatically generate questions and answers for the paper. |
43
- | `/condense-summary <document id>` | Generate increasingly concise, entity-dense summaries of the paper. |
44
- | `/insight-bullets <list of document ids>` | Extract and summarize key insights, methods, results, and conclusions. |
45
- | `/paper-synopsis <document id>` | Generate a synopsis of the paper. |
46
- | `/deep-dive [<list of document ids>] <query>` | Query me with a specific context. |
47
 
48
 
49
  <br>
@@ -75,7 +76,7 @@ def index_documents_wrapper(inputs=None):
75
 
76
  def view_document_wrapper(inputs):
77
  response = st.session_state.documents[inputs].page_content
78
- st.session_state.messages.append((f"/view-doc {inputs}", response, "identity"))
79
  return (response, "identity")
80
 
81
 
@@ -91,6 +92,7 @@ def calculate_cost_wrapper(inputs=None):
91
 
92
 
93
  def download_conversation_wrapper(inputs=None):
 
94
  conversation_data = json.dumps(
95
  {
96
  "document_urls": (
@@ -180,9 +182,9 @@ def query_llm_wrapper(inputs):
180
 
181
 
182
  def chain_of_density_wrapper(inputs):
183
- if inputs == "":
184
- raise InvalidArgumentError("Please provide a document id")
185
- document = st.session_state.documents[inputs].page_content
186
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
187
  with get_openai_callback() as cb:
188
  summary = chain_of_density_chain(llm).invoke({"paper": document})
@@ -199,9 +201,9 @@ def chain_of_density_wrapper(inputs):
199
 
200
 
201
  def synopsis_wrapper(inputs):
202
- if inputs == "":
203
- raise InvalidArgumentError("Please provide a document id")
204
- document = st.session_state.documents[inputs].page_content
205
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
206
  with get_openai_callback() as cb:
207
  summary = synopsis_chain(llm).invoke({"paper": document})
@@ -218,8 +220,8 @@ def synopsis_wrapper(inputs):
218
 
219
 
220
  def insights_bullet_wrapper(inputs):
221
- if inputs == "":
222
- raise InvalidArgumentError("Please provide a document id")
223
  document = "\n\n".join([st.session_state.documents[c].page_content for c in inputs])
224
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
225
  with get_openai_callback() as cb:
@@ -237,9 +239,9 @@ def insights_bullet_wrapper(inputs):
237
 
238
 
239
  def auto_qa_chain_wrapper(inputs):
240
- if inputs == "":
241
- raise InvalidArgumentError("Please provide a document id")
242
- document = st.session_state.documents[inputs].page_content
243
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
244
  auto_qa_conversation = []
245
  with get_openai_callback() as cb:
@@ -310,15 +312,15 @@ if __name__ == "__main__":
310
  ("/configure", str, configure_openai_wrapper),
311
  ("/add-papers", list, process_documents_wrapper),
312
  ("/library", None, index_documents_wrapper),
313
- ("/view-doc", str, view_document_wrapper),
314
  ("/session-expense", None, calculate_cost_wrapper),
315
  ("/export", None, download_conversation_wrapper),
316
  ("/help-me", None, lambda x: (welcome_message, "identity")),
317
- ("/auto-insight", str, auto_qa_chain_wrapper),
318
  ("/deep-dive", str, query_llm_wrapper),
319
- ("/condense-summary", str, chain_of_density_wrapper),
320
  ("/insight-bullets", list, insights_bullet_wrapper),
321
- ("/paper-synopsis", str, synopsis_wrapper),
322
  ]
323
  command_center = CommandCenter(
324
  default_input_type=str,
@@ -334,7 +336,9 @@ if __name__ == "__main__":
334
  }
335
  jsonify_functions = {
336
  "identity": lambda x: x,
337
- "dataframe": lambda x: x.to_dict(orient="records"),
 
 
338
  "reponse_with_citations": lambda x: x,
339
  }
340
  boot(command_center, formating_functions)
 
21
  from synopsis_chain import synopsis_chain
22
  from custom_exceptions import InvalidArgumentError, InvalidCommandError
23
  from openai_configuration import openai_parser
24
+ import pickle
25
 
26
  st.set_page_config(layout="wide")
27
 
 
37
  | `/configure --key <api key> --model <model>` | Configure the OpenAI API key and model for our conversation. |
38
  | `/add-papers <list of urls>` | Upload and process documents for our conversation. |
39
  | `/library` | View an index of processed documents to easily navigate your research. |
40
+ | `/view-snip <snippet id>` | View the content of a specific snnippet. |
41
  | `/session-expense` | Calculate the cost of our conversation, ensuring transparency in resource usage. |
42
  | `/export` | Download conversation data for your records or further analysis. |
43
+ | `/auto-insight <list of snippet ids>` | Automatically generate questions and answers for the paper. |
44
+ | `/condense-summary <list of snippet ids>` | Generate increasingly concise, entity-dense summaries of the paper. |
45
+ | `/insight-bullets <list of snippet ids>` | Extract and summarize key insights, methods, results, and conclusions. |
46
+ | `/paper-synopsis <list of snippet ids>` | Generate a synopsis of the paper. |
47
+ | `/deep-dive [<list of snippet ids>] <query>` | Query me with a specific context. |
48
 
49
 
50
  <br>
 
76
 
77
  def view_document_wrapper(inputs):
78
  response = st.session_state.documents[inputs].page_content
79
+ st.session_state.messages.append((f"/view-snip {inputs}", response, "identity"))
80
  return (response, "identity")
81
 
82
 
 
92
 
93
 
94
  def download_conversation_wrapper(inputs=None):
95
+ pickle.dump(st.session_state.messages, open("conversation_data.pkl", "wb"))
96
  conversation_data = json.dumps(
97
  {
98
  "document_urls": (
 
182
 
183
 
184
  def chain_of_density_wrapper(inputs):
185
+ if inputs == []:
186
+ raise InvalidArgumentError("Please provide snippet ids")
187
+ document = "\n\n".join([st.session_state.documents[c].page_content for c in inputs])
188
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
189
  with get_openai_callback() as cb:
190
  summary = chain_of_density_chain(llm).invoke({"paper": document})
 
201
 
202
 
203
  def synopsis_wrapper(inputs):
204
+ if inputs == []:
205
+ raise InvalidArgumentError("Please provide snippet ids")
206
+ document = "\n\n".join([st.session_state.documents[c].page_content for c in inputs])
207
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
208
  with get_openai_callback() as cb:
209
  summary = synopsis_chain(llm).invoke({"paper": document})
 
220
 
221
 
222
  def insights_bullet_wrapper(inputs):
223
+ if inputs == []:
224
+ raise InvalidArgumentError("Please provide snippet ids")
225
  document = "\n\n".join([st.session_state.documents[c].page_content for c in inputs])
226
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
227
  with get_openai_callback() as cb:
 
239
 
240
 
241
  def auto_qa_chain_wrapper(inputs):
242
+ if inputs == []:
243
+ raise InvalidArgumentError("Please provide snippet ids")
244
+ document = "\n\n".join([st.session_state.documents[c].page_content for c in inputs])
245
  llm = ChatOpenAI(model=st.session_state.model, temperature=0)
246
  auto_qa_conversation = []
247
  with get_openai_callback() as cb:
 
312
  ("/configure", str, configure_openai_wrapper),
313
  ("/add-papers", list, process_documents_wrapper),
314
  ("/library", None, index_documents_wrapper),
315
+ ("/view-snip", str, view_document_wrapper),
316
  ("/session-expense", None, calculate_cost_wrapper),
317
  ("/export", None, download_conversation_wrapper),
318
  ("/help-me", None, lambda x: (welcome_message, "identity")),
319
+ ("/auto-insight", list, auto_qa_chain_wrapper),
320
  ("/deep-dive", str, query_llm_wrapper),
321
+ ("/condense-summary", list, chain_of_density_wrapper),
322
  ("/insight-bullets", list, insights_bullet_wrapper),
323
+ ("/paper-synopsis", list, synopsis_wrapper),
324
  ]
325
  command_center = CommandCenter(
326
  default_input_type=str,
 
336
  }
337
  jsonify_functions = {
338
  "identity": lambda x: x,
339
+ "dataframe": lambda x: (
340
+ x.to_dict(orient="records") if isinstance(x, pd.DataFrame) else x
341
+ ),
342
  "reponse_with_citations": lambda x: x,
343
  }
344
  boot(command_center, formating_functions)