Перейти к содержанию

Данные сессии#

GPT-бот расширяет базовые данные сессии информацией, специфичной для разговора:

interface GPTSessionData {
    /** История разговора */
    messages: ChatCompletionMessageParam[];

    /** Временная метка последней активности */
    lastActivity: number;

    /** Пользовательские данные состояния */
    userData?: Record<string, any>;

    /** Контекст для текущего разговора */
    context?: {
        /** Теги или метаданные для разговора */
        tags?: string[];

        /** Пользовательские переменные контекста */
        variables?: Record<string, any>;
    };
}

Вы можете получить доступ и изменить эти данные в вашем промежуточном ПО:

bot.addMessageMiddleware(async (message, content, messages, sessionData) => {
    // Установка переменных контекста
    if (!sessionData.context) {
        sessionData.context = {variables: {}};
    }

    sessionData.context.variables.lastInteraction = new Date().toISOString();

    return {messageContent: content, messages};
});