DynamicProfile: одна сессия, много агентов 🤖
🎩 Примитив для агентских приложений. DynamicProfile позволяет одной непрерывной LanguageModelSession менять модель, инструменты и инструкции по ходу разговора — body профиля переразрешается перед каждым запросом, история остаётся. Фазы задачи разные — возможности разные, сессия одна: на брейншторме профиль с температурой повыше, на бронировании — инструмент BookingDesk и жёсткий .toolCallingMode.
⚠️ Ловушка в historyTransform: перепись истории инвалидирует KV-кэш и добавляет задержку на каждый запрос. Инструмент Foundation Models в Xcode подсвечивает такие инвалидации — смотрите туда, если сессия «залипает». Если персона одна и не меняется — обычный init проще. Изолированные побочные задачи выносите в отдельную сессию, а не переодевайте текущую.