Claude Opus 5.5 è disponibile su SeedRouter

DeepSeek Search API: prezzi ed esempio Python da Search a Fetch

Segui un esempio Python per DeepSeek Search API e scopri differenze con Fetch, prezzi per chiamata, limiti della gratuità e gestione delle richieste.

Leggi in Markdown

Documentazione verificata il 20 ottobre 2026. L’esempio seguente è stato verificato in locale con dati di test predisposti; non è stato eseguito sugli endpoint reali a pagamento.

DeepSeek Search API permette a un’applicazione di accedere ai risultati di ricerca sul web. L’API Fetch associata recupera una singola pagina in formato Markdown. DeepSeek ha aperto entrambe le interfacce il 17 ottobre 2026, con fatturazione separata per chiamata. Ciascuna costa $0.75 ogni 1,000 richieste fatturabili secondo il listino pubblicato in USD. Usano una chiave API DeepSeek e l’indirizzo ufficiale api.deepseek.com. Fonti: annuncio del rilascio, prezzi.

Questa guida mostra una ricerca seguita dal recupero facoltativo di una pagina. Gli esempi usano il servizio di DeepSeek; non descrivono un endpoint Search o Fetch offerto da SeedRouter.

Qual è la differenza tra DeepSeek Search API e Fetch API?

Search trova le pagine candidate. Fetch legge una pagina che hai selezionato.

OperazioneEndpoint ufficialeOutput utile
SearchPOST https://api.deepseek.com/v1/tools/searchUn array results con URL delle pagine e campi descrittivi.
FetchPOST https://api.deepseek.com/v1/tools/fetchIl titolo di una pagina e il suo contenuto in Markdown.

Entrambe accettano JSON e usano l’autenticazione bearer. Una richiesta di ricerca autonoma contiene query; una richiesta di recupero contiene url. Sono richieste distinte, non un’impostazione che aggiunge automaticamente l’accesso al web a ogni completamento della chat. La guida ufficiale Search & Fetch documenta entrambe le interfacce.

Search accetta anche need_content. Quando è true, i risultati della ricerca possono includere il contenuto delle pagine. Controlla il contenuto restituito prima di inviare un’altra richiesta: se contiene già ciò che ti serve, una chiamata Fetch separata potrebbe non essere necessaria.

Prima di eseguire l’esempio Python

Ti servono Python 3, accesso HTTPS in uscita e una chiave API DeepSeek con le abilitazioni necessarie sull’account. Inserisci la chiave in una variabile d’ambiente nel terminale da cui esegui lo script:

export DEEPSEEK_API_KEY="your-deepseek-api-key"

L’esempio usa la libreria standard di Python, quindi non richiede l’installazione di pacchetti. Invia una richiesta Search. Se trova un risultato, stampa il titolo e l’URL del primo risultato, poi recupera quella pagina. L’esecuzione può comportare addebiti; la chiave non viene mai stampata.

Esempio Python: cerca, seleziona un risultato e recuperane il contenuto

Salva il codice seguente come deepseek_search.py. Prima di eseguirlo, modifica QUERY in base alle informazioni che ti servono.

import json
import os
import urllib.error
import urllib.request

BASE_URL = "https://api.deepseek.com"
QUERY = "Python documentation pathlib"


def call(path, payload):
    request = urllib.request.Request(
        BASE_URL + path,
        data=json.dumps(payload).encode("utf-8"),
        headers={
            "Authorization": "Bearer " + os.environ["DEEPSEEK_API_KEY"],
            "Content-Type": "application/json",
        },
        method="POST",
    )
    try:
        with urllib.request.urlopen(request, timeout=30) as response:
            return json.load(response)
    except urllib.error.HTTPError as error:
        raise RuntimeError(f"DeepSeek returned HTTP {error.code}") from None


def main():
    search = call(
        "/v1/tools/search",
        {"query": QUERY, "count": 5, "need_content": False},
    )
    results = search.get("results", [])
    if not results:
        print("No search results; no Fetch request was made.")
        return

    selected = results[0]
    print(selected.get("title", "Untitled result"))
    print(selected["url"])

    page = call("/v1/tools/fetch", {"url": selected["url"]})
    content = page.get("content", "")
    if not content:
        print("The selected page returned no content.")
        return
    print(page.get("title", ""))
    print(content)


if __name__ == "__main__":
    main()

Eseguilo con:

python3 deepseek_search.py

È un esempio essenziale, quindi seleziona il primo risultato. In un’applicazione reale, seleziona la pagina pertinente alla domanda, esaminane il dominio e il contesto di pubblicazione e conserva l’URL insieme al testo estratto. Un risultato ai primi posti della ricerca deve comunque essere rilevante per la risposta che stai producendo.

La struttura delle richieste segue la documentazione di riferimento di Search e quella di Fetch di DeepSeek. I controlli locali della sintassi e con dati di test predisposti possono verificare la costruzione delle richieste e i rami di esecuzione del programma. Non possono accertare l’accesso reale dell’account, la velocità delle risposte o la qualità del recupero delle informazioni.

Prezzi di DeepSeek Search API: cosa viene addebitato?

Il prezzo pubblicato in USD è di $0.75 ogni 1,000 richieste riuscite e fatturabili per Search, e lo stesso per Fetch. Una ricerca senza risultati non viene addebitata; Fetch viene addebitato quando il contenuto è recuperato correttamente. Il numero di risultati richiesti con count non modifica il prezzo di una ricerca. Consulta il listino attuale per le condizioni di fatturazione.

A titolo di esempio, 1,000 ricerche fatturabili seguite da 1,000 recuperi fatturabili costerebbero $1.50 in spese di recupero. È un calcolo basato sulle tariffe dichiarate, non un addebito rilevato né una promessa su ciò che restituirà una query specifica. I token del modello usati in seguito per riassumere quelle pagine costituiscono un costo separato.

Il periodo gratuito temporaneo ha un ambito più ristretto. DeepSeek dichiara che le chiamate Search/Fetch dei suoi utenti API effettuate tramite gli strumenti lato server di DeepSeek Harness, Claude Code e Codex non vengono temporaneamente fatturate. La fatturazione di questo utilizzo inizia il 31 ottobre 2026 alle 16:00 UTC, cioè il 1 novembre alle 00:00 a Pechino. L’annuncio non rende universalmente gratuite le richieste Python autonome di questa guida. Annuncio ufficiale.

Parametri e casi di errore da considerare

La lunghezza documentata della query di ricerca è di 1–128 caratteri Unicode. count ha un valore predefinito di 10 e accetta valori nell’intervallo 1–50. L’esempio Python richiede intenzionalmente cinque risultati e affida il recupero del contenuto della pagina a una successiva richiesta Fetch. Consulta la documentazione di riferimento di Search prima di aggiungere altri campi alla richiesta.

Un array di risultati vuoto indica una ricerca riuscita ma senza corrispondenze. L’esempio si ferma a quel punto. Gli errori HTTP vengono gestiti separatamente e un timeout interrompe l’esecuzione anziché creare automaticamente un’altra richiesta. Per un’applicazione più ampia, rendi espliciti il limite dei tentativi e la spesa aggiuntiva.

Il Markdown recuperato è materiale proveniente da una fonte esterna. Conserva l’URL della fonte, controlla se il contenuto risponde alla domanda e tratta le istruzioni incorporate nella pagina recuperata come contenuto della pagina, non come istruzioni per la tua applicazione. Se passi il contenuto a un modello linguistico, mantieni questa distinzione nel prompt e conserva le citazioni nella risposta risultante.

Domande frequenti

L’API DeepSeek può cercare sul web?

Sì. Le interfacce autonome Search e Fetch sono documentate. Chiamare un normale endpoint di chat e chiamare questi endpoint di recupero sono operazioni diverse; segui le specifiche pertinenti al flusso di lavoro che stai costruendo.

Esiste un piano gratuito per DeepSeek Search API?

L’annuncio citato descrive l’uso temporaneamente gratuito degli strumenti lato server in specifiche integrazioni con agenti di programmazione. Non stabilisce un piano gratuito generale per ogni richiesta autonoma Search o Fetch. Controlla la pagina attuale sulla fatturazione prima di eseguire un lotto di richieste.

Devo usare Fetch dopo ogni ricerca?

No. Una ricerca può fornire informazioni sufficienti, soprattutto quando restituisce contenuti utilizzabili con need_content: true. Fetch è utile quando devi recuperare separatamente la pagina selezionata.

Inizia con un solo percorso di recupero

DeepSeek Search API trova le fonti e Fetch recupera una pagina selezionata. Inizia con una query, esamina il risultato e il contenuto, poi decidi se alla tua applicazione servono altre pagine o un riepilogo generato dal modello. Per il distinto aggiornamento del modello annunciato lo stesso giorno, consulta l’aggiornamento del checkpoint del 17 ottobre: benchmark e cambiamenti.

Guide correlate