Lo strumento di ricerca web consente a Claude di accedere direttamente a contenuti web in tempo reale, permettendogli di rispondere alle domande con informazioni aggiornate oltre il suo limite di conoscenza. La risposta include citazioni per le fonti tratte dai risultati della ricerca.
L'ultima versione dello strumento di ricerca web (web_search_20260209) supporta filtri dinamici con Claude Mythos Preview, Claude Opus 4.7, Claude Opus 4.6 e Claude Sonnet 4.6. Claude può scrivere ed eseguire codice per filtrare i risultati della ricerca prima che raggiungano la finestra di contesto, mantenendo solo le informazioni rilevanti e scartando il resto. Questo porta a risposte più accurate riducendo il consumo di token. La versione precedente dello strumento (web_search_20250305) rimane disponibile senza filtri dinamici.
Per Claude Mythos Preview, la ricerca web è supportata su Claude API, Microsoft Foundry e Google Vertex AI. La ricerca web non è disponibile per Mythos Preview su Amazon Bedrock.
Per l'idoneità a Zero Data Retention e la soluzione alternativa allowed_callers, vedi Server tools.
Per il supporto dei modelli, vedi il Tool reference.
Quando aggiungi lo strumento di ricerca web alla tua richiesta API:
La ricerca web è un'attività che consuma molti token. Con la ricerca web di base, Claude deve inserire i risultati della ricerca nel contesto, recuperare l'HTML completo da più siti web e ragionare su tutto prima di arrivare a una risposta. Spesso, gran parte di questo contenuto è irrilevante, il che può degradare la qualità della risposta.
Con la versione dello strumento web_search_20260209, Claude può scrivere ed eseguire codice per post-elaborare i risultati delle query. Invece di ragionare su file HTML completi, Claude filtra dinamicamente i risultati della ricerca prima di caricarli nel contesto, mantenendo solo ciò che è rilevante e scartando il resto.
Il filtro dinamico è particolarmente efficace per:
Il filtro dinamico richiede che lo strumento di esecuzione del codice sia abilitato. Lo strumento di ricerca web migliorato è disponibile su Claude API e Microsoft Azure. Su Google Vertex AI, è disponibile lo strumento di ricerca web di base (senza filtri dinamici).
Per abilitare il filtro dinamico, usa la versione dello strumento web_search_20260209:
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-7",
max_tokens=4096,
messages=[
{
"role": "user",
"content": "Search for the current prices of AAPL and GOOGL, then calculate which has a better P/E ratio.",
}
],
tools=[{"type": "web_search_20260209", "name": "web_search"}],
)
print(response)L'amministratore della tua organizzazione deve abilitare la ricerca web in Claude Console.
Fornisci lo strumento di ricerca web nella tua richiesta API:
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-opus-4-7",
max_tokens=1024,
messages=[{"role": "user", "content": "What's the weather in NYC?"}],
tools=[{"type": "web_search_20250305", "name": "web_search", "max_uses": 5}],
)
print(response)Lo strumento di ricerca web supporta i seguenti parametri:
{
"type": "web_search_20250305",
"name": "web_search",
// Optional: Limit the number of searches per request
"max_uses": 5,
// Optional: Only include results from these domains
"allowed_domains": ["example.com", "trusteddomain.org"],
// Optional: Never include results from these domains
"blocked_domains": ["untrustedsource.com"],
// Optional: Localize search results
"user_location": {
"type": "approximate",
"city": "San Francisco",
"region": "California",
"country": "US",
"timezone": "America/Los_Angeles"
}
}Il parametro max_uses limita il numero di ricerche eseguite. Se Claude tenta più ricerche di quelle consentite, il web_search_tool_result è un errore con il codice di errore max_uses_exceeded.
Per il filtro di dominio con allowed_domains e blocked_domains, vedi Server tools.
Il parametro user_location ti consente di localizzare i risultati della ricerca in base alla posizione di un utente.
type: Il tipo di posizione (deve essere approximate)city: Il nome della cittàregion: La regione o lo statocountry: Il paesetimezone: L'ID del fuso orario IANA.Ecco una struttura di risposta di esempio:
{
"role": "assistant",
"content": [
// 1. Claude's decision to search
{
"type": "text",
"text": "I'll search for when Claude Shannon was born."
},
// 2. The search query used
{
"type": "server_tool_use",
"id": "srvtoolu_01WYG3ziw53XMcoyKL4XcZmE",
"name": "web_search",
"input": {
"query": "claude shannon birth date"
}
},
// 3. Search results
{
"type": "web_search_tool_result",
"tool_use_id": "srvtoolu_01WYG3ziw53XMcoyKL4XcZmE",
"content": [
{
"type": "web_search_result",
"url": "https://en.wikipedia.org/wiki/Claude_Shannon",
"title": "Claude Shannon - Wikipedia",
"encrypted_content": "EqgfCioIARgBIiQ3YTAwMjY1Mi1mZjM5LTQ1NGUtODgxNC1kNjNjNTk1ZWI3Y...",
"page_age": "April 30, 2025"
}
]
},
{
"text": "Based on the search results, ",
"type": "text"
},
// 4. Claude's response with citations
{
"text": "Claude Shannon was born on April 30, 1916, in Petoskey, Michigan",
"type": "text",
"citations": [
{
"type": "web_search_result_location",
"url": "https://en.wikipedia.org/wiki/Claude_Shannon",
"title": "Claude Shannon - Wikipedia",
"encrypted_index": "Eo8BCioIAhgBIiQyYjQ0OWJmZi1lNm..",
"cited_text": "Claude Elwood Shannon (April 30, 1916 – February 24, 2001) was an American mathematician, electrical engineer, computer scientist, cryptographer and i..."
}
]
}
],
"id": "msg_a930390d3a",
"usage": {
"input_tokens": 6039,
"output_tokens": 931,
"server_tool_use": {
"web_search_requests": 1
}
},
"stop_reason": "end_turn"
}I risultati della ricerca includono:
url: L'URL della pagina di originetitle: Il titolo della pagina di originepage_age: Quando il sito è stato aggiornato l'ultima voltaencrypted_content: Contenuto crittografato che deve essere passato indietro nelle conversazioni multi-turno per le citazioniLe citazioni sono sempre abilitate per la ricerca web, e ogni web_search_result_location include:
url: L'URL della fonte citatatitle: Il titolo della fonte citataencrypted_index: Un riferimento che deve essere passato indietro per le conversazioni multi-turno.cited_text: Fino a 150 caratteri del contenuto citatoI campi di citazione della ricerca web cited_text, title e url non contano verso l'utilizzo dei token di input o output.
Quando visualizzi gli output dell'API direttamente agli utenti finali, le citazioni devono essere incluse alla fonte originale. Se stai apportando modifiche agli output dell'API, incluso il reprocessing e/o la combinazione con il tuo materiale prima di visualizzarli agli utenti finali, visualizza le citazioni come appropriato in base alla consultazione con il tuo team legale.
Quando lo strumento di ricerca web incontra un errore (come il raggiungimento dei limiti di velocità), l'API Claude restituisce comunque una risposta 200 (successo). L'errore è rappresentato nel corpo della risposta utilizzando la seguente struttura:
{
"type": "web_search_tool_result",
"tool_use_id": "servertoolu_a93jad",
"content": {
"type": "web_search_tool_result_error",
"error_code": "max_uses_exceeded"
}
}Questi sono i possibili codici di errore:
too_many_requests: Limite di velocità superatoinvalid_input: Parametro di query di ricerca non validomax_uses_exceeded: Utilizzi massimi dello strumento di ricerca web superatiquery_too_long: La query supera la lunghezza massimaunavailable: Si è verificato un errore internopause_turnPer continuare dopo un motivo di arresto pause_turn, vedi Server tools.
Per il caching delle definizioni degli strumenti tra i turni, vedi Tool use with prompt caching.
Con lo streaming abilitato, riceverai gli eventi di ricerca come parte dello stream. Ci sarà una pausa mentre la ricerca viene eseguita:
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 search
event: content_block_start
data: {"type": "content_block_start", "index": 1, "content_block": {"type": "server_tool_use", "id": "srvtoolu_xyz789", "name": "web_search"}}
// Search query streamed
event: content_block_delta
data: {"type": "content_block_delta", "index": 1, "delta": {"type": "input_json_delta", "partial_json": "{\"query\":\"latest quantum computing breakthroughs 2025\"}"}}
// Pause while search executes
// Search results streamed
event: content_block_start
data: {"type": "content_block_start", "index": 2, "content_block": {"type": "web_search_tool_result", "tool_use_id": "srvtoolu_xyz789", "content": [{"type": "web_search_result", "title": "Quantum Computing Breakthroughs in 2025", "url": "https://example.com"}]}}
// Claude's response with citations (omitted in this example)Puoi includere lo strumento di ricerca web nell'API Messages Batches. Le chiamate dello strumento di ricerca web attraverso l'API Messages Batches hanno lo stesso prezzo di quelle nelle richieste regolari dell'API Messages.
Web search usage is charged in addition to token usage:
{
"usage": {
"input_tokens": 105,
"output_tokens": 6039,
"cache_read_input_tokens": 7123,
"cache_creation_input_tokens": 7345,
"server_tool_use": {
"web_search_requests": 1
}
}
}Web search is available on the Claude API for $10 per 1,000 searches, plus standard token costs for search-generated content. Web search results retrieved throughout a conversation are counted as input tokens, in search iterations executed during a single turn and in subsequent conversation turns.
Each web search counts as one use, regardless of the number of results returned. If an error occurs during web search, the web search will not be billed.
Meccaniche condivise per gli strumenti eseguiti da Anthropic.
Directory di tutti gli strumenti forniti da Anthropic.
Was this page helpful?