"""Task 1: classify which oumi subsystem a PR touches, from its title + body.""" import json import random import re from app.config import DATA_DIR from app.tasks.base import Sample, Task AREAS = [ "training", "inference", "data", "evaluation", "configs", "launcher", "cli", "docs", "infra", "other", ] SYSTEM_PROMPT = """\ You are a pull-request triage classifier for oumi, an open-source library for \ training, evaluating, and deploying foundation models. Given a PR's title and body, classify which subsystem of the repo it primarily \ changes. The labels: - training: training loop, trainers, tuners, callbacks, collators, distributed/performance code - inference: inference engines, serving, deployment code - data: dataset classes, tokenizers, processors, data synthesis, conversation types - evaluation: evaluation harnesses, judges, analyzers, metrics - configs: YAML recipes for models/jobs, or the config schema code (params classes) - launcher: launching/managing jobs on clouds and clusters (SkyPilot, Slurm, ...) - cli: the `oumi` command-line interface - docs: documentation, notebooks, markdown files - infra: CI/CD, GitHub workflows, dependency bumps, build tooling, repo maintenance - other: cross-cutting utilities, model architecture code, or anything not above Respond with exactly one JSON object on a single line, no other text: {"area": "