Данные сессии#
GPT-бот расширяет базовые данные сессии информацией, специфичной для разговора:
@dataclass
class GPTSessionData:
"""Данные сессии для GPT-разговоров"""
messages: List[Dict[str, Any]] = field(default_factory=list)
last_activity: int = field(default_factory=lambda: int(time.time()))
user_data: Dict[str, Any] = field(default_factory=dict)
context: Dict[str, Any] = field(default_factory=dict)
Вы можете получить доступ и изменить эти данные в вашем промежуточном ПО:
def message_middleware(notification, content, messages, session_data):
# Установка переменных контекста
if "variables" not in session_data.context:
session_data.context["variables"] = {}
session_data.context["variables"]["last_interaction"] = int(time.time())
return {"message_content": content, "messages": messages}