AI Analysis: manual tweaks by user

This commit is contained in:
jeremy bayse
2026-03-23 00:11:55 +01:00
parent 937857a842
commit 10b866fc47

View File

@@ -81,7 +81,7 @@ class AIAnalysisService
$jobDesc = $candidate->jobPosition->description; $jobDesc = $candidate->jobPosition->description;
$requirements = implode(", ", $candidate->jobPosition->requirements ?? []); $requirements = implode(", ", $candidate->jobPosition->requirements ?? []);
$prompt = "Tu es un expert en recrutement technique. Analyse le CV (et la lettre de motivation si présente) d'un candidat pour le poste de '{$jobTitle}'. $prompt = "Tu es un expert en recrutement technique. Analyse le CV (et la lettre de motivation si présente) d'un candidat pour le poste de '{$jobTitle}' attache une grande importance aux compétences techniques et à l'expérience du candidat, mais aussi à sa capacité à s'intégrer dans une équipe et à sa motivation.
DESCRIPTION DU POSTE: DESCRIPTION DU POSTE:
{$jobDesc} {$jobDesc}
@@ -90,8 +90,7 @@ class AIAnalysisService
{$requirements} {$requirements}
CONTENU DU CV: CONTENU DU CV:
{$cvText} {$cvText}
CONTENU DE LA LETTRE DE MOTIVATION: CONTENU DE LA LETTRE DE MOTIVATION:
" . ($letterText ?? "Non fournie") . " " . ($letterText ?? "Non fournie") . "
@@ -100,13 +99,13 @@ class AIAnalysisService
Fournis une analyse structurée en JSON avec les clés suivantes: Fournis une analyse structurée en JSON avec les clés suivantes:
- match_score: note de 0 à 100 - match_score: note de 0 à 100
- summary: résumé de 3-4 phrases sur le profil - summary: résumé de 3-4 phrases sur le profil et la ville d'origine du candidat
- strengths: liste des points forts par rapport au poste - strengths: liste des points forts par rapport au poste
- gaps: liste des compétences manquantes ou points de vigilance - gaps: liste des compétences manquantes ou points de vigilance
- verdict: une conclusion (Favorable, Très Favorable, Réservé, Défavorable) - verdict: une conclusion (Favorable, Très Favorable, Réservé, Défavorable)
Réponds UNIQUEMENT en JSON pur."; Réponds UNIQUEMENT en JSON pur.";
// For now, I'll use a mocked response or try to use a generic endpoint if configured. // For now, I'll use a mocked response or try to use a generic endpoint if configured.
// I'll check if the user has an Ollama endpoint. // I'll check if the user has an Ollama endpoint.
@@ -122,7 +121,7 @@ class AIAnalysisService
]); ]);
if ($response->successful()) { if ($response->successful()) {
return json_decode($response->json('response'), true); return json_decode($response->json('response'), true);
} else { } else {
Log::warning("AI Provider Error: HTTP " . $response->status() . " - " . $response->body()); Log::warning("AI Provider Error: HTTP " . $response->status() . " - " . $response->body());
} }