АИ модель 2026 года не использует текущую дату?
Сложность: для начинающих
Содержание:
1. О ситуации с текущей датой и не только.
2. Дата в веб-чатах Gemini, Chat-GPT.... и т.п.
3. Дата при работе с локальной моделью
4. Дата у агентов
1. О ситуации с текущей датой и не только.
Первое, что хочется упомянуть о датах в контексте LLM, что их две:
a. Дата на которой обучалась модель. Это дата обычно сильно отстает от текущей. Говорит нам о том, какой набор данных был на это время.
Сама модель не может сходить в интернет или на локальной машине посмотреть дату.
б. Текущая дата. Для этого LLM модель должна использовать "обвязки" которые ходят в интернет/на локальную машину или сервер
Теперь подробнее...
2. Дата в веб-чатах Gemini, Chat-GPT.... и т.п.
Каждый день пользуюсь Gemini и вполне штатная ситуация, когда я запрашиваю цену на что-либо. Мне "иногда" выдается старая цена.
Как веб-чаты решают вопрос с текущей датой?
1. Встроенный системный промпт от разработчика, который мы не видим. Пример: Deepseek. Спросите в чате, как он определяет дату.
2. Системный промпт от пользователя.
Как его задать:
Gemini. Слева внизу шестеренка "Настройки и справка" -> "Personal Intelligence" -> "Мои инструкции для Gemini" -> "+ Добавить"
Для других чатов аналогично, через настройки.
После отправки сообщения в чат, модель обращается к системному промпту и пытается в его выполнить с помощью своих инструментов получения даты. Еще раз, эти инструменты не встроены в саму модель! Сама модель stateless. То есть получила данные, обработала и отдала.
Почему системный промпт не сработал и мы получили старую дату? Это тема для отдельной статьи, но если кратко причиной может быть переполнение контекстного окна, когда системный промпт выместился из контекста. Второе - конфликт инструкций, которые дали модели.
3. Дата при работе с локальной моделью
Локальный сервер для модели: LM Studio
Модель: google/gemma-4-26b-a4b
Дата выхода модели - апрель 2026 года
Data Cutoff (дата когда инженеры перестали передавать в модель новые данные) для этой модели - январь 2025 года
Загружаем эту модель в LM Studio и пишем запрос в чат:
Вопрос: Какая сейчас дата?
Ответ: Сегодня 24 мая 2024 года.
Ожидаемый результат: любая дата до хх/01/2025
Почему "май"? Скорее всего данные в обучении модели на этот месяц имели больший вес.
Решение. Так как любая модель - stateless. Значит сами делаем "обвязку". В данном случае используем официальный инструмент от Google, чтобы модель умела зайти в интернет.
Я для себя выбрал --headless режим. То есть без запуска интерфейса браузера.
В LM Studio.
а. Выбираем меню чата (Ctrl+1).
б. В правой панели раздел "Integrations". Нажимаем кнопку "Install" - > "Edit mcp.json".
в. Вставляем код для chrome-devtools-mcp. Сохраняем и инициализируем плагин.
г. На этой же панели переключаемся на вкладку "Configuration" и делаем предустановку (указываем ее название сами) с системным промптом: "Используй chrome-devtools-mcp когда я тебя спрашиваю про текущую дату. "
Пишем запрос в чат про текущую дату. См. скрин ниже.
4. Дата у агентов
Тут аналогично, как для веб чатов.
а. Разработчик зашивает, недоступный вам системным промпт.
б. Вы указываете системный промпт. Глобальный в папке проекта .claude, например. Или в системном промпте для вашего конкретного проекта.
В марте 2026 года были слиты якобы исходники Claude Code. Мы до конца не знаем. В том числе системные промпты. Давайте же посмотрим, как там определяется текущая дата:
От автора: многие моменты убраны из за авторских прав. Можете код поискать в интернете.
1. Первый файл. Основной метод getLocalISODate(). Берется системное локальное время и возвращается в формате "YYYY-MM-DD"
2. Второй файл. Системный промпт. В него идет инъекция метода из п.1. Все это попадает потом в контекст пользователя.
3. Третий файл. Обработка смены даты в полночь. Проверяется на каждом шаге работы с датой.
Спасибо за прочтение!