Как в LangGraph сохранить в state большую информацию, полученную по API, использовать её внутри tool, но не передавать лишние данные в контекст LLM? Например, LLM видит только ID и имена специалистов, а tool получает их расписание и дополнительные данные.

Храните полные данные в отдельном поле state или внешнем хранилище, а в messages передавайте только разрешённое краткое представление. Tool получает служебные данные через runtime, не через аргументы LLM.

Короткий ответ

Что ответить на собеседовании

Храните полные данные в отдельном поле state или внешнем хранилище, а в messages передавайте только разрешённое краткое представление. Tool получает служебные данные через runtime, не через аргументы LLM.

Подробный разбор

Ответ с пояснениями

Храните полные данные в отдельном поле state или внешнем хранилище, а в messages передавайте только разрешённое краткое представление. Tool получает служебные данные через runtime, не через аргументы LLM.

В актуальной Python-обвязке ToolRuntime позволяет инструменту читать state и скрывается от схемы аргументов модели. Проверяйте право на выбранный ID и формируйте компактный ToolMessage. Большие расписания лучше хранить по ссылке, учитывая размер checkpoints; не включайте весь state в prompt или tracing автоматически.

Источник: github.com.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее