29 lines
757 B
Python
29 lines
757 B
Python
|
|
"""Memory embedding scheduling boundary."""
|
||
|
|
|
||
|
|
from __future__ import annotations
|
||
|
|
|
||
|
|
from dataclasses import dataclass
|
||
|
|
|
||
|
|
|
||
|
|
@dataclass(frozen=True)
|
||
|
|
class MemoryEmbeddingRequest:
|
||
|
|
user_id: str
|
||
|
|
source_id: str
|
||
|
|
memoir_correlation_id: str | None = None
|
||
|
|
|
||
|
|
|
||
|
|
class MemoryEmbeddingScheduler:
|
||
|
|
"""Adapter around the Celery embedding task name and queue policy."""
|
||
|
|
|
||
|
|
def schedule(self, request: MemoryEmbeddingRequest) -> str | None:
|
||
|
|
from app.tasks.memory_enrichment_tasks import schedule_memory_embedding
|
||
|
|
|
||
|
|
return schedule_memory_embedding(
|
||
|
|
request.user_id,
|
||
|
|
request.source_id,
|
||
|
|
memoir_correlation_id=request.memoir_correlation_id,
|
||
|
|
)
|
||
|
|
|
||
|
|
|
||
|
|
__all__ = ["MemoryEmbeddingRequest", "MemoryEmbeddingScheduler"]
|