自动任务按推理、量化因子、微调轮流生成并派发。
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -24,7 +24,7 @@ from app.clock import utcnow
|
||||
from app.config import settings
|
||||
from app.errors import AppError
|
||||
from app.models import ComputeNode, ComputeTask, NodeStatus, PushStatus, TaskStatus
|
||||
from app.services.alpha_queue import ingest_alpha_factors
|
||||
from app.services.alpha_queue import AUTO_CYCLE, ingest_alpha_factors
|
||||
from app.services.common import get_node_by_sn
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
@@ -126,13 +126,13 @@ def dispatch_random_tasks(session: Session, now: datetime | None = None) -> list
|
||||
"""向当前在线、授权仍有效、且没有未完成任务的节点随机下发一轮任务。"""
|
||||
moment = now or utcnow()
|
||||
expire_overdue_tasks(session, moment)
|
||||
# 未绑定的挖掘切片不算占用节点。已派发的挖掘任务单独排队,不挡住模拟任务。
|
||||
# 未绑定的自动切片不算占用节点。推理、因子和微调单独排队,不挡住模拟任务。
|
||||
pending_node_ids = set(
|
||||
session.scalars(
|
||||
select(ComputeTask.node_id).where(
|
||||
ComputeTask.node_id.is_not(None),
|
||||
ComputeTask.status.in_(_BUSY),
|
||||
ComputeTask.task_type != "alpha_mining",
|
||||
ComputeTask.task_type.notin_(AUTO_CYCLE),
|
||||
)
|
||||
).all()
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user