mirror of
https://github.com/xai-org/x-algorithm.git
synced 2026-06-20 19:56:03 +08:00
26 lines
944 B
Python
26 lines
944 B
Python
import logging
|
|
|
|
from grox.tasks.task import Task, TaskWithPost, TaskResultCategory
|
|
from grox.tasks.task_load_post_with_not_found_retry import TaskLoadPostWithNotFoundRetry
|
|
from monitor.metrics import Metrics
|
|
from grox.schedules.types import TaskContext, TaskPayload
|
|
from grox.data_loaders.data_types import Post
|
|
from grox.summarizer.post_embedding_summarizer import PostEmbeddingSummarizer
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
class TaskPostEmbeddingSummarizer(TaskWithPost):
|
|
summarizer = PostEmbeddingSummarizer(prompt_file="")
|
|
|
|
@classmethod
|
|
async def exec(cls, ctx: TaskContext) -> TaskResultCategory:
|
|
return await Task.exec.__wrapped__(cls, ctx)
|
|
|
|
@classmethod
|
|
async def _exec_with_post(cls, ctx: TaskContext, post: Post) -> None:
|
|
res = await cls.summarizer.summarize(post)
|
|
assert res is not None
|
|
post.summary = res
|
|
Metrics.counter("task.post_embedding_summarizer.count").add(1)
|