Loading...
    • Crea
    • Admin
    • Modelli e prezzi
    • SDK client
    • Riferimento API
    Search...
    ⌘K
    Primi passi
    Introduzione a ClaudeGuida rapida
    Creare con Claude
    Panoramica delle funzioniUtilizzo dell'API MessagesCompetenza Claude APIGestione dei motivi di arresto
    Capacità del modello
    Extended thinkingAdaptive thinkingEffortBudget attività (beta)Modalità veloce (beta: anteprima ricerca)Output strutturatiCitazioniStreaming MessagesElaborazione batchRisultati di ricercaStreaming rifiutiSupporto multilingueEmbeddings
    Strumenti
    PanoramicaCome funziona l'uso degli strumentiStrumento di ricerca webStrumento di recupero webStrumento di esecuzione codiceStrumento AdvisorStrumento MemoryStrumento BashStrumento Computer useStrumento editor di testo
    Infrastruttura degli strumenti
    Riferimento strumentiRicerca strumentiChiamata programmatica degli strumentiStreaming granulare degli strumenti
    Gestione del contesto
    Finestre di contestoCompattazioneModifica del contestoPrompt cachingConteggio token
    Utilizzo dei file
    API FilesSupporto PDFImmagini e visione
    Competenze
    PanoramicaGuida rapidaBest practiceCompetenze per l'aziendaCompetenze nell'API
    MCP
    Server MCP remotiConnettore MCP
    Prompt engineering
    PanoramicaBest practice per il promptStrumenti di prompt in Console
    Test e valutazione
    Definire il successo e creare valutazioniUtilizzo dello strumento di valutazione in ConsoleRiduzione della latenza
    Rafforzare le protezioni
    Ridurre le allucinazioniAumentare la coerenza dell'outputMitigare i jailbreakRidurre la perdita di prompt
    Risorse
    Glossario
    Note sulla versione
    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
    Capacità del modello

    Citazioni

    Claude è in grado di fornire citazioni dettagliate quando risponde a domande su documenti, aiutandoti a tracciare e verificare le fonti di informazioni nelle risposte.

    This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.

    Claude è in grado di fornire citazioni dettagliate quando risponde a domande su documenti, aiutandoti a tracciare e verificare le fonti di informazioni nelle risposte.

    Tutti i modelli attivi supportano le citazioni, con l'eccezione di Haiku 3.

    Condividi il tuo feedback e i tuoi suggerimenti sulla funzione di citazioni utilizzando questo modulo.

    Ecco un esempio di come utilizzare le citazioni con l'API Messages:

    client = anthropic.Anthropic()
    
    response = client.messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "document",
                        "source": {
                            "type": "text",
                            "media_type": "text/plain",
                            "data": "The grass is green. The sky is blue.",
                        },
                        "title": "My Document",
                        "context": "This is a trustworthy document.",
                        "citations": {"enabled": True},
                    },
                    {"type": "text", "text": "What color is the grass and sky?"},
                ],
            }
        ],
    )
    print(response)

    Confronto con approcci basati su prompt

    In confronto con le soluzioni di citazioni basate su prompt, la funzione di citazioni ha i seguenti vantaggi:

    • Risparmio di costi: Se il tuo approccio basato su prompt chiede a Claude di generare citazioni dirette, potresti vedere risparmi di costi dovuti al fatto che cited_text non conta verso i tuoi token di output.
    • Migliore affidabilità delle citazioni: Poiché le citazioni vengono analizzate nei rispettivi formati di risposta menzionati sopra e cited_text viene estratto, le citazioni sono garantite per contenere puntatori validi ai documenti forniti.
    • Qualità migliorata delle citazioni: Nelle valutazioni, la funzione di citazioni è stata ritenuta significativamente più probabile che citi le citazioni più rilevanti dai documenti rispetto agli approcci puramente basati su prompt.

    Come funzionano le citazioni

    Integra le citazioni con Claude in questi passaggi:

    Suddivisione automatica rispetto a contenuto personalizzato

    Per impostazione predefinita, i documenti di testo semplice e PDF vengono suddivisi automaticamente in frasi. Se hai bisogno di più controllo sulla granularità delle citazioni (ad esempio, per punti elenco o trascritti), utilizza invece documenti di contenuto personalizzato. Vedi Tipi di documento per ulteriori dettagli.

    Ad esempio, se desideri che Claude sia in grado di citare frasi specifiche dai tuoi blocchi RAG, dovresti inserire ogni blocco RAG in un documento di testo semplice. Altrimenti, se non desideri alcuna ulteriore suddivisione o se desideri personalizzare qualsiasi suddivisione aggiuntiva, puoi inserire i blocchi RAG in documenti di contenuto personalizzato.

    Contenuto citabile e non citabile

    • Il testo trovato all'interno del contenuto source di un documento può essere citato.
    • title e context sono campi facoltativi che verranno passati al modello ma non utilizzati verso il contenuto citato.
    • title è limitato in lunghezza, quindi potresti trovare il campo context utile per archiviare qualsiasi metadato del documento come testo o json stringificato.

    Indici di citazione

    • Gli indici dei documenti sono indicizzati da 0 dall'elenco di tutti i blocchi di contenuto del documento nella richiesta (estesi su tutti i messaggi).
    • Gli indici di caratteri sono indicizzati da 0 con indici di fine esclusivi.
    • I numeri di pagina sono indicizzati da 1 con numeri di pagina di fine esclusivi.
    • Gli indici di blocchi di contenuto sono indicizzati da 0 con indici di fine esclusivi dall'elenco content fornito nel documento di contenuto personalizzato.

    Costi dei token

    • L'abilitazione delle citazioni comporta un leggero aumento dei token di input dovuto alle aggiunte del prompt di sistema e alla suddivisione dei documenti.
    • Tuttavia, la funzione di citazioni è molto efficiente con i token di output. Dietro le quinte, il modello sta generando citazioni in un formato standardizzato che vengono quindi analizzate in testo citato e indici di posizione del documento. Il campo cited_text viene fornito per comodità e non conta verso i token di output.
    • Quando passato di nuovo nei turni di conversazione successivi, cited_text non viene conteggiato nemmeno verso i token di input.

    Compatibilità delle funzioni

    Le citazioni funzionano insieme ad altre funzioni dell'API incluse prompt caching, token counting e batch processing.

    Le citazioni e gli output strutturati sono incompatibili

    Le citazioni non possono essere utilizzate insieme agli output strutturati. Se abiliti le citazioni su qualsiasi documento fornito dall'utente (blocchi Document o RequestSearchResultBlock) e includi anche il parametro output_config.format (o il parametro deprecato output_format), l'API restituirà un errore 400.

    Questo perché le citazioni richiedono l'intercalazione di blocchi di citazione con output di testo, il che è incompatibile con i vincoli rigorosi dello schema JSON degli output strutturati.

    Utilizzo del Prompt Caching con le citazioni

    Le citazioni e il prompt caching possono essere utilizzati insieme in modo efficace.

    I blocchi di citazione generati nelle risposte non possono essere memorizzati nella cache direttamente, ma i documenti di origine a cui fanno riferimento possono essere memorizzati nella cache. Per ottimizzare le prestazioni, applica cache_control ai tuoi blocchi di contenuto del documento di livello superiore.

    In questo esempio:

    • Il contenuto del documento viene memorizzato nella cache utilizzando cache_control sul blocco del documento
    • Le citazioni sono abilitate sul documento
    • Claude può generare risposte con citazioni mentre beneficia del contenuto del documento memorizzato nella cache
    • Le richieste successive che utilizzano lo stesso documento beneficeranno del contenuto memorizzato nella cache

    Tipi di documento

    Scelta di un tipo di documento

    Tre tipi di documento sono supportati per le citazioni. I documenti possono essere forniti direttamente nel messaggio (base64, testo o URL) o caricati tramite l'API Files e referenziati da file_id:

    TipoMigliore perSuddivisioneFormato di citazione
    Testo sempliceDocumenti di testo semplice, prosaFraseIndici di caratteri (indicizzati da 0)
    PDFFile PDF con contenuto di testoFraseNumeri di pagina (indicizzati da 1)
    Contenuto personalizzatoElenchi, trascritti, formattazione speciale, citazioni più granulariNessuna suddivisione aggiuntivaIndici di blocchi (indicizzati da 0)

    I file .csv, .xlsx, .docx, .md e .txt non sono supportati come blocchi di documento. Convertili in testo semplice e includili direttamente nel contenuto del messaggio. Vedi Lavorare con altri formati di file.

    Documenti di testo semplice

    I documenti di testo semplice vengono suddivisi automaticamente in frasi. Puoi fornirli inline o per riferimento con il loro file_id:

    Documenti PDF

    I documenti PDF possono essere forniti come dati codificati in base64 o per file_id. Il testo PDF viene estratto e suddiviso in frasi. Poiché le citazioni di immagini non sono ancora supportate, i PDF che sono scansioni di documenti e non contengono testo estraibile non saranno citabili.

    Documenti di contenuto personalizzato

    I documenti di contenuto personalizzato ti danno il controllo sulla granularità delle citazioni. Non viene eseguita alcuna suddivisione aggiuntiva e i blocchi vengono forniti al modello secondo i blocchi di contenuto forniti.

    {
        "type": "document",
        "source": {
            "type": "content",
            "content": [
                {"type": "text", "text": "First chunk"},
                {"type": "text", "text": "Second chunk"},
            ],
        },
        "title": "Document Title",  # optional
        "context": "Context about the document that will not be cited from",  # optional
        "citations": {"enabled": True},
    }


    Struttura della risposta

    Quando le citazioni sono abilitate, le risposte includono più blocchi di testo con citazioni:

    {
        "content": [
            {"type": "text", "text": "According to the document, "},
            {
                "type": "text",
                "text": "the grass is green",
                "citations": [
                    {
                        "type": "char_location",
                        "cited_text": "The grass is green.",
                        "document_index": 0,
                        "document_title": "Example Document",
                        "start_char_index": 0,
                        "end_char_index": 20,
                    }
                ],
            },
            {"type": "text", "text": " and "},
            {
                "type": "text",
                "text": "the sky is blue",
                "citations": [
                    {
                        "type": "char_location",
                        "cited_text": "The sky is blue.",
                        "document_index": 0,
                        "document_title": "Example Document",
                        "start_char_index": 20,
                        "end_char_index": 36,
                    }
                ],
            },
            {
                "type": "text",
                "text": ". Information from page 5 states that ",
            },
            {
                "type": "text",
                "text": "water is essential",
                "citations": [
                    {
                        "type": "page_location",
                        "cited_text": "Water is essential for life.",
                        "document_index": 1,
                        "document_title": "PDF Document",
                        "start_page_number": 5,
                        "end_page_number": 6,
                    }
                ],
            },
            {
                "type": "text",
                "text": ". The custom document mentions ",
            },
            {
                "type": "text",
                "text": "important findings",
                "citations": [
                    {
                        "type": "content_block_location",
                        "cited_text": "These are important findings.",
                        "document_index": 2,
                        "document_title": "Custom Content Document",
                        "start_block_index": 0,
                        "end_block_index": 1,
                    }
                ],
            },
        ]
    }

    Supporto dello streaming

    Per le risposte in streaming, è incluso un tipo citations_delta che contiene una singola citazione da aggiungere all'elenco citations sul blocco di contenuto text corrente.

    Was this page helpful?

    • Come funzionano le citazioni
    • Contenuto citabile e non citabile
    • Indici di citazione
    • Costi dei token
    • Compatibilità delle funzioni
    • Tipi di documento
    • Scelta di un tipo di documento
    • Documenti di testo semplice
    • Documenti PDF
    • Documenti di contenuto personalizzato
    • Struttura della risposta
    • Supporto dello streaming
    1. 1

      Fornisci documento(i) e abilita le citazioni

      • Includi documenti in uno qualsiasi dei formati supportati: documenti PDF, testo semplice o contenuto personalizzato
      • Imposta citations.enabled=true su ciascuno dei tuoi documenti. Attualmente, le citazioni devono essere abilitate su tutti o nessuno dei documenti all'interno di una richiesta.
      • Nota che attualmente sono supportate solo le citazioni di testo e le citazioni di immagini non sono ancora possibili.
    2. 2

      I documenti vengono elaborati

      • I contenuti dei documenti vengono "suddivisi in blocchi" al fine di definire la granularità minima delle possibili citazioni. Ad esempio, la suddivisione per frasi consentirebbe a Claude di citare una singola frase o concatenare più frasi consecutive per citare un paragrafo (o più lungo)!
        • Per i PDF: Il testo viene estratto come descritto in Supporto PDF e il contenuto viene suddiviso in frasi. La citazione di immagini dai PDF non è attualmente supportata.
        • Per i documenti di testo semplice: Il contenuto viene suddiviso in frasi che possono essere citate.
        • Per i documenti di contenuto personalizzato: I blocchi di contenuto forniti vengono utilizzati così come sono e non viene eseguita alcuna ulteriore suddivisione.
    3. 3

      Claude fornisce una risposta citata

      • Le risposte possono ora includere più blocchi di testo in cui ogni blocco di testo può contenere un'affermazione che Claude sta facendo e un elenco di citazioni che supportano l'affermazione.
      • Le citazioni fanno riferimento a posizioni specifiche nei documenti di origine. Il formato di queste citazioni dipende dal tipo di documento da cui viene citato.
        • Per i PDF: Le citazioni includono l'intervallo di numeri di pagina (indicizzato da 1).
        • Per i documenti di testo semplice: Le citazioni includono l'intervallo di indici di caratteri (indicizzato da 0).
        • Per i documenti di contenuto personalizzato: Le citazioni includono l'intervallo di indici di blocchi di contenuto (indicizzato da 0) corrispondente all'elenco di contenuti originale fornito.
      • Gli indici dei documenti vengono forniti per indicare la fonte di riferimento e sono indicizzati da 0 secondo l'elenco di tutti i documenti nella tua richiesta originale.
    client = anthropic.Anthropic()
    
    # Long document content (e.g., technical documentation)
    long_document = (
        "This is a very long document with thousands of words..." + " ... " * 1000
    )  # Minimum cacheable length
    
    response = client.messages.create(
        model="claude-opus-4-7",
        max_tokens=1024,
        messages=[
            {
                "role": "user",
                "content": [
                    {
                        "type": "document",
                        "source": {
                            "type": "text",
                            "media_type": "text/plain",
                            "data": long_document,
                        },
                        "citations": {"enabled": True},
                        "cache_control": {
                            "type": "ephemeral"
                        },  # Cache the document content
                    },
                    {
                        "type": "text",
                        "text": "What does this document say about API features?",
                    },
                ],
            }
        ],
    )
    print(response)