New_gpu_space / README.md
hiitsesh's picture
README: link blog.md as Hub long-form writeup (replace TODO).
f6ee013
|
Raw
History Blame Contribute Delete
8.02 kB
metadata
title: ReleaseOps Arena
emoji: 🚦
colorFrom: blue
colorTo: green
sdk: docker
pinned: false

ReleaseOps Arena

Live Space: you are on hiitsesh/New_gpu_space. Figures are loaded from the public RL repo via raw.githubusercontent.com (this Space’s Git remote rejects plain PNG commits; use Xet if you want images inside the Space repo). Ensure images/*.png exist on the RL main branch.


Konichiwa

Hey, this is Eshwanth. We know that companies are constantly shipping code to hit quarterly goals and honor commitments. That pushes teams toward AI agents for CI/CD, triage, security scans, and more—each is domain-specific, customizable, and powerful. The failure modes are familiar: hallucination, hardcoded fixes to “pass” tests, and changes that are hard to audit. Developers still need a strong check on what those agents did.

That is where ReleaseOps comes in: instead of an exhaustive, brittle rulebook, we try to learn the org’s policy—what governs systems and workflows—so we are not maintaining a huge static manual that breaks in prod. With RL I’ve shown that a smaller model can be steered to respect this environment, compared to a much larger model tuned for generic “agentic coding,” where the combinatorial mess of multi-agent interaction still blows up even with long instructions.

In this project we provide tools and agents that implement that workflow end-to-end.

Full technical + narrative build log: open blog.md in this repository (or browse Filesblog.md). It mirrors what we ship on GitHub RL and is the “long README” for agents and judges; this page stays the Space card with plots and links.


Judge-facing links

What URL
This Hugging Face Space (submitted env) huggingface.co/spaces/hiitsesh/New_gpu_space
GitHub (full repo: notebook, extra demos) github.com/eshwanthkartitr/RL
Same notebook on this Hub (view / download IPYNB) ReleaseOps_final_walkthrough.ipynb on the Space
Re-run training / eval (Colab) Open ReleaseOps_final_walkthrough.ipynb in Colab
Short pitch (YouTube Shorts) YouTube: ReleaseOps / project pitch
Build log / long-form writeup (blog) blog.md in this Space (same file on GitHub RL) — design → GRPO → REST → 1.7B run + inference metrics.
What judges look for Organizer doc

Submission checklist (organizer “NOTE 1”)

# Requirement Where
1 OpenEnv (latest). openenv-core in requirements.txt, spec in openenv.yaml, env: releaseops_arena/tool_env.py. On PyPI: openenv-core.
2 TRL + training training/train_grpo.py. Colab walkthrough: on GitHub.
3 Training evidence Plots below; PNGs live in RL images/ on GitHub (linked here, not stored in the Space git tree).
4 Writeup or under-2 min video (URL only) This README; YouTube link in the table above.
5 This Space You are here — submit this Space URL.
6 README Problem, env, results, links — this file.

NOTE 2: One submission per team; team lead submits; deadline: 26 April, 5 PM IST (confirm on official call). No commits after the deadline for judging.


How the environment works

Episode and reward (example run).

Episode and reward

ReleaseOps Arena is a stateful, tool-using OpenEnv-style environment: a supervisor LLM gets JSON observations (release phase, proposals, CI refs, safety rules, budgets) and can call a fixed toolset (inspect_pr_diff, inspect_ci_run, ask_worker, approve / block / hold_release, …). Rewards come from releaseops_arena/rewards.py and the same loop drives GRPO in training/train_grpo.py. This Space runs the FastAPI app: use /docs, /reset, /step on the public *.hf.space URL (see below).


Training evidence and results

The supervisor was trained with Group Relative Policy Optimization (GRPO) (100-step run referenced in the narrative below).

GRPO training (reward and tool usage)

  • Adaptation and policy learning: The reward trace shows an initial exploration dip around step 15, then a climb toward a stable reward (~3.09). The model learns the environment’s hard rules.
  • Tool reliability: The lower panel shows the agent using the OpenEnv tool schema; tool_failure_freq stays near zero—no spurious tool syntax.

Additional run traces (in this repo):

Training proof (metrics)

Training proof (logs)


Getting started

You can use this Space over HTTPS (no Docker on your side) or run a local container from the Space image. Pick one.

1. OpenEnv

pip install openenv-core

2. Call this Space (recommended for judges)
Use the *.hf.space base URL (not the huggingface.co/spaces/... page only):

from releaseops_arena.client import ReleaseOpsEnvClient
from releaseops_arena.models import ReleaseOpsAction

BASE = "https://hiitsesh-new-gpu-space.hf.space"
client = ReleaseOpsEnvClient(BASE)
obs = client.reset()
print(obs.model_dump() if hasattr(obs, "model_dump") else obs.dict())
# next: client.step(ReleaseOpsAction(...))

Interactive API: append /docs to BASE (e.g. https://hiitsesh-new-gpu-space.hf.space/docs).

3. Local Docker (optional)
Map port 7860 (see Dockerfile). Image name: use Space → Settings → Docker for the exact registry.hf.space/... string.

docker run -d -p 7860:7860 -e PORT=7860 registry.hf.space/<user>/<space>:latest

Then BASE = "http://127.0.0.1:7860".


UI flow diagram (static HTML)


Design note

Deeper design and API notes: ref.md in this repository.