Loading...
    • Créer
    • Admin
    • Modèles et tarification
    • SDK clients
    • Référence API
    Search...
    ⌘K
    Premiers pas
    Introduction à ClaudeDémarrage rapide
    Créer avec Claude
    Aperçu des fonctionnalitésUtiliser l'API MessagesCompétence Claude APIGérer les raisons d'arrêt
    Capacités du modèle
    Extended thinkingAdaptive thinkingEffortBudgets de tâches (bêta)Mode rapide (bêta : aperçu de recherche)Sorties structuréesCitationsMessages en continuTraitement par lotsRésultats de rechercheRefus en continuSupport multilingueEmbeddings
    Outils
    AperçuFonctionnement de l'utilisation des outilsOutil de recherche webOutil de récupération webOutil d'exécution de codeOutil AdvisorOutil MemoryOutil BashOutil Computer useOutil Éditeur de texte
    Infrastructure des outils
    Référence des outilsRecherche d'outilsAppel programmatique des outilsStreaming granulaire des outils
    Gestion du contexte
    Fenêtres de contexteCompactionÉdition du contexteMise en cache des invitesComptage des tokens
    Travailler avec des fichiers
    API FilesSupport PDFImages et vision
    Compétences
    AperçuDémarrage rapideMeilleures pratiquesCompétences pour l'entrepriseCompétences dans l'API
    MCP
    Serveurs MCP distantsConnecteur MCP
    Ingénierie des invites
    AperçuMeilleures pratiques d'invitesOutils d'invites Console
    Tester et évaluer
    Définir le succès et créer des évaluationsUtiliser l'outil d'évaluation dans ConsoleRéduire la latence
    Renforcer les garde-fous
    Réduire les hallucinationsAugmenter la cohérence des résultatsAtténuer les jailbreaksRéduire les fuites d'invites
    Ressources
    Glossaire
    Notes de version
    Claude Platform
    Console
    Log in
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...
    Loading...

    Solutions

    • AI agents
    • Code modernization
    • Coding
    • Customer support
    • Education
    • Financial services
    • Government
    • Life sciences

    Partners

    • Amazon Bedrock
    • Google Cloud's Vertex AI

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Company

    • Anthropic
    • Careers
    • Economic Futures
    • Research
    • News
    • Responsible Scaling Policy
    • Security and compliance
    • Transparency

    Learn

    • Blog
    • Courses
    • Use cases
    • Connectors
    • Customer stories
    • Engineering at Anthropic
    • Events
    • Powered by Claude
    • Service partners
    • Startups program

    Help and security

    • Availability
    • Status
    • Support
    • Discord

    Terms and policies

    • Privacy policy
    • Responsible disclosure policy
    • Terms of service: Commercial
    • Terms of service: Consumer
    • Usage policy
    Outils

    Outil de récupération web

    Récupérez et lisez le contenu de URLs spécifiques pour augmenter le contexte de Claude avec du contenu web en direct.

    L'outil de récupération web permet à Claude de récupérer le contenu complet de pages web et de documents PDF spécifiés.

    La dernière version de l'outil de récupération web (web_fetch_20260209) prend en charge le filtrage dynamique avec Claude Mythos Preview, Claude Opus 4.7, Claude Opus 4.6 et Claude Sonnet 4.6. Claude peut écrire et exécuter du code pour filtrer le contenu récupéré avant qu'il n'atteigne la fenêtre de contexte, en conservant uniquement les informations pertinentes et en supprimant le reste. Cela réduit la consommation de jetons tout en maintenant la qualité des réponses. La version précédente de l'outil (web_fetch_20250910) reste disponible sans filtrage dynamique.

    Pour Claude Mythos Preview, la récupération web est prise en charge sur l'API Claude et Microsoft Foundry uniquement. Elle n'est pas disponible pour Mythos Preview sur Amazon Bedrock ou Google Vertex AI.

    Utilisez le formulaire de retour d'information pour fournir des commentaires sur la qualité des réponses du modèle, l'API elle-même ou la qualité de la documentation.

    Pour l'admissibilité à la rétention zéro des données et la solution de contournement allowed_callers, voir Outils serveur.

    L'activation de l'outil de récupération web dans des environnements où Claude traite des entrées non fiables aux côtés de données sensibles pose des risques d'exfiltration de données. Utilisez cet outil uniquement dans des environnements de confiance ou lors du traitement de données non sensibles.

    Pour minimiser les risques d'exfiltration, Claude n'est pas autorisé à construire dynamiquement des URLs. Claude ne peut récupérer que les URLs qui ont été explicitement fournies par l'utilisateur ou qui proviennent de résultats de recherche web ou de récupération web précédents. Cependant, il existe toujours un risque résiduel qui doit être soigneusement considéré lors de l'utilisation de cet outil.

    Si l'exfiltration de données est une préoccupation, envisagez :

    • Désactiver complètement l'outil de récupération web
    • Utiliser le paramètre max_uses pour limiter le nombre de requêtes
    • Utiliser le paramètre allowed_domains pour restreindre aux domaines connus sûrs

    Pour le support du modèle, voir la Référence des outils.

    Comment fonctionne la récupération web

    Lorsque vous ajoutez l'outil de récupération web à votre requête API :

    1. Claude décide quand récupérer le contenu en fonction de l'invite et des URLs disponibles.
    2. L'API récupère le contenu texte complet de l'URL spécifiée.
    3. Pour les PDF, l'extraction de texte automatique est effectuée.
    4. Claude analyse le contenu récupéré et fournit une réponse avec des citations optionnelles.

    L'outil de récupération web ne prend actuellement pas en charge les sites web rendus dynamiquement via JavaScript.

    Filtrage dynamique

    La récupération de pages web et de PDF complets peut rapidement consommer des jetons, en particulier lorsque seules des informations spécifiques sont nécessaires à partir de documents volumineux. Avec la version de l'outil web_fetch_20260209, Claude peut écrire et exécuter du code pour filtrer le contenu récupéré avant de le charger dans le contexte.

    Ce filtrage dynamique est particulièrement utile pour :

    • Extraire des sections spécifiques de documents longs
    • Traiter les données structurées des pages web
    • Filtrer les informations pertinentes des PDF
    • Réduire les coûts en jetons lors du travail avec de grands documents

    Le filtrage dynamique nécessite que l'outil d'exécution de code soit activé. L'outil de récupération web (avec et sans filtrage dynamique) est disponible sur l'API Claude et Microsoft Azure.

    Pour activer le filtrage dynamique, utilisez la version de l'outil web_fetch_20260209 :

    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-opus-4-7",
        max_tokens=4096,
        messages=[
            {
                "role": "user",
                "content": "Fetch the content at https://example.com/research-paper and extract the key findings.",
            }
        ],
        tools=[{"type": "web_fetch_20260209", "name": "web_fetch"}],
    )
    print(response)

    Comment utiliser la récupération web

    Fournissez l'outil de récupération web dans votre requête API :

    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": "Please analyze the content at https://example.com/article",
            }
        ],
        tools=[{"type": "web_fetch_20250910", "name": "web_fetch", "max_uses": 5}],
    )
    print(response)

    Définition de l'outil

    L'outil de récupération web prend en charge les paramètres suivants :

    JSON
    {
      "type": "web_fetch_20250910",
      "name": "web_fetch",
    
      // Optional: Limit the number of fetches per request
      "max_uses": 10,
    
      // Optional: Only fetch from these domains
      "allowed_domains": ["example.com", "docs.example.com"],
    
      // Optional: Never fetch from these domains
      "blocked_domains": ["private.example.com"],
    
      // Optional: Enable citations for fetched content
      "citations": {
        "enabled": true
      },
    
      // Optional: Maximum content length in tokens
      "max_content_tokens": 100000
    }

    Max uses

    Le paramètre max_uses limite le nombre de récupérations web effectuées. Si Claude tente plus de récupérations que autorisé, le web_fetch_tool_result est une erreur avec le code d'erreur max_uses_exceeded. Il n'y a actuellement pas de limite par défaut.

    Filtrage de domaine

    Pour le filtrage de domaine avec allowed_domains et blocked_domains, voir Outils serveur.

    Limites de contenu

    Le paramètre max_content_tokens limite la quantité de contenu incluse dans le contexte. Si le contenu récupéré dépasse cette limite, l'outil le tronque. Cela aide à contrôler l'utilisation des jetons lors de la récupération de documents volumineux.

    La limite du paramètre max_content_tokens est approximative. Le nombre réel de jetons d'entrée utilisés peut varier légèrement.

    Citations

    Contrairement à la recherche web où les citations sont toujours activées, les citations sont optionnelles pour la récupération web. Définissez "citations": {"enabled": true} pour permettre à Claude de citer des passages spécifiques des documents récupérés.

    Lors de l'affichage direct des résultats de l'API aux utilisateurs finaux, les citations doivent être incluses à la source originale. Si vous apportez des modifications aux résultats de l'API, y compris en les retraitant et/ou en les combinant avec votre propre matériel avant de les afficher aux utilisateurs finaux, affichez les citations selon les besoins en fonction de la consultation de votre équipe juridique.

    Réponse

    Voici un exemple de structure de réponse :

    Output
    {
      "role": "assistant",
      "content": [
        // 1. Claude's decision to fetch
        {
          "type": "text",
          "text": "I'll fetch the content from the article to analyze it."
        },
        // 2. The fetch request
        {
          "type": "server_tool_use",
          "id": "srvtoolu_01234567890abcdef",
          "name": "web_fetch",
          "input": {
            "url": "https://example.com/article"
          }
        },
        // 3. Fetch results
        {
          "type": "web_fetch_tool_result",
          "tool_use_id": "srvtoolu_01234567890abcdef",
          "content": {
            "type": "web_fetch_result",
            "url": "https://example.com/article",
            "content": {
              "type": "document",
              "source": {
                "type": "text",
                "media_type": "text/plain",
                "data": "Full text content of the article..."
              },
              "title": "Article Title",
              "citations": { "enabled": true }
            },
            "retrieved_at": "2025-08-25T10:30:00Z"
          }
        },
        // 4. Claude's analysis with citations (if enabled)
        {
          "text": "Based on the article, ",
          "type": "text"
        },
        {
          "text": "the main argument presented is that artificial intelligence will transform healthcare",
          "type": "text",
          "citations": [
            {
              "type": "char_location",
              "document_index": 0,
              "document_title": "Article Title",
              "start_char_index": 1234,
              "end_char_index": 1456,
              "cited_text": "Artificial intelligence is poised to revolutionize healthcare delivery..."
            }
          ]
        }
      ],
      "id": "msg_a930390d3a",
      "usage": {
        "input_tokens": 25039,
        "output_tokens": 931,
        "server_tool_use": {
          "web_fetch_requests": 1
        }
      },
      "stop_reason": "end_turn"
    }

    Résultats de récupération

    Les résultats de récupération incluent :

    • url : L'URL qui a été récupérée
    • content : Un bloc de document contenant le contenu récupéré
    • retrieved_at : Horodatage du moment où le contenu a été récupéré

    L'outil de récupération web met en cache les résultats pour améliorer les performances et réduire les requêtes redondantes. Le contenu retourné peut ne pas toujours refléter la dernière version disponible à l'URL. Le comportement du cache est géré automatiquement et peut changer au fil du temps pour optimiser les différents types de contenu et les modèles d'utilisation.

    Pour les documents PDF, le contenu est retourné sous forme de données codées en base64 :

    Output
    {
      "type": "web_fetch_tool_result",
      "tool_use_id": "srvtoolu_02",
      "content": {
        "type": "web_fetch_result",
        "url": "https://example.com/paper.pdf",
        "content": {
          "type": "document",
          "source": {
            "type": "base64",
            "media_type": "application/pdf",
            "data": "JVBERi0xLjQKJcOkw7zDtsOfCjIgMCBvYmo..."
          },
          "citations": { "enabled": true }
        },
        "retrieved_at": "2025-08-25T10:30:02Z"
      }
    }

    Erreurs

    Lorsque l'outil de récupération web rencontre une erreur, l'API Claude retourne une réponse 200 (succès) avec l'erreur représentée dans le corps de la réponse :

    Output
    {
      "type": "web_fetch_tool_result",
      "tool_use_id": "srvtoolu_a93jad",
      "content": {
        "type": "web_fetch_tool_error",
        "error_code": "url_not_accessible"
      }
    }

    Voici les codes d'erreur possibles :

    • invalid_input : Format d'URL invalide
    • url_too_long : L'URL dépasse la longueur maximale (250 caractères)
    • url_not_allowed : URL bloquée par les règles de filtrage de domaine et les restrictions du modèle
    • url_not_accessible : Échec de la récupération du contenu (erreur HTTP)
    • too_many_requests : Limite de débit dépassée
    • unsupported_content_type : Type de contenu non pris en charge (texte et PDF uniquement)
    • max_uses_exceeded : Nombre maximum d'utilisations de l'outil de récupération web dépassé
    • unavailable : Une erreur interne s'est produite

    Validation d'URL

    Pour des raisons de sécurité, l'outil de récupération web ne peut récupérer que les URLs qui ont précédemment apparues dans le contexte de la conversation. Cela inclut :

    • Les URLs dans les messages utilisateur
    • Les URLs dans les résultats d'outils côté client
    • Les URLs provenant de résultats de recherche web ou de récupération web précédents

    L'outil ne peut pas récupérer les URLs arbitraires que Claude génère ou les URLs provenant d'outils serveur basés sur des conteneurs (Exécution de code, Bash, etc.).

    Recherche et récupération combinées

    La récupération web fonctionne de manière transparente avec la recherche web pour une collecte d'informations complète :

    Python
    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-opus-4-7",
        max_tokens=4096,
        messages=[
            {
                "role": "user",
                "content": "Find recent articles about quantum computing and analyze the most relevant one in detail",
            }
        ],
        tools=[
            {"type": "web_search_20250305", "name": "web_search", "max_uses": 3},
            {
                "type": "web_fetch_20250910",
                "name": "web_fetch",
                "max_uses": 5,
                "citations": {"enabled": True},
            },
        ],
    )

    Dans ce flux de travail, Claude va :

    1. Utiliser la recherche web pour trouver des articles pertinents
    2. Sélectionner les résultats les plus prometteurs
    3. Utiliser la récupération web pour récupérer le contenu complet
    4. Fournir une analyse détaillée avec des citations

    Mise en cache des invites

    Pour la mise en cache des définitions d'outils entre les tours, voir Utilisation d'outils avec mise en cache des invites.

    Streaming

    Avec le streaming activé, les événements de récupération font partie du flux avec une pause pendant la récupération du contenu :

    Output
    event: message_start
    data: {"type": "message_start", "message": {"id": "msg_abc123", "type": "message"}}
    
    event: content_block_start
    data: {"type": "content_block_start", "index": 0, "content_block": {"type": "text", "text": ""}}
    
    // Claude's decision to fetch
    
    event: content_block_start
    data: {"type": "content_block_start", "index": 1, "content_block": {"type": "server_tool_use", "id": "srvtoolu_xyz789", "name": "web_fetch"}}
    
    // Fetch URL streamed
    event: content_block_delta
    data: {"type": "content_block_delta", "index": 1, "delta": {"type": "input_json_delta", "partial_json": "{\"url\":\"https://example.com/article\"}"}}
    
    // Pause while fetch executes
    
    // Fetch results streamed
    event: content_block_start
    data: {"type": "content_block_start", "index": 2, "content_block": {"type": "web_fetch_tool_result", "tool_use_id": "srvtoolu_xyz789", "content": {"type": "web_fetch_result", "url": "https://example.com/article", "content": {"type": "document", "source": {"type": "text", "media_type": "text/plain", "data": "Article content..."}}}}}
    
    // Claude's response continues...

    Requêtes par lot

    Vous pouvez inclure l'outil de récupération web dans l'API Messages Batches. Les appels d'outils de récupération web via l'API Messages Batches sont facturés de la même manière que ceux dans les requêtes régulières de l'API Messages.

    Utilisation et tarification

    Web fetch usage has no additional charges beyond standard token costs:

    "usage": {
      "input_tokens": 25039,
      "output_tokens": 931,
      "cache_read_input_tokens": 0,
      "cache_creation_input_tokens": 0,
      "server_tool_use": {
        "web_fetch_requests": 1
      }
    }

    The web fetch tool is available on the Claude API at no additional cost. You only pay standard token costs for the fetched content that becomes part of your conversation context.

    To protect against inadvertently fetching large content that would consume excessive tokens, use the max_content_tokens parameter to set appropriate limits based on your use case and budget considerations.

    Example token usage for typical content:

    • Average web page (10 kB): ~2,500 tokens
    • Large documentation page (100 kB): ~25,000 tokens
    • Research paper PDF (500 kB): ~125,000 tokens

    Étapes suivantes

    Outils serveur

    Mécaniques partagées pour les outils exécutés par Anthropic.

    Référence des outils

    Répertoire de tous les outils fournis par Anthropic.

    Was this page helpful?

    • Comment fonctionne la récupération web
    • Filtrage dynamique
    • Comment utiliser la récupération web
    • Définition de l'outil
    • Réponse
    • Validation d'URL
    • Recherche et récupération combinées
    • Mise en cache des invites
    • Streaming
    • Requêtes par lot
    • Utilisation et tarification
    • Étapes suivantes