Я размышлял над концепцией, которую я бы назвал «онтология контекста», в основном потому, что мне хотелось бы иметь одно место, где я мог бы видеть, откуда берется контекст и в каких подсказках он используется.
Полезный контекст для LLM, чтобы сгенерировать ответ или предпринять действие, может включать такие вещи, как (1) высокоуровневая цель, (2) текущая задача/область фокуса, (3) обобщенная информация из соответствующих прошлых задач, (4) уроки из предыдущих попыток и т. д.
Поскольку мы ожидаем большего от наших агентов (долгосрочные задачи, более сложные проекты и т. д.), сырая память быстро становится тяжелой по токенам и шумной, что снижает качество вывода LLM. Большинство сложных AI-приложений имеют какую-то обобщенную контекстуальную информацию (я бы предположил) и несколько источников контекста.
Идея здесь заключается в том, чтобы определить онтологию для того, какой контекст вы храните*, как его структурировать и что извлекать для каждой подсказки в вашей системе.
*Под хранением я не обязательно имею в виду базу данных AI. Для меня кажется более целостным рассматривать данные, хранящиеся в любом приложении, как часть памяти AI (например, соединение API/MCP). Возможно, эта онтология также должна это уточнять.
Двигаясь на шаг дальше, вы могли бы сделать это динамической онтологией, которую AI может управлять и тестировать, а затем поместить это в среду RL, чтобы агенты могли самостоятельно улучшать управление контекстом (гипотетически).
Не уверен, следует ли включать стратегию обобщения сюда, но это имеет смысл на высоком уровне. Сложнее, поскольку большинство людей обобщают информацию при ее усвоении, поэтому вам придется повторно обобщать предыдущие усвоения каждый раз, когда вы что-то меняете (для тестирования изменений и самоулучшения) - но, думаю, эта проблема сохраняется независимо от этого.
Я не думаю, что здесь что-то особенно новое. Просто размышляю вслух, пытаясь создать какую-то внутреннюю структуру для отображения различных стратегий, которые я видел.