datacipen commited on
Commit
0e3b0e2
1 Parent(s): 616596c

Update main.py

Browse files
Files changed (1) hide show
  1. main.py +20 -2
main.py CHANGED
@@ -276,6 +276,19 @@ def rename(orig_author: str):
276
  rename_dict = {"ConversationalRetrievalChain": "💬 Assistant conversationnel", "Retriever": "Agent conversationnel", "StuffDocumentsChain": "Chaîne de documents", "LLMChain": "Agent", "HuggingFaceEndpoint": "Mistral AI 🤖"}
277
  return rename_dict.get(orig_author, orig_author)
278
 
 
 
 
 
 
 
 
 
 
 
 
 
 
279
  @cl.action_callback("download")
280
  async def on_action(action):
281
  content = []
@@ -404,7 +417,7 @@ async def construction_NCS(competenceList):
404
  listEmplois = finals_df.values.tolist()
405
  stringEmplois = ''
406
  for i in range(0,len(listEmplois)):
407
- stringEmplois += "\n✔️ Emploi : " + str(listEmplois[i][0]) + ";\n◉ Contrat : " + str(listEmplois[i][1]) + ";\n◉Compétences professionnelles : " + str(listEmplois[i][3]) + ";\n" + "◉ Salaire : " + str(listEmplois[i][6]) + ";\n◉ Qualification : " + str(listEmplois[i][5]) + ";\n◉ Localisation : " + str(listEmplois[i][7]) + ";\n◉ Expérience : " + str(listEmplois[i][2]) + ";\n◉ Niveau de qualification : " + str(listEmplois[i][8]) + ";\n◉ Description de l'emploi : " + str(listEmplois[i][4]) + "\n"
408
  await cl.sleep(1)
409
  listEmplois_name = f"Liste des emplois"
410
  text_elements = []
@@ -420,6 +433,11 @@ async def construction_NCS(competenceList):
420
  )
421
  await cl.Message(author="Datapcc : 🌐🌐🌐",content="📈 Source France Travail : " + listClesMetier_name, elements=text_ClesMetier).send()
422
  await cl.sleep(1)
 
 
 
 
 
423
  codeArray = romeListArray
424
  ficheMetiers = []
425
  for i in range(0,len(codeArray)):
@@ -503,7 +521,7 @@ async def document_chiffres_cles_emplois(url, codes):
503
  allentreprise = removeTags(allEntreprise[0])
504
  else:
505
  allentreprise = ""
506
- all = all + "\n\nChiffres-clés Métier " + allTitre + ":\nDemandeurs d'emploi et Offres d'emploi : " + allEmbauches + ". Salaires proposés dans les offres : " + allSalaires + ". Salaires médians constatés : " + allSalairesMedian + ". Difficultés de recrutement pour les entreprises : " + alldiff + ". Origine des difficultés : " + alldiffOrigin + ". Répartition des embauches par type de contrat : " + allTypeContrat + ". Répartition des embauches par taille d'entreprise : " + allentreprise + "."
507
  return all
508
 
509
  @cl.step(type="tool")
 
276
  rename_dict = {"ConversationalRetrievalChain": "💬 Assistant conversationnel", "Retriever": "Agent conversationnel", "StuffDocumentsChain": "Chaîne de documents", "LLMChain": "Agent", "HuggingFaceEndpoint": "Mistral AI 🤖"}
277
  return rename_dict.get(orig_author, orig_author)
278
 
279
+ @cl.action_callback("datavizChiffresClesMetiers")
280
+ async def on_action(action):
281
+ romeListArray = action.value
282
+ for j in range(0, len(romeListArray)):
283
+ table = await datavisualisation_chiffres_cles_emplois("https://dataemploi.pole-emploi.fr/metier/chiffres-cles/NAT/FR/" + romeListArray[j])
284
+ plot_demandeur = plotDemandeur(htmlToDataframe(table[0]), romeListArray[j])
285
+ if len(table[1]) > 0:
286
+ plot_salaire = plotSalaire(htmlToDataframe(table[1]))
287
+ plot_difficulte = plotDifficulte(htmlToDataframe(table[2]))
288
+ plot_repartitionContrat = plotRepartition(htmlToDataframe(table[3]), "Répartition des embauches du métier : type de contrat")
289
+ plot_repartitionEntreprise = plotRepartition(htmlToDataframe(table[4]), "Répartition des embauches du métier : type entreprise")
290
+
291
+
292
  @cl.action_callback("download")
293
  async def on_action(action):
294
  content = []
 
417
  listEmplois = finals_df.values.tolist()
418
  stringEmplois = ''
419
  for i in range(0,len(listEmplois)):
420
+ stringEmplois += "\n✔️ Emploi : " + str(listEmplois[i][0]) + ";\n◉ Contrat : " + str(listEmplois[i][1]) + ";\n◉ Compétences professionnelles : " + str(listEmplois[i][3]) + ";\n" + "◉ Salaire : " + str(listEmplois[i][6]) + ";\n◉ Qualification : " + str(listEmplois[i][5]).replace("'libelle'","\n• 'libelle") + ";\n◉ Localisation : " + str(listEmplois[i][7]) + ";\n◉ Expérience : " + str(listEmplois[i][2]) + ";\n◉ Niveau de qualification : " + str(listEmplois[i][8]) + ";\n◉ Description de l'emploi : " + str(listEmplois[i][4]) + "\n"
421
  await cl.sleep(1)
422
  listEmplois_name = f"Liste des emplois"
423
  text_elements = []
 
433
  )
434
  await cl.Message(author="Datapcc : 🌐🌐🌐",content="📈 Source France Travail : " + listClesMetier_name, elements=text_ClesMetier).send()
435
  await cl.sleep(1)
436
+ datavizChiffresClesMetiers = [
437
+ cl.Action(name="datavizChiffresClesMetiers", value=romeListArray, description="Afficher la datavisualisation des chiffres clés des métiers")
438
+ ]
439
+ await cl.Message(author="Datapcc : 🌐🌐🌐",content="📊 Afficher la datavisualisation des chiffres clés des métiers", actions=datavizChiffresClesMetiers).send()
440
+ await cl.sleep(1)
441
  codeArray = romeListArray
442
  ficheMetiers = []
443
  for i in range(0,len(codeArray)):
 
521
  allentreprise = removeTags(allEntreprise[0])
522
  else:
523
  allentreprise = ""
524
+ all = all + "\n\nChiffres-clés Métier : \n**" + allTitre + "**:\n◉ Demandeurs d'emploi et Offres d'emploi : " + allEmbauches.replace("Plus de données sur les Demandeurs d'emploi","").replace("Plus de données","") + ".\n◉ Salaires proposés dans les offres : " + allSalaires + ".\n◉ Salaires médians constatés : " + allSalairesMedian + ".\n◉ Difficultés de recrutement pour les entreprises : " + alldiff + ".\n◉ Origine des difficultés : " + alldiffOrigin + ".\n◉ Répartition des embauches par type de contrat : " + allTypeContrat + ".\n◉ Répartition des embauches par taille d'entreprise : " + allentreprise + "."
525
  return all
526
 
527
  @cl.step(type="tool")