Saltar al contenido principal

mem_session_start

Firma

mem.mem_session_start(user_id: str) -> SessionStartResponse

Inicia una nueva sesión o reusa una existente no expirada para user_id. En cualquier caso devolvés el session_id activo, los summaries de las sesiones recientes y las memorias previas más relevantes (rankeadas con ContextScore).

nota

Reuso de sesión: si el user ya tiene una sesión activa dentro de la ventana session_timeout_hours, esta llamada la devuelve (is_new=False). El last_activity_at de la sesión reusada se toca, así el timeout se reinicia desde este handshake.

Parámetros

ParámetroTipoRequeridoDescripción
user_idstrIdentificador del user cuya sesión se inicia o reusa. Estable a través de sesiones.

Returns

SessionStartResponse (modelo Pydantic frozen):

  • session_id (str) — identificador de la sesión activa.
    • is_new (bool) — True si se abrió una sesión fresca, False si se reusó una existente.
    • sessions_context (list[SessionSummaryCompact]) — hasta 5 summaries de sesiones pasadas recientes.
    • memories (list[ObservationCompact]) — hasta 10 observaciones recientes por sesión, rankeadas con ContextScore.
aviso

El score que viene en memories[] se computa con ContextScore y no es comparable con el score de los resultados de mem_search (que usa SearchScore). Fórmulas distintas, escalas distintas — ver Conceptos: Scoring.

Ejemplos

response = mem.mem_session_start(user_id="alice")

print(response.session_id) # ej. "9f3c..."
print(response.is_new) # True
print(len(response.memories)) # 0 en una base limpia

Ver también