mbosse99 commited on
Commit
ce729c5
·
1 Parent(s): e06b897

Update with adding cvs afterwards

Browse files
Files changed (1) hide show
  1. app.py +34 -6
app.py CHANGED
@@ -167,6 +167,8 @@ if "pdf_data_cvs" not in st.session_state:
167
  st.session_state["pdf_data_cvs"] = None
168
  if "pdf_data_cvs_string" not in st.session_state:
169
  st.session_state["pdf_data_cvs_string"] = None
 
 
170
  if "pdf_data_jobdescription" not in st.session_state:
171
  st.session_state["pdf_data_jobdescription"] = None
172
  if "pdf_data_jobdescription_string" not in st.session_state:
@@ -211,6 +213,7 @@ with st.container():
211
  pdf_data_cvs_string = ""
212
  for i,cv in enumerate(st.session_state["cvs"]):
213
  print(cv.name)
 
214
  # print(cv.name)
215
  # print(cv.size)
216
  cv_data_bytes = cv.read()
@@ -226,8 +229,36 @@ with st.container():
226
  st.session_state["pdf_data_cvs_string"] = pdf_data_cvs_string
227
  st.session_state["pdf_data_jobdescription"] = pdf_data_jobdescription
228
  st.session_state["pdf_data_jobdescription_string"] = pdf_data_jobdescription_string
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
229
  pre_generate = st.toggle("Activate to pre generate questions", key="pre_toggle")
230
  if pre_generate:
 
231
  system = sys_prompt.format(job=st.session_state["pdf_data_jobdescription_string"], resume=st.session_state["pdf_data_cvs_string"], n=15)
232
  if not st.session_state["ai_questions"]:
233
  try:
@@ -344,15 +375,12 @@ with st.container():
344
  print(st.session_state["final_question_string"])
345
 
346
  # pdf_data_cv = uploaded_file_cv.read()
347
-
 
348
  upload_success = upload_blob(pdf_name, json_data, st.session_state["pdf_data_jobdescription"],st.session_state["pdf_data_cvs"],st.session_state["pre_toggle"],st.session_state["final_question_string"])
349
  else:
350
  st.write("Please fill out both fields and upload a PDF file.")
351
 
352
 
353
  if not upload_success:
354
- st.error('An error has occurred. Please contact the administrator. Sorry for the inconvenience.', icon="🚨")
355
- # else:
356
- # col_submit_btn, col_empty, col_clear_btn = st.columns([1,4, 1])
357
- # if col_clear_btn.button("Clear" ,use_container_width=True):
358
- # streamlit_js_eval(js_expressions="parent.window.location.reload()")
 
167
  st.session_state["pdf_data_cvs"] = None
168
  if "pdf_data_cvs_string" not in st.session_state:
169
  st.session_state["pdf_data_cvs_string"] = None
170
+ if "pdf_data_cvs_names" not in st.session_state:
171
+ st.session_state["pdf_data_cvs_names"] = []
172
  if "pdf_data_jobdescription" not in st.session_state:
173
  st.session_state["pdf_data_jobdescription"] = None
174
  if "pdf_data_jobdescription_string" not in st.session_state:
 
213
  pdf_data_cvs_string = ""
214
  for i,cv in enumerate(st.session_state["cvs"]):
215
  print(cv.name)
216
+ st.session_state["pdf_data_cvs_names"].append(cv.name)
217
  # print(cv.name)
218
  # print(cv.size)
219
  cv_data_bytes = cv.read()
 
229
  st.session_state["pdf_data_cvs_string"] = pdf_data_cvs_string
230
  st.session_state["pdf_data_jobdescription"] = pdf_data_jobdescription
231
  st.session_state["pdf_data_jobdescription_string"] = pdf_data_jobdescription_string
232
+ if st.session_state["pdf_data_cvs"]:
233
+ pdf_data_cvs_string = ""
234
+ initial_cv_length = len(st.session_state["pdf_data_cvs"])
235
+ for i,cv in enumerate(st.session_state["cvs"]):
236
+ if cv.name not in st.session_state["pdf_data_cvs_names"]:
237
+ st.session_state["pdf_data_cvs_names"].append(cv.name)
238
+ print("At second:"+cv.name)
239
+ cv_data_bytes = cv.read()
240
+ st.session_state["pdf_data_cvs"].append(cv_data_bytes)
241
+ pdf_reader_cvs = PdfReader(io.BytesIO(cv_data_bytes))
242
+ pdf_data_cvs_string += "CV "+str(i+1+initial_cv_length)+": "
243
+ for page_num in range(len(pdf_reader_cvs.pages)):
244
+ page = pdf_reader_cvs.pages[page_num]
245
+ pdf_data_cvs_string += page.extract_text()
246
+ pdf_data_cvs_string += "\n"
247
+ st.session_state["pdf_data_cvs_string"] += pdf_data_cvs_string
248
+ for i,name in enumerate(st.session_state["pdf_data_cvs_names"]):
249
+ # print(name)
250
+ found = False
251
+ for j,cv in enumerate(st.session_state["cvs"]):
252
+ # print(cv.name)
253
+ if name == cv.name:
254
+ found = True
255
+ if not found:
256
+ print("gelöscht: "+name)
257
+ del st.session_state["pdf_data_cvs"][i]
258
+ del st.session_state["pdf_data_cvs_names"][i]
259
  pre_generate = st.toggle("Activate to pre generate questions", key="pre_toggle")
260
  if pre_generate:
261
+
262
  system = sys_prompt.format(job=st.session_state["pdf_data_jobdescription_string"], resume=st.session_state["pdf_data_cvs_string"], n=15)
263
  if not st.session_state["ai_questions"]:
264
  try:
 
375
  print(st.session_state["final_question_string"])
376
 
377
  # pdf_data_cv = uploaded_file_cv.read()
378
+ print(len(st.session_state["pdf_data_cvs"]))
379
+ print(st.session_state["pdf_data_cvs_names"])
380
  upload_success = upload_blob(pdf_name, json_data, st.session_state["pdf_data_jobdescription"],st.session_state["pdf_data_cvs"],st.session_state["pre_toggle"],st.session_state["final_question_string"])
381
  else:
382
  st.write("Please fill out both fields and upload a PDF file.")
383
 
384
 
385
  if not upload_success:
386
+ st.error('An error has occurred. Please contact the administrator. Sorry for the inconvenience.', icon="🚨")