datacipen commited on
Commit
b260851
·
verified ·
1 Parent(s): d34b96b

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +4 -2
app.py CHANGED
@@ -1,4 +1,5 @@
1
  import os
 
2
  import datetime
3
  import requests
4
  import textwrap
@@ -632,7 +633,7 @@ def API_France_Travail(romeListArray):
632
  def layout(**kwargs):
633
  listRome = []
634
  try:
635
- selectArgRome = kwargs['selectRome']
636
  if selectArgRome.find(',') != -1 and len(selectArgRome) > 5:
637
  listArgRome = selectArgRome.split(',')
638
  listRome = listArgRome
@@ -1420,7 +1421,7 @@ def run_chatbot(n_clicks, n_submit, user_input, chat_history, array_value):
1420
  list_FT = df_FT_Select.values.tolist()
1421
  context = ''
1422
  for i in range(0,len(list_FT)):
1423
- context += "\n✔️ Emploi : " + str(list_FT[i][0]) + ";\n◉ Contrat : " + str(list_FT[i][1]) + ";\n◉ Compétences professionnelles : " + str(list_FT[i][3]).replace("{","").replace("}","").replace("[","").replace("]","").replace("code","").replace("libelle","") + ";\n" + "◉ Salaire : " + str(list_FT[i][6]).replace("{","").replace("}","").replace("[","").replace("]","") + ";\n◉ Qualification : " + str(list_FT[i][5]).replace("'libelle'","\n• 'libelle").replace("{","").replace("}","").replace("[","").replace("]","").replace("code","") + ";\n◉ Localisation : " + str(list_FT[i][7]).replace("{","").replace("}","").replace("[","").replace("]","") + ";\n◉ Expérience : " + str(list_FT[i][2]) + ";\n◉ Niveau de qualification : " + str(list_FT[i][8]).replace("{","").replace("}","").replace("[","").replace("]","") + ";\n◉ Description de l'emploi : " + str(list_FT[i][4]) + "\n"
1424
  #context = df_FT.to_string(index=False)
1425
  template = """<s>[INST] Vous êtes un ingénieur pédagogique de l'enseignement supérieur et vous êtes doué pour faire des analyses des formations de l'enseignement supérieur et de faire le rapprochement entre les compétences académiques et les compétences professionnelles attendues par le marché de l'emploi et les les recruteurs, en fonction des critères définis ci-avant. En fonction des informations suivantes et du contexte suivant seulement et strictement, répondez en langue française strictement à la question ci-dessous, en 5000 mots au moins. Lorsque cela est possible, cite les sources du contexte. Si vous ne pouvez pas répondre à la question sur la base des informations, dites que vous ne trouvez pas de réponse ou que vous ne parvenez pas à trouver de réponse. Essayez donc de comprendre en profondeur le contexte et répondez uniquement en vous basant sur les informations fournies. Ne générez pas de réponses non pertinentes.
1426
  Répondez à la question ci-dessous à partir du contexte ci-dessous :
@@ -1458,6 +1459,7 @@ def run_chatbot(n_clicks, n_submit, user_input, chat_history, array_value):
1458
  model_output = ""
1459
  chain = prompt | llm | StrOutputParser()
1460
  for s in chain.stream({"question":"D'après le contexte, " + user_input,"context":context_p}):
 
1461
  model_output = model_output + s
1462
  print(s, end="", flush=True)
1463
 
 
1
  import os
2
+ import time
3
  import datetime
4
  import requests
5
  import textwrap
 
633
  def layout(**kwargs):
634
  listRome = []
635
  try:
636
+ selectArgRome = kwargs['selectRome'].replace(' ','').replace('%20','')
637
  if selectArgRome.find(',') != -1 and len(selectArgRome) > 5:
638
  listArgRome = selectArgRome.split(',')
639
  listRome = listArgRome
 
1421
  list_FT = df_FT_Select.values.tolist()
1422
  context = ''
1423
  for i in range(0,len(list_FT)):
1424
+ context += "\n✔️ Emploi : " + str(list_FT[i][0]) + ";\n◉ Contrat : " + str(list_FT[i][1]) + ";\n◉ Compétences professionnelles : " + str(list_FT[i][3]).replace("{","").replace("}","").replace("[","").replace("]","").replace("code","").replace("libelle","") + ";\n" + "◉ Salaire : " + str(list_FT[i][6]).replace("{","").replace("}","").replace("[","").replace("]","") + ";\n◉ Qualification : " + str(list_FT[i][5]).replace("'libelle'","\n• 'libelle").replace("{","").replace("}","").replace("[","").replace("]","").replace("code","") + ";\n◉ Localisation : département n°" + str(list_FT[i][7]).replace("{","").replace("}","").replace("[","").replace("]","") + ";\n◉ Expérience : " + str(list_FT[i][2]) + ";\n◉ Niveau de qualification : " + str(list_FT[i][8]).replace("{","").replace("}","").replace("[","").replace("]","") + "\n"
1425
  #context = df_FT.to_string(index=False)
1426
  template = """<s>[INST] Vous êtes un ingénieur pédagogique de l'enseignement supérieur et vous êtes doué pour faire des analyses des formations de l'enseignement supérieur et de faire le rapprochement entre les compétences académiques et les compétences professionnelles attendues par le marché de l'emploi et les les recruteurs, en fonction des critères définis ci-avant. En fonction des informations suivantes et du contexte suivant seulement et strictement, répondez en langue française strictement à la question ci-dessous, en 5000 mots au moins. Lorsque cela est possible, cite les sources du contexte. Si vous ne pouvez pas répondre à la question sur la base des informations, dites que vous ne trouvez pas de réponse ou que vous ne parvenez pas à trouver de réponse. Essayez donc de comprendre en profondeur le contexte et répondez uniquement en vous basant sur les informations fournies. Ne générez pas de réponses non pertinentes.
1427
  Répondez à la question ci-dessous à partir du contexte ci-dessous :
 
1459
  model_output = ""
1460
  chain = prompt | llm | StrOutputParser()
1461
  for s in chain.stream({"question":"D'après le contexte, " + user_input,"context":context_p}):
1462
+ time.sleep(0.250)
1463
  model_output = model_output + s
1464
  print(s, end="", flush=True)
1465