setup models

This commit is contained in:
Marcos Lohmann
2026-10-07 13:43:09 -03:00
parent aeee6c7de1
commit 84ea9a5307
75 changed files with 5093 additions and 58 deletions

37
infra/ds/gpu_probe.py Normal file
View File

@@ -0,0 +1,37 @@
"""Encontra um shape de GPU com capacidade: roda o job em cada shape, em ordem, até um não falhar
por falta de capacidade. Imprime o shape usado e o estado final.
Uso: PYTHONPATH=infra/oci:infra/ds .venv/bin/python infra/ds/gpu_probe.py <candidato> [shape ...]
"""
import sys
import jobs
DEFAULT_SHAPES = ["VM.GPU.A10.1", "VM.GPU.A10.2", "VM.GPU.A100.B40G.1", "VM.GPU.A100.80G.1", "VM.GPU3.1"]
def main():
args = sys.argv[1:]
region = None
if args and args[0].startswith("--region="):
region = args.pop(0).split("=", 1)[1]
candidate, shapes = args[0], args[1:] or DEFAULT_SHAPES
for shape in shapes:
try:
run_id = jobs.run_job(f"sanity-{candidate}-gpu", "infra/ds/run_job.sh", shape, None, None, region is None,
{"DMB_CANDIDATE": candidate, "DMB_MODE": "sanity", "DMB_DEVICE": "auto"},
storage_gb=60, region=region)
except jobs.oci.exceptions.ServiceError as error:
print(f"indisponível: {shape} ({error.code})", flush=True)
continue
r = jobs.wait(run_id, poll=20)
if "no capacity" in (r.lifecycle_details or "").lower():
print(f"sem capacidade: {shape}", flush=True)
continue
print(f"SHAPE {shape} -> {r.lifecycle_state} {run_id}", flush=True)
return
print("nenhum shape com capacidade", flush=True)
if __name__ == "__main__":
main()