Диалог из нескольких сообщений

Урок 6 из 100 курса «Claude в Google Vertex AI»: официальный курс Anthropic Academy (Антропик) на русском языке. Урок входит в платный доступ; первые уроки курса бесплатно.

Кадр из видеоурока

О чём урок

При работе с большими языковыми моделями (LLM), такими как Claude от Anthropic, через API или SDK, крайне важно понимать один фундаментальный принцип: Claude не хранит историю ваших предыдущих запросов. Каждый запрос, который вы отправляете, является полностью независимым и обрабатывается без какой-либо памяти о предыдущих взаимодействиях. Это означает, что если вы хотите вести многоходовой диалог, в котором Claude помнит контекст из более ранних сообщений, вам необходимо самостоятельно управлять состоянием беседы. Представьте, что вы задаете Claude вопрос: "Что такое квантовые вычисления?" и получаете подробный ответ. Затем вы решаете продолжить беседу, задав уточняющий вопрос: "Напиши еще одно предложение". Без контекста Claude не будет знать, о чем вы просите. Он может написать предложение о чем угодно, совершенно не связанное с квантовыми вычислениями, потому что у него нет памяти о предыдущем обсуждении. Для Claude это два совершенно отдельных запроса, и второй запрос не содержит никакой информации о первом. Чтобы поддерживать контекст беседы и позволить Claude "помнить" предыдущие реплики, вам необходимо выполнить два ключевых действия: Вручную поддерживать список всех сообщений в вашем коде или приложении. Отправлять полную историю сообщений с каждым новым запросом к Claude. Вот как выглядит рабочий процесс: Вы отправляете свое первоначальное сообщение пользователя (user message) Claude. Вы получаете ответ от Claude и добавляете его в свой список сообщений как сообщение помощника (assistant message). Вы добавляете свой следующий вопрос или реплику как еще одно сообщение пользователя. Вы отправляете всю историю беседы (включая все предыдущие сообщения пользователя и ответы Claude) обратно Claude. Таким образом, Claude каждый раз получает полный "сценарий" диалога до текущего момента и может правильно интерпретировать ваш новый запрос, опираясь на весь предыдущий контекст. Чтобы упростить управление историей сообщений, можно создать несколько вспомогательных функций. Эти функции помогут правильно форматировать сообщения и отправлять их Claude.

План урока

  1. Многоходовые диалоги с Claude: Управление контекстом
  2. Проблема "беспамятных" диалогов
  3. Как работают многоходовые диалоги
  4. Создание вспомогательных функций для управления диалогом
  5. Собираем все воедино: Пример многоходового диалога
  6. Ключевые выводы

Урок входит в полный доступ. Полный текст и видео открываются после оплаты. Первые уроки каждого курса бесплатны.

Полезные гиды