Testez vos connaissances : accéder à l'API
Sur cette page
Ce quiz clôt la première section. Il porte sur ce qu’il faut savoir pour appeler Claude correctement aujourd’hui : le trajet d’une requête, la clé, les paramètres, la lecture des réponses, la conversation, le prompt système, le streaming et les données structurées, y compris ce qui a changé depuis la version du cours officiel. Répondez de tête avant d’ouvrir chaque réponse.
À vous de jouer
1. Pourquoi une application web ne doit-elle jamais appeler l'API Claude directement depuis le navigateur ?
Parce que la requête exige la clé d’API secrète : placée dans le code côté client, elle est lisible par n’importe qui et peut être utilisée à vos frais. Le navigateur appelle votre serveur, qui détient la clé et appelle l’API.
2. Quels sont les trois paramètres obligatoires de `messages.create`, et que signifie `max_tokens` ?
model, max_tokens et messages. max_tokens est un plafond de sécurité, pas une cible : Claude écrit ce qu’il juge utile et s’arrête s’il atteint la limite. Sur les modèles actuels, la réflexion compte dans ce plafond.
3. Pourquoi lire les blocs de type `text` plutôt que `message.content[0].text` ?
Parce que content est une liste de blocs et que les modèles actuels réfléchissent avant de répondre : le premier bloc peut être un bloc thinking, sans attribut text. Le raccourci du cours officiel fonctionne avec Haiku 4.5 sans réflexion, pas avec Sonnet 5.5.
4. Comment Claude se souvient-il des messages précédents d'une conversation ?
Il ne s’en souvient pas : l’API est sans état. Votre code garde la liste des messages, y ajoute la réponse de Claude et la question suivante, et renvoie toute la liste à chaque requête.
5. Où se place le prompt système, et que change-t-il ?
Dans le paramètre system, à côté de messages ; il fixe un rôle, un ton et des règles pour toute la conversation. Sur les modèles récents, des messages system peuvent s’ajouter en cours de conversation, jamais en premier message.
6. Que se passe-t-il si vous envoyez `temperature=0` avec le SDK Python actuel ?
Le SDK 1.x et suivants n’acceptent plus ce paramètre, et la version d’API 2026-10-21 refuse temperature, top_p et top_k sur tous les modèles. On les retire ; la constance s’obtient par la consigne et les sorties structurées, la variété en la demandant.
7. Quel est l'intérêt du streaming, et quels deltas faut-il afficher ?
Il fait arriver le début de la réponse tout de suite au lieu d’attendre la fin. Avec stream=True, on n’affiche que les text_delta ; client.messages.stream() et text_stream font ce tri, et get_final_message() rend le message complet.
8. Comment obtenir du JSON garanti, et pourquoi pas par préremplissage ?
Avec les sorties structurées : un schéma dans output_config.format, ou un modèle Pydantic avec messages.parse(). Le préremplissage d’un message assistant partiel renvoie une erreur 400 depuis Claude 4.6, et il ne garantissait de toute façon pas la validité du JSON.
Pour la suite
Si une réponse vous a résisté, revenez à la leçon correspondante avant de continuer : la section suivante, consacrée à l’évaluation de prompts, réutilise la fonction chat et les données structurées.
Sources officielles : Building with the Claude API (Claude Academy, section « Accessing Claude with the API ») · Create a Message, Streaming messages et Structured outputs (documentation Claude)
Points clés à retenir
- La clé reste sur le serveur ;
model,max_tokensetmessagessont obligatoires. - On lit les réponses par type de bloc ; on vérifie
stop_reason. - La conversation, c’est votre code qui la tient ; le prompt système la cadre.
temperatureet le préremplissage appartiennent au passé de l’API ; streaming et sorties structurées sont les outils d’aujourd’hui.