Цитирование с Claude Sonnet 3.7Claude Sonnet 3.7 может быть менее склонен к созданию цитат по сравнению с другими моделями Claude без более явных инструкций от пользователя. При использовании цитирования с Claude Sonnet 3.7 мы рекомендуем включать дополнительные инструкции в ход
user, например "Используйте цитаты для подтверждения вашего ответа.".Мы также заметили, что когда модель просят структурировать свой ответ, она вряд ли будет использовать цитаты, если явно не сказать использовать цитаты в этом формате. Например, если модель просят использовать теги <result> в своем ответе, вы должны добавить что-то вроде "Всегда используйте цитаты в своем ответе, даже внутри тегов <result>."Пожалуйста, поделитесь своими отзывами и предложениями о функции цитирования, используя эту форму.
Сравнение с подходами на основе промптовПо сравнению с решениями цитирования на основе промптов, функция цитирования имеет следующие преимущества:
- Экономия затрат: Если ваш подход на основе промптов просит Claude выводить прямые цитаты, вы можете увидеть экономию затрат из-за того, что
cited_textне засчитывается в ваши выходные токены. - Лучшая надежность цитирования: Поскольку мы разбираем цитаты в соответствующие форматы ответов, упомянутые выше, и извлекаем
cited_text, цитаты гарантированно содержат действительные указатели на предоставленные документы. - Улучшенное качество цитирования: В наших оценках мы обнаружили, что функция цитирования значительно чаще цитирует наиболее релевантные цитаты из документов по сравнению с чисто промптовыми подходами.
Как работает цитирование
Интегрируйте цитирование с Claude в следующих шагах:1
Предоставьте документ(ы) и включите цитирование
- Включите документы в любом из поддерживаемых форматов: PDF, обычный текст или документы пользовательского содержимого
- Установите
citations.enabled=trueдля каждого из ваших документов. В настоящее время цитирование должно быть включено для всех или ни одного из документов в запросе. - Обратите внимание, что в настоящее время поддерживаются только текстовые цитаты, и цитирование изображений пока невозможно.
2
Документы обрабатываются
- Содержимое документов “разбивается на части” для определения минимальной детализации возможных цитат. Например, разбивка по предложениям позволит Claude цитировать одно предложение или объединить несколько последовательных предложений для цитирования абзаца (или длиннее)!
- Для PDF: Текст извлекается, как описано в Поддержке PDF, и содержимое разбивается на предложения. Цитирование изображений из PDF в настоящее время не поддерживается.
- Для документов с обычным текстом: Содержимое разбивается на предложения, которые можно цитировать.
- Для документов с пользовательским содержимым: Ваши предоставленные блоки содержимого используются как есть, и дальнейшее разбиение не производится.
3
Claude предоставляет ответ с цитатами
- Ответы теперь могут включать несколько текстовых блоков, где каждый текстовый блок может содержать утверждение, которое делает Claude, и список цитат, поддерживающих это утверждение.
- Цитаты ссылаются на конкретные места в исходных документах. Формат этих цитат зависит от типа документа, из которого цитируется.
- Для PDF: цитаты будут включать диапазон номеров страниц (с индексацией от 1).
- Для документов с обычным текстом: Цитаты будут включать диапазон индексов символов (с индексацией от 0).
- Для документов с пользовательским содержимым: Цитаты будут включать диапазон индексов блоков содержимого (с индексацией от 0), соответствующий исходному списку содержимого.
- Индексы документов предоставляются для указания исходного источника и имеют индексацию от 0 согласно списку всех документов в вашем исходном запросе.
Автоматическое разбиение против пользовательского содержимогоПо умолчанию документы с обычным текстом и PDF автоматически разбиваются на предложения. Если вам нужен больший контроль над детализацией цитирования (например, для маркированных списков или транскриптов), используйте вместо этого документы с пользовательским содержимым. См. Типы документов для получения дополнительной информации.Например, если вы хотите, чтобы Claude мог цитировать конкретные предложения из ваших RAG-фрагментов, вы должны поместить каждый RAG-фрагмент в документ с обычным текстом. В противном случае, если вы не хотите, чтобы производилось дальнейшее разбиение, или если вы хотите настроить любое дополнительное разбиение, вы можете поместить RAG-фрагменты в документ(ы) с пользовательским содержимым.
Цитируемое против нецитируемого содержимого
- Текст, найденный в содержимом
sourceдокумента, может быть процитирован. titleиcontext- это необязательные поля, которые будут переданы модели, но не будут использоваться для цитируемого содержимого.titleограничен по длине, поэтому вы можете найти полеcontextполезным для хранения любых метаданных документа в виде текста или строкового json.
Индексы цитирования
- Индексы документов имеют индексацию от 0 из списка всех блоков содержимого документов в запросе (охватывающих все сообщения).
- Индексы символов имеют индексацию от 0 с исключающими конечными индексами.
- Номера страниц имеют индексацию от 1 с исключающими конечными номерами страниц.
- Индексы блоков содержимого имеют индексацию от 0 с исключающими конечными индексами из списка
content, предоставленного в документе с пользовательским содержимым.
Стоимость токенов
- Включение цитирования приводит к небольшому увеличению входных токенов из-за добавлений системного промпта и разбиения документов.
- Однако функция цитирования очень эффективна с выходными токенами. Под капотом модель выводит цитаты в стандартизированном формате, которые затем разбираются в цитируемый текст и индексы местоположения документа. Поле
cited_textпредоставляется для удобства и не засчитывается в выходные токены. - При передаче обратно в последующих ходах разговора
cited_textтакже не засчитывается во входные токены.
Совместимость функций
Цитирование работает в сочетании с другими функциями API, включая кэширование промптов, подсчет токенов и пакетную обработку.Использование кэширования промптов с цитированием
Цитирование и кэширование промптов могут эффективно использоваться вместе. Блоки цитирования, генерируемые в ответах, не могут быть кэшированы напрямую, но исходные документы, на которые они ссылаются, могут быть кэшированы. Для оптимизации производительности применитеcache_control к вашим блокам содержимого документов верхнего уровня.
- Содержимое документа кэшируется с использованием
cache_controlв блоке документа - Цитирование включено для документа
- Claude может генерировать ответы с цитатами, получая преимущества от кэшированного содержимого документа
- Последующие запросы, использующие тот же документ, получат преимущества от кэшированного содержимого
Типы документов
Выбор типа документа
Мы поддерживаем три типа документов для цитирования. Документы могут быть предоставлены непосредственно в сообщении (base64, текст или URL) или загружены через Files API и ссылаться поfile_id:
| Тип | Лучше всего для | Разбиение | Формат цитирования |
|---|---|---|---|
| Обычный текст | Простые текстовые документы, проза | Предложение | Индексы символов (с индексацией от 0) |
| PDF-файлы с текстовым содержимым | Предложение | Номера страниц (с индексацией от 1) | |
| Пользовательское содержимое | Списки, транскрипты, специальное форматирование, более детальные цитаты | Без дополнительного разбиения | Индексы блоков (с индексацией от 0) |
Файлы .csv, .xlsx, .docx, .md и .txt не поддерживаются как блоки документов. Конвертируйте их в обычный текст и включите непосредственно в содержимое сообщения. См. Работа с другими форматами файлов.
Документы с обычным текстом
Документы с обычным текстом автоматически разбиваются на предложения. Вы можете предоставить их встроенными или по ссылке с ихfile_id:
Пример цитирования обычного текста
Пример цитирования обычного текста
PDF-документы
PDF-документы могут быть предоставлены как данные в кодировке base64 или поfile_id. Текст PDF извлекается и разбивается на предложения. Поскольку цитирование изображений пока не поддерживается, PDF-файлы, которые являются сканами документов и не содержат извлекаемого текста, не будут цитируемыми.
Пример цитирования PDF
Пример цитирования PDF
Документы с пользовательским содержимым
Документы с пользовательским содержимым дают вам контроль над детализацией цитирования. Дополнительное разбиение не производится, и фрагменты предоставляются модели согласно предоставленным блокам содержимого.Пример цитирования
Пример цитирования
Структура ответа
Когда цитирование включено, ответы включают несколько текстовых блоков с цитатами:Поддержка потоковой передачи
Для потоковых ответов мы добавили типcitations_delta, который содержит одну цитату для добавления в список citations текущего блока содержимого text.
Пример потоковых событий
Пример потоковых событий