Перейти к содержанию

Pipeline

Компоненты для управления pipeline обработки данных.

Модули

Модуль Описание
Jobs Управление фоновыми задачами
Cost Tracking Отслеживание расходов на AI API
Checkpoint Чекпоинты для возобновления

Архитектура Pipeline

Input → [Step 1] → [Step 2] → [Step 3] → Output
           ↓           ↓           ↓
      Checkpoint  Checkpoint  Checkpoint
           ↓           ↓           ↓
         Cost       Cost        Cost
        Tracking   Tracking   Tracking

Быстрый пример

from kit.pipeline.jobs import JobManager, Job
from kit.pipeline.cost import CostTracker
from kit.pipeline.checkpoint import CheckpointManager

# Job Manager
manager = JobManager(max_workers=4)

job = await manager.submit(
    generate_video,
    args={"prompt": "Sunset over ocean"}
)
result = await manager.wait(job.id)

# Cost Tracking
tracker = CostTracker()
tracker.track("openai", model="gpt-4", tokens=1500)
tracker.track("anthropic", model="claude-3", tokens=2000)
print(f"Total cost: ${tracker.total:.4f}")

# Checkpoints
checkpoint = CheckpointManager("./checkpoints")
await checkpoint.save("task_123", {"step": 2, "data": {...}})

# После рестарта
state = await checkpoint.load("task_123")
if state:
    continue_from_step(state["step"])