APIMaster.ai

Tutoriel Python pour l'API Claude 2026 | APIMaster.ai

Comment utiliser l'API Claude avec Python. Exemples complets utilisant le SDK Anthropic et le client compatible OpenAI — chat, streaming, vision et appel de fonctions — via APIMaster.ai.

Tutoriel Python pour l'API Claude

Ce guide couvre l'utilisation de l'API Claude en Python avec à la fois le SDK Anthropic natif et le client compatible OpenAI. Tous les exemples fonctionnent avec APIMaster.ai — remplacez simplement votre URL de base et votre clé API.

Installation

pip install anthropic          # SDK Anthropic natif
pip install openai             # Compatible OpenAI (optionnel)

Configuration de base

import anthropic

client = anthropic.Anthropic(
    api_key="VOTRE_CLE_APIMASTER",
    base_url="https://apimaster.ai",  # Pas de /v1 pour le SDK Anthropic
)

Ou avec le SDK OpenAI (plus simple si vous utilisez déjà OpenAI) :

from openai import OpenAI

client = OpenAI(
    api_key="VOTRE_CLE_APIMASTER",
    base_url="https://apimaster.ai/v1",
)

Votre premier appel à l'API Claude

import anthropic

client = anthropic.Anthropic(
    api_key="VOTRE_CLE_APIMASTER",
    base_url="https://apimaster.ai",
)

message = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[
        {"role": "user", "content": "Explique la différence entre les listes et les tuples en Python."}
    ],
)

print(message.content[0].text)

Instructions système

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=512,
    system="Tu es un ingénieur Python senior. Sois concis et utilise des exemples de code.",
    messages=[
        {"role": "user", "content": "Quelle est la manière la plus rapide d'aplatir une liste imbriquée ?"}
    ],
)
print(response.content[0].text)

Conversation multi-tours

conversation = []

def chat(user_message):
    conversation.append({"role": "user", "content": user_message})
    response = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=1024,
        messages=conversation,
    )
    assistant_message = response.content[0].text
    conversation.append({"role": "assistant", "content": assistant_message})
    return assistant_message

print(chat("Qu'est-ce qu'un décorateur en Python ?"))
print(chat("Peux-tu me montrer un exemple pratique ?"))

Réponses en streaming

Le streaming renvoie les jetons au fur et à mesure qu'ils sont générés — meilleure expérience utilisateur pour les sorties longues :

with client.messages.stream(
    model="claude-sonnet-4-6",
    max_tokens=1024,
    messages=[{"role": "user", "content": "Écris un scraper web Python utilisant requests et BeautifulSoup."}],
) as stream:
    for text in stream.text_stream:
        print(text, end="", flush=True)
print()  # nouvelle ligne à la fin

Vision : analyse d'images

Claude Sonnet et Opus prennent en charge les entrées d'image (base64 ou URL) :

import base64

with open("chart.png", "rb") as f:
    image_data = base64.standard_b64encode(f.read()).decode("utf-8")

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=512,
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image",
                    "source": {
                        "type": "base64",
                        "media_type": "image/png",
                        "data": image_data,
                    },
                },
                {"type": "text", "text": "Résume ce que montre ce graphique."},
            ],
        }
    ],
)
print(response.content[0].text)

Utilisation d'outils (appel de fonctions)

tools = [
    {
        "name": "get_weather",
        "description": "Obtenir la météo actuelle d'une ville",
        "input_schema": {
            "type": "object",
            "properties": {
                "city": {"type": "string", "description": "Nom de la ville"},
            },
            "required": ["city"],
        },
    }
]

response = client.messages.create(
    model="claude-sonnet-4-6",
    max_tokens=256,
    tools=tools,
    messages=[{"role": "user", "content": "Quel temps fait-il à Tokyo ?"}],
)

# Vérifier si Claude veut appeler un outil
if response.stop_reason == "tool_use":
    tool_call = next(b for b in response.content if b.type == "tool_use")
    print(f"Outil : {tool_call.name}, Entrée : {tool_call.input}")

Utilisation asynchrone

import asyncio
import anthropic

async def main():
    client = anthropic.AsyncAnthropic(
        api_key="VOTRE_CLE_APIMASTER",
        base_url="https://apimaster.ai",
    )
    response = await client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=256,
        messages=[{"role": "user", "content": "Bonjour !"}],
    )
    print(response.content[0].text)

asyncio.run(main())

Gestion des erreurs

import anthropic

try:
    response = client.messages.create(
        model="claude-sonnet-4-6",
        max_tokens=256,
        messages=[{"role": "user", "content": "Bonjour"}],
    )
except anthropic.AuthenticationError:
    print("Clé API invalide")
except anthropic.RateLimitError:
    print("Limite de débit — ajoutez une logique de réessai")
except anthropic.APIStatusError as e:
    print(f"Erreur API {e.status_code} : {e.message}")

Choisir le bon modèle Claude pour vos projets Python

Tâche Modèle Raison
Chatbots, questions-réponses claude-haiku-4-5 Rapide et économique
Génération de code claude-sonnet-4-6 Meilleur équilibre
Raisonnement complexe claude-opus-4-8 Précision maximale
Analyse de documents claude-sonnet-4-6 Contexte de 1M

Obtenir l'accès à l'API Claude

Inscrivez-vous sur APIMaster.ai pour obtenir un accès à l'API Claude via un point d'accès unifié, avec des prix en direct et des données de vérification d'empreinte.

Voir aussi : Tarifs de l'API Claude · Comment obtenir une clé API Claude

Questions fréquentes

Comment installer la bibliothèque Python de l'API Claude ? Exécutez pip install anthropic pour le SDK officiel, ou pip install openai pour utiliser le point d'accès compatible OpenAI d'APIMaster avec les modèles Claude.

Quel SDK Python dois-je utiliser pour l'API Claude ? Le SDK anthropic est le choix officiel et prend en charge toutes les fonctionnalités spécifiques à Claude (utilisation d'outils, vision, streaming). Le SDK openai fonctionne via la couche de compatibilité d'APIMaster — utile si vous utilisez déjà OpenAI et souhaitez changer de modèle.

Comment diffuser les réponses de l'API Claude en streaming en Python ? Passez stream=True avec la bibliothèque openai, ou utilisez client.messages.stream() avec le SDK anthropic. Voir l'exemple de streaming ci-dessus.

L'API Claude prend-elle en charge l'appel de fonctions (utilisation d'outils) ? Oui — Claude prend en charge l'utilisation d'outils à la fois dans le SDK Anthropic natif et via le point d'accès compatible OpenAI d'APIMaster en utilisant le paramètre standard tools.

Quelle est la fenêtre de contexte maximale pour Claude en Python ? Claude Sonnet 4.6 et Opus 4.8 prennent en charge 1 million de jetons chacun. Vous pouvez passer des documents très longs directement dans le tableau messages.