{ "cells": [ { "cell_type": "markdown", "id": "7daf1ffe", "metadata": {}, "source": [ "# Local stub inference walkthrough\n", "\n", "Run `badc infer run --stub-runner` against a small manifest to validate scheduler wiring." ] }, { "cell_type": "markdown", "id": "6260eb0b", "metadata": {}, "source": [ "## Paths + manifest generation" ] }, { "cell_type": "code", "execution_count": null, "id": "c681cfcd", "metadata": {}, "outputs": [], "source": [ "import subprocess\n", "from pathlib import Path\n", "\n", "DATASET_ROOT = Path(\"..\") / \"data\" / \"datalad\" / \"bogus\"\n", "AUDIO_FILE = DATASET_ROOT / \"audio\" / \"GNWT-290_20230331_235938.wav\"\n", "MANIFEST = DATASET_ROOT / \"manifests\" / \"GNWT-290_stub.csv\"\n", "MANIFEST.parent.mkdir(exist_ok=True)\n", "subprocess.run(\n", " [\n", " \"badc\",\n", " \"chunk\",\n", " \"manifest\",\n", " str(AUDIO_FILE),\n", " \"--chunk-duration\",\n", " \"60\",\n", " \"--output\",\n", " str(MANIFEST),\n", " ],\n", " check=True,\n", ")\n", "print(\"Manifest ready:\", MANIFEST)" ] }, { "cell_type": "markdown", "id": "d8bd6f4b", "metadata": {}, "source": [ "## Stub inference\n", "Set `USE_HAWKEARS = True` once GPUs+HawkEars assets are available." ] }, { "cell_type": "code", "execution_count": null, "id": "db9fdb3d", "metadata": {}, "outputs": [], "source": [ "USE_HAWKEARS = False\n", "cmd = [\n", " \"badc\",\n", " \"infer\",\n", " \"run\",\n", " str(MANIFEST),\n", " \"--output-dir\",\n", " str(DATASET_ROOT / \"artifacts\" / \"infer\"),\n", "]\n", "if USE_HAWKEARS:\n", " cmd.append(\"--use-hawkears\")\n", "else:\n", " cmd.append(\"--stub-runner\")\n", "subprocess.run(cmd, check=True)" ] }, { "cell_type": "markdown", "id": "b73cc018", "metadata": {}, "source": [ "## Aggregate detections" ] }, { "cell_type": "code", "execution_count": null, "id": "4910b36e", "metadata": {}, "outputs": [], "source": [ "AGG_OUT = DATASET_ROOT / \"artifacts\" / \"aggregate\" / \"summary.csv\"\n", "AGG_OUT.parent.mkdir(parents=True, exist_ok=True)\n", "subprocess.run(\n", " [\n", " \"badc\",\n", " \"infer\",\n", " \"aggregate\",\n", " str(DATASET_ROOT / \"artifacts\" / \"infer\"),\n", " \"--output\",\n", " str(AGG_OUT),\n", " ],\n", " check=True,\n", ")\n", "print(\"Aggregate CSV:\", AGG_OUT)" ] } ], "metadata": {}, "nbformat": 4, "nbformat_minor": 5 }