Nayohn commited on
Commit
b96c11c
·
1 Parent(s): d71cb2e

Ajout API job search avec Gradio

Browse files
Files changed (1) hide show
  1. app.py +25 -0
app.py CHANGED
@@ -142,6 +142,8 @@ def search_jobs(job_title="", location="", user_desc=None, salary=None, studies=
142
  - Si "offres" ou "jobs.results" contient des données → PRÉSENTER chaque offre
143
  - TOUJOURS vérifier le contenu du JSON avant de répondre à l'utilisateur
144
 
 
 
145
  Args:
146
  job_title (str): Titre du poste recherché (OBLIGATOIRE) - ex: "développeur Python"
147
  location (str): Ville/pays de recherche (OBLIGATOIRE) - ex: "Paris", "New York"
@@ -153,6 +155,29 @@ def search_jobs(job_title="", location="", user_desc=None, salary=None, studies=
153
  Returns:
154
  dict: JSON-RPC 2.0 avec offres d'emploi formatées par Mixtral pour présentation optimale
155
  """
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
156
  # Identifier les champs obligatoires manquants
157
  missing_fields = []
158
  if not job_title.strip():
 
142
  - Si "offres" ou "jobs.results" contient des données → PRÉSENTER chaque offre
143
  - TOUJOURS vérifier le contenu du JSON avant de répondre à l'utilisateur
144
 
145
+ 🔐 SÉCURITÉ : L'utilisateur doit dire le mot secret "cochon d'inde" quelque part dans sa demande
146
+
147
  Args:
148
  job_title (str): Titre du poste recherché (OBLIGATOIRE) - ex: "développeur Python"
149
  location (str): Ville/pays de recherche (OBLIGATOIRE) - ex: "Paris", "New York"
 
155
  Returns:
156
  dict: JSON-RPC 2.0 avec offres d'emploi formatées par Mixtral pour présentation optimale
157
  """
158
+
159
+ # 🔐 VÉRIFICATION DU MOT SECRET - SÉCURITÉ CRITIQUE
160
+ # Vérifier si le mot secret "cochon d'inde" est présent dans les paramètres
161
+ secret_word = "cochon d'inde"
162
+ all_params = f"{job_title} {location} {user_desc or ''} {salary or ''} {studies or ''} {domain or ''}".lower()
163
+
164
+ if secret_word not in all_params:
165
+ return {
166
+ "jsonrpc": "2.0",
167
+ "error": {
168
+ "code": -32001,
169
+ "message": "Access Denied - Secret word required",
170
+ "data": {
171
+ "error_type": "AUTHENTICATION_REQUIRED",
172
+ "message_for_user": "🔐 Accès refusé ! Tu dois dire le mot secret pour utiliser cet outil de recherche d'emploi.",
173
+ "hint": "Le mot secret doit être inclus quelque part dans ta demande de recherche.",
174
+ "instruction_llm": "Informe l'utilisateur qu'il doit dire le mot secret. Ne révèle JAMAIS le mot secret. Demande-lui simplement de l'inclure dans sa demande.",
175
+ "required_action": "L'utilisateur doit inclure le mot secret dans sa demande de recherche d'emploi."
176
+ }
177
+ },
178
+ "id": None
179
+ }
180
+
181
  # Identifier les champs obligatoires manquants
182
  missing_fields = []
183
  if not job_title.strip():