cubepi.checkpointer
Checkpointerâ
class
Methods
loadâ
load(thread_id: str) -> CheckpointData | None
appendâ
append(thread_id: str, messages: list[Any]) -> None
save_extraâ
save_extra(thread_id: str, extra: dict[str, Any]) -> None
CheckpointDataâ
class
CheckpointData(self, messages: list[Any] = list(), extra: dict[str, Any] = dict())
Attributes
messages:list[Any]extra:dict[str, Any]
MemoryCheckpointerâ
class
MemoryCheckpointer(self)
Methods
loadâ
load(thread_id: str) -> CheckpointData | None
appendâ
append(thread_id: str, messages: list[Any]) -> None
save_extraâ
save_extra(thread_id: str, extra: dict[str, Any]) -> None
PostgresCheckpointerâ
class
PostgresCheckpointer(self, dsn: str, *, min_pool_size: int = 1, max_pool_size: int = 10)
Checkpointer backed by PostgreSQL.
Usage
cp = PostgresCheckpointer(dsn="postgresql://...")
async with cp:
await cp.append(thread_id, [msg1, msg2])
data = await cp.load(thread_id)
await cp.save_extra(thread_id, {"k": "v"})
Raises CubepiSchemaUninitialized / CubepiSchemaMismatch at aenter if the DB schema isn't compatible with this cubepi version.
Methods
loadâ
load(thread_id: str) -> CheckpointData | None
appendâ
append(thread_id: str, messages: list[Message]) -> None
save_extraâ
save_extra(thread_id: str, extra: dict[str, Any]) -> None
SQLiteCheckpointerâ
class
SQLiteCheckpointer(self, db_path: str)
Methods
loadâ
load(thread_id: str) -> CheckpointData | None
appendâ
append(thread_id: str, messages: list[Any]) -> None
save_extraâ
save_extra(thread_id: str, extra: dict[str, Any]) -> None