Spaces:
Sleeping
Sleeping
Update with adding cvs afterwards
Browse files
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="🚨")
|
|
|
|
|
|
|
|