Loading...
    • Разработка
    • Администрирование
    • Модели и цены
    • Client SDKs
    • API Reference
    Search...
    ⌘K
    Первые шаги
    Введение в ClaudeБыстрый старт
    Разработка с Claude
    Обзор функцийИспользование Messages APIClaude API skillОбработка причин остановки
    Возможности модели
    Extended thinkingAdaptive thinkingУсилиеБюджеты задач (бета)Быстрый режим (бета: исследовательский просмотр)Структурированные выходные данныеЦитированияПотоковая передача сообщенийПакетная обработкаРезультаты поискаПотоковая передача отказовПоддержка многоязычностиEmbeddings
    Инструменты
    ОбзорКак работает использование инструментовИнструмент веб-поискаИнструмент веб-выборкиИнструмент выполнения кодаИнструмент советникаИнструмент памятиИнструмент BashИнструмент управления компьютеромИнструмент текстового редактора
    Инфраструктура инструментов
    Справочник инструментовПоиск инструментовПрограммный вызов инструментовПотоковая передача инструментов с детализацией
    Управление контекстом
    Окна контекстаСжатиеРедактирование контекстаКэширование подсказокПодсчет токенов
    Работа с файлами
    Files APIПоддержка PDFИзображения и зрение
    Skills
    ОбзорБыстрый стартЛучшие практикиSkills для предприятияSkills в API
    MCP
    Удаленные MCP серверыMCP коннектор
    Инженерия подсказок
    ОбзорЛучшие практики подсказокИнструменты подсказок Console
    Тестирование и оценка
    Определение успеха и создание оценокИспользование инструмента оценки в ConsoleСнижение задержки
    Укрепление защиты
    Снижение галлюцинацийПовышение согласованности выходных данныхСмягчение взломовСнижение утечки подсказок
    Ресурсы
    Глоссарий
    Примечания к выпуску
    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
    Возможности модели

    Цитирование

    Claude может предоставлять подробные цитирования при ответах на вопросы о документах, помогая отслеживать и проверять источники информации в ответах.

    Was this page helpful?

    • Как работает цитирование
    • Цитируемое и некитируемое содержимое
    • Индексы цитирования
    • Стоимость токенов
    • Совместимость функций
    • Типы документов
    • Выбор типа документа
    • Документы простого текста
    • PDF документы
    • Документы пользовательского содержимого
    • Структура ответа
    • Поддержка потоковой передачи

    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 способен предоставлять подробные цитирования при ответах на вопросы о документах, помогая вам отслеживать и проверять источники информации в ответах.

    Все активные модели поддерживают цитирование, за исключением Haiku 3.

    Поделитесь своими отзывами и предложениями о функции цитирования, используя эту форму.

    Вот пример использования цитирования с Messages API:

    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)

    Сравнение с подходами на основе подсказок

    По сравнению с решениями для цитирования на основе подсказок, функция цитирования имеет следующие преимущества:

    • Экономия затрат: Если ваш подход на основе подсказок просит Claude выводить прямые цитаты, вы можете увидеть экономию затрат благодаря тому, что cited_text не учитывается в ваших выходных токенах.
    • Лучшая надежность цитирования: Поскольку цитирования анализируются в соответствующие форматы ответов, упомянутые выше, и cited_text извлекается, цитирования гарантированно содержат действительные указатели на предоставленные документы.
    • Улучшенное качество цитирования: При оценке функция цитирования оказалась значительно более вероятной для цитирования наиболее релевантных цитат из документов по сравнению с чисто подходами на основе подсказок.

    Как работает цитирование

    Интегрируйте цитирование с Claude в следующие шаги:

    Автоматическое разбиение в сравнении с пользовательским содержимым

    По умолчанию документы простого текста и PDF автоматически разбиваются на предложения. Если вам нужен больший контроль над детализацией цитирования (например, для маркированных списков или стенограмм), используйте вместо этого документы пользовательского содержимого. Дополнительные сведения см. в разделе Типы документов.

    Например, если вы хотите, чтобы Claude мог цитировать конкретные предложения из ваших фрагментов RAG, вы должны поместить каждый фрагмент RAG в документ простого текста. В противном случае, если вы не хотите, чтобы выполнялось дальнейшее разбиение, или если вы хотите настроить любое дополнительное разбиение, вы можете поместить фрагменты RAG в документ(ы) пользовательского содержимого.

    Цитируемое и некитируемое содержимое

    • Текст, найденный в содержимом source документа, может быть процитирован.
    • title и context - это необязательные поля, которые будут переданы модели, но не будут использоваться для цитируемого содержимого.
    • title ограничен по длине, поэтому вы можете найти поле context полезным для хранения любых метаданных документа в виде текста или строкового json.

    Индексы цитирования

    • Индексы документов индексируются с 0 из списка всех блоков содержимого документа в запросе (охватывающих все сообщения).
    • Индексы символов индексируются с 0 с исключительными конечными индексами.
    • Номера страниц индексируются с 1 с исключительными конечными номерами страниц.
    • Индексы блока содержимого индексируются с 0 с исключительными конечными индексами из списка content, предоставленного в документе пользовательского содержимого.

    Стоимость токенов

    • Включение цитирований приводит к небольшому увеличению входных токенов из-за добавлений системной подсказки и разбиения документов.
    • Однако функция цитирования очень эффективна с выходными токенами. Под капотом модель выводит цитирования в стандартизированном формате, которые затем анализируются в цитируемый текст и индексы местоположения документа. Поле cited_text предоставляется для удобства и не учитывается в выходных токенах.
    • Когда передается обратно в последующих ходах разговора, cited_text также не учитывается в входных токенах.

    Совместимость функций

    Цитирования работают в сочетании с другими функциями API, включая кэширование подсказок, подсчет токенов и пакетную обработку.

    Цитирования и структурированные выходы несовместимы

    Цитирования не могут использоваться вместе со Структурированными выходами. Если вы включите цитирования для любого предоставленного пользователем документа (блоки Document или RequestSearchResultBlock) и также включите параметр output_config.format (или устаревший параметр output_format), API вернет ошибку 400.

    Это потому, что цитирования требуют чередования блоков цитирования с текстовым выводом, что несовместимо со строгими ограничениями схемы JSON структурированных выходов.

    Использование кэширования подсказок с цитированиями

    Цитирования и кэширование подсказок можно использовать вместе эффективно.

    Блоки цитирования, созданные в ответах, не могут быть кэшированы напрямую, но исходные документы, на которые они ссылаются, могут быть кэшированы. Для оптимизации производительности примените cache_control к вашим блокам содержимого документа верхнего уровня.

    В этом примере:

    • Содержимое документа кэшируется с использованием cache_control на блоке документа
    • Цитирования включены в документе
    • Claude может генерировать ответы с цитированиями, получая преимущества от кэшированного содержимого документа
    • Последующие запросы, использующие тот же документ, будут получать преимущества от кэшированного содержимого

    Типы документов

    Выбор типа документа

    Три типа документов поддерживаются для цитирований. Документы могут быть предоставлены непосредственно в сообщении (base64, текст или URL) или загружены через Files API и указаны по file_id:

    ТипЛучше всего дляРазбиениеФормат цитирования
    Простой текстПростые текстовые документы, прозаПредложениеИндексы символов (с индексацией 0)
    PDFPDF файлы с текстовым содержимымПредложениеНомера страниц (с индексацией 1)
    Пользовательское содержимоеСписки, стенограммы, специальное форматирование, более детальные цитированияБез дополнительного разбиенияИндексы блоков (с индексацией 0)

    Файлы .csv, .xlsx, .docx, .md и .txt не поддерживаются как блоки документов. Преобразуйте их в простой текст и включите непосредственно в содержимое сообщения. См. Работа с другими форматами файлов.

    Документы простого текста

    Документы простого текста автоматически разбиваются на предложения. Вы можете предоставить их встроенными или по ссылке с их file_id:

    PDF документы

    PDF документы могут быть предоставлены как данные в кодировке base64 или по file_id. Текст PDF извлекается и разбивается на предложения. Поскольку цитирования изображений еще не поддерживаются, PDF файлы, которые являются сканами документов и не содержат извлекаемого текста, не будут цитируемыми.

    Документы пользовательского содержимого

    Документы пользовательского содержимого дают вам контроль над детализацией цитирования. Дополнительное разбиение не выполняется, и фрагменты предоставляются модели в соответствии с предоставленными блоками содержимого.

    {
        "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},
    }


    Структура ответа

    Когда цитирования включены, ответы включают несколько текстовых блоков с цитированиями:

    {
        "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,
                    }
                ],
            },
        ]
    }

    Поддержка потоковой передачи

    Для потоковых ответов включен тип citations_delta, который содержит одно цитирование, которое будет добавлено в список citations на текущем блоке содержимого text.

    1. 1

      Предоставьте документ(ы) и включите цитирование

      • Включите документы в любом из поддерживаемых форматов: PDF, простой текст или пользовательское содержимое документы
      • Установите citations.enabled=true для каждого из ваших документов. В настоящее время цитирование должно быть включено для всех или ни одного из документов в запросе.
      • Обратите внимание, что в настоящее время поддерживаются только текстовые цитирования, и цитирования изображений еще невозможны.
    2. 2

      Документы обрабатываются

      • Содержимое документов "разбивается на части" для определения минимальной детализации возможных цитирований. Например, разбиение по предложениям позволит Claude цитировать одно предложение или объединять несколько последовательных предложений для цитирования абзаца (или более длинного текста)!
        • Для PDF: Текст извлекается, как описано в PDF Support, и содержимое разбивается на предложения. Цитирование изображений из PDF в настоящее время не поддерживается.
        • Для документов простого текста: Содержимое разбивается на предложения, которые можно цитировать.
        • Для документов пользовательского содержимого: Ваши предоставленные блоки содержимого используются как есть, и дальнейшее разбиение не выполняется.
    3. 3

      Claude предоставляет цитируемый ответ

      • Ответы теперь могут включать несколько текстовых блоков, где каждый текстовый блок может содержать утверждение, которое делает Claude, и список цитирований, поддерживающих это утверждение.
      • Цитирования ссылаются на конкретные местоположения в исходных документах. Формат этих цитирований зависит от типа цитируемого документа.
        • Для PDF: Цитирования включают диапазон номеров страниц (с индексацией 1).
        • Для документов простого текста: Цитирования включают диапазон индексов символов (с индексацией 0).
        • Для документов пользовательского содержимого: Цитирования включают диапазон индексов блока содержимого (с индексацией 0), соответствующий исходному предоставленному списку содержимого.
      • Индексы документов предоставляются для указания источника ссылки и индексируются с 0 в соответствии со списком всех документов в вашем исходном запросе.
    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)