diff --git a/docs/content/cli.mdx b/docs/content/cli.mdx index b79acf2..abefd6d 100644 --- a/docs/content/cli.mdx +++ b/docs/content/cli.mdx @@ -262,6 +262,33 @@ After checkout, configure: - `HEDGEHOG_FSSCORE_PYTHON` to an isolated FSScore environment - `HEDGEHOG_FSSCORE_MODEL_PATH` (or `HEDGEHOG_FSSCORE_REPO_PATH`) +## `hedgehog setup gasa` + +Bootstraps the optional GASA scorer checkout and isolated worker environment, +then prints a ready-to-copy `HEDGEHOG_GASA_COMMAND` template for synthesis +configuration. + +```bash +uv run hedgehog setup gasa +``` + +Options: + +| Option | Short | Type | Default | Description | +|--------|-------|------|---------|-------------| +| `--yes` | `-y` | `FLAG` | `False` | Auto-accept checkout and dependency installs. | +| `--python` | | `TEXT` | `None` | Python interpreter for the worker venv. Defaults to `python3.10`, then falls back to `python3.11`. | + +Examples: + +```bash +# Bootstrap the worker and print the command template +uv run hedgehog setup gasa --yes + +# Force worker setup to use a specific interpreter +uv run hedgehog setup gasa --python python3.11 --yes +``` + ## `hedgehog setup nonpher-check` Validates optional Nonpher runtime for the synthesis `nonpher` scorer. diff --git a/docs/content/configuration/reference.mdx b/docs/content/configuration/reference.mdx index da886a3..31910a8 100644 --- a/docs/content/configuration/reference.mdx +++ b/docs/content/configuration/reference.mdx @@ -785,6 +785,7 @@ Optional external scorers are configured outside the base dependency set: - `HEDGEHOG_FSSCORE_MODEL_PATH` sets an explicit checkpoint path. Alternatively, set `HEDGEHOG_FSSCORE_REPO_PATH` and HEDGEHOG resolves the default checkpoint under `models/`. - `HEDGEHOG_FSSCORE_COMMAND` can provide a custom command template using `{input}`, `{output}`, `{smiles_col}`, `{model_path}`, `{batch_size}`, and `{n_jobs}` placeholders. - `HEDGEHOG_GASA_COMMAND` can provide a custom batch command template using `{input}`, `{output}`, `{smiles_col}`, `{model_path}`, `{batch_size}`, and `{n_jobs}` placeholders. +- `uv run hedgehog setup gasa --yes` bootstraps the optional worker checkout and prints a command template you can export as `HEDGEHOG_GASA_COMMAND`. - `HEDGEHOG_GASA_EXECUTABLE` points to a local executable; `HEDGEHOG_GASA_API_URL` points to a local loopback API endpoint. With `HEDGEHOG_AUTO_INSTALL=1`, missing backend can be auto-populated through `ensure_gasa_worker` + `hedgehog.workers.gasa_worker`. If backend setup still fails, scores default to `NaN` with a warning. --- diff --git a/docs/content/pipeline/synthesis.mdx b/docs/content/pipeline/synthesis.mdx index 4eda109..967426d 100644 --- a/docs/content/pipeline/synthesis.mdx +++ b/docs/content/pipeline/synthesis.mdx @@ -81,6 +81,7 @@ uv run hedgehog setup nonpher-check --python /mnt/ligandpro/shared_storage/data/ - **How it works**: GASA supports three local adapters: `gasa.command` / `HEDGEHOG_GASA_COMMAND`, `gasa.executable` / `HEDGEHOG_GASA_EXECUTABLE`, and `gasa.api_url` / `HEDGEHOG_GASA_API_URL` (loopback URLs only). - **Auto-install behavior**: with `--auto-install` / `HEDGEHOG_AUTO_INSTALL=1`, if no backend is configured, HEDGEHOG bootstraps an isolated `uv` runtime in `$HEDGEHOG_OPTIONAL_ENV_ROOT/gasa` (or `.venv-gasa-worker`) and injects a local `hedgehog.workers.gasa_worker` command automatically. - **Missing backend behavior**: if auto-setup is unavailable and no backend is configured, HEDGEHOG logs a clear warning and returns `NaN` for `gasa_score`. +- **Setup helper**: run `uv run hedgehog setup gasa --yes` to create the worker environment and print a ready-to-copy `HEDGEHOG_GASA_COMMAND` template. - **Portability requirement**: set `HEDGEHOG_OPTIONAL_ENV_ROOT` to a writable host-local path (for example `~/work/hedgehog_optional_envs`), while keeping run outputs in shared storage. ## AiZynthFinder Retrosynthesis