JSON schema: extract a resume
JSON Schema to extract a resume with an LLM: experience, skills, education and certifications. Leaves out age, photo and other protected data.
Extract the resume data. Invent nothing: if information is missing, leave the field empty. Never infer age, race, religion, national origin, marital status, pregnancy or disability: these are protected characteristics under U.S. equal employment law.
JSON Schema
{
"type": "object",
"required": [
"name",
"experience",
"skills"
],
"properties": {
"name": {
"type": "string"
},
"skills": {
"type": "array",
"items": {
"type": "string"
}
},
"headline": {
"type": "string",
"description": "Current or target job title"
},
"education": {
"type": "array",
"items": {
"type": "object",
"properties": {
"year": {
"type": "string"
},
"degree": {
"type": "string"
},
"school": {
"type": "string"
}
}
}
},
"experience": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"company"
],
"properties": {
"end": {
"type": "string"
},
"start": {
"type": "string"
},
"title": {
"type": "string"
},
"company": {
"type": "string"
}
}
}
},
"certifications": {
"type": "array",
"items": {
"type": "string"
}
},
"years_of_experience": {
"type": "number"
}
}
}Coût estimé
Tokens d'entrée par appel : ≈ 554
| Modèle | Par appel | Pour 1 000 appels |
|---|---|---|
| Mistral Large · Mistral AI | 0,00024 € | 0,24 € |
| DeepSeek Flash · DeepSeek | 0,00015 € | 0,15 € |
| DeepSeek V4 Pro · DeepSeek | 0,00064 € | 0,64 € |
| GPT-6 Luna · OpenAI | 0,00005 € | 0,05 € |
| GPT-6 Sol · OpenAI | 0,00098 € | 0,98 € |
| Claude Sonnet 5.5 · Anthropic | 0,00098 € | 0,98 € |
| Claude Opus 5.5 · Anthropic | 0,00195 € | 1,95 € |
| Modèle open source hébergé chez soi (Ollama, vLLM) | 0 € d'API (coût du serveur seulement) | |
Coût d'entrée seulement, sans la réponse du modèle. Prix publics des fournisseurs (Mistral AI, DeepSeek, OpenAI, Anthropic), tarif standard en dollars converti en euros au taux BCE du 29 septembre 2026. Estimation : 1 token ≈ 3,6 caractères.
Commun aux 3 régions
Contenu créé par l'auteur, sans source extérieure.
Usage commercial autorisé · citer l'auteur · modifications permises.
Texte ou données seuls : aucun accès aux fichiers, au réseau ni aux commandes.
Hébergé en France (Scaleway, Paris). Aucun transfert hors UE.
Union européenne · 5/5
Aucune donnée personnelle.
Pas de données d'entraînement : pas de résumé à fournir.
États-Unis · 5/5
Aucune donnée personnelle.
Pas de données d'entraînement : pas de documentation à publier.
Chine · 5/5
Aucune donnée personnelle.
Pas de données d'entraînement ; les contenus générés par IA diffusés en Chine doivent être marqués (2025).
Synthèse indicative au 30/09/2026, sans valeur de certification juridique. Méthode et sources →
Statistiques
J'aime : 0 · Commentaires : 0
Cliquez sur un compteur pour l’afficher ou le masquer, survolez le graphique pour le détail. Une vue par visiteur et par jour, robots exclus ; décompte commencé le 30 septembre 2026.
- Identifiant
- contextetech--extract-resume
- Type
- Schémas de sortie
- Fichier
- extract-resume.schema.json
- Format
- JSON (application/json)
- Taille
- 1 292 octets (1,3 Ko)
- Encodage
- UTF-8
- Tokens estimés
- ≈ 359
- Langue
- Anglais
- Licence
- MIT
- Usage commercial
- Autorisé
- Données personnelles
- Aucune
- Version
- 1.0
- Publié le
- 2 octobre 2026 à 21:54
- Mis à jour le
- 2 octobre 2026 à 21:54
- Stockage
- en base
- Utilisations
- 0
- J'aime
- 0
extract-resume.schema.json
{
"type": "object",
"required": [
"name",
"experience",
"skills"
],
"properties": {
"name": {
"type": "string"
},
"skills": {
"type": "array",
"items": {
"type": "string"
}
},
"headline": {
"type": "string",
"description": "Current or target job title"
},
"education": {
"type": "array",
"items": {
"type": "object",
"properties": {
"year": {
"type": "string"
},
"degree": {
"type": "string"
},
"school": {
"type": "string"
}
}
}
},
"experience": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"company"
],
"properties": {
"end": {
"type": "string"
},
"start": {
"type": "string"
},
"title": {
"type": "string"
},
"company": {
"type": "string"
}
}
}
},
"certifications": {
"type": "array",
"items": {
"type": "string"
}
},
"years_of_experience": {
"type": "number"
}
}
}API Anthropic (Python)
import json, anthropic
schema = json.load(open("extract-resume.schema.json"))
client = anthropic.Anthropic()
resp = client.messages.create(model="claude-sonnet-5", max_tokens=1024,
tools=[{"name": "extraire", "description": "Renvoie les données extraites", "input_schema": schema}],
tool_choice={"type": "tool", "name": "extraire"},
messages=[{"role": "user", "content": "votre entrée ici"}])
print(resp.content[0].input)Format OpenAI (response_format)
{
"type": "json_schema",
"json_schema": {
"name": "extract-resume",
"schema": {
"type": "object",
"required": [
"name",
"experience",
"skills"
],
"properties": {
"name": {
"type": "string"
},
"skills": {
"type": "array",
"items": {
"type": "string"
}
},
"headline": {
"type": "string",
"description": "Current or target job title"
},
"education": {
"type": "array",
"items": {
"type": "object",
"properties": {
"year": {
"type": "string"
},
"degree": {
"type": "string"
},
"school": {
"type": "string"
}
}
}
},
"experience": {
"type": "array",
"items": {
"type": "object",
"required": [
"title",
"company"
],
"properties": {
"end": {
"type": "string"
},
"start": {
"type": "string"
},
"title": {
"type": "string"
},
"company": {
"type": "string"
}
}
}
},
"certifications": {
"type": "array",
"items": {
"type": "string"
}
},
"years_of_experience": {
"type": "number"
}
}
},
"strict": true
}
}
Communauté
Pas encore de commentaire. Partagez votre retour, il aidera les suivants.