Autonima
Autonima is a large language model (LLM)-guided framework for neuroimaging meta-analysis. It automates article screening against expert-defined eligibility criteria, parses heterogeneous coordinate tables into the distinct analyses that produced them, and selects individual analyses for quantitative synthesis.
Full documentation: https://neurostuff.github.io/autonima/
The workflow
A project is one YAML file: a PubMed query, article-level inclusion and exclusion criteria, retrieval sources, parsing settings, and one set of contrast-specific criteria per target.
- Search — PubMed through the Entrez API.
- Abstract screening — an LLM judges each record against the article-level criteria, returning a decision, a criterion-by-criterion assessment and its reasoning. Abstract criteria are usually more permissive, since an abstract carries incomplete information.
- Full-text retrieval — PubMed Central via pubget, publisher text-mining APIs (Elsevier, Springer Nature), and user-supplied HTML. Records with no usable text are marked unavailable rather than rejected: a retrieval failure is not an eligibility decision.
- Full-text screening — the same procedure against the complete criteria, with the full text in context.
- Coordinate parsing — heuristics identify candidate tables; an LLM reads each table with its caption and footnotes and separates it into the distinct statistical analyses it reports, keyed on contrast, direction, group, condition, session or any other explicitly labelled dimension.
- Analysis selection — every parsed analysis is evaluated against each target's criteria in the context of its article, producing an analysis × target inclusion matrix. One analysis may serve several targets.
- Meta-analysis — selected coordinates are written as a NiMADS studyset and submitted to NiMARE (MKDA, ALE or KDA; FWE or FDR correction).
Stage outputs are cached, so re-running resumes rather than repeating paid API calls.
Two ways to run it
Both drive the same pipeline and produce identical outputs.
The CLI runs one config, once, into one folder. Use it for scripted and reproducible work.
autonima run config.yaml
The web UI manages many projects over time — live progress, cancellation, cloning a project to make a variant, browsing meta-analysis artifacts, and storing API credentials. Use it while developing criteria.
autonima ui --workspace .
The CLI has no memory between invocations; the UI keeps a workspace. A project created in one can be run from the other. See the Web UI guide.
Install
git clone git@github.com:neurostuff/autonima.git
cd autonima
pip install -e .
Extras:
pip install -e .[llm] # screening and other LLM-backed workflows
pip install -e .[meta] # `autonima meta`
pip install -e .[readability] # enhanced HTML extraction
pip install -e .[ui] # `autonima ui` local web app
pip install -e .[docs] # local docs build
Quickstart
autonima create-sample-config > config.yaml # a starting config
autonima validate config.yaml # check it before spending anything
autonima run config.yaml # run the pipeline
autonima meta config/outputs # meta-analyse the NiMADS output
Omitting OUTPUT_FOLDER derives it from the config filename stem, so
projects/cue_reactivity/default.yaml writes to
projects/cue_reactivity/default/. Pass one explicitly to override:
autonima run config.yaml runs/my_review
run-search and run-abstract execute the pipeline only as far as those stages,
which is useful for checking a query or a criteria set cheaply before committing
to full-text retrieval.
Minimal config
search:
database: "pubmed"
query: "schizophrenia AND working memory AND fMRI"
max_results: 100
retrieval:
sources:
- pubget
load_excluded: false
screening:
abstract:
model: "gpt-5-mini-2025-08-07"
objective: "Identify fMRI studies of working memory in schizophrenia"
inclusion_criteria:
- Human participants
- fMRI neuroimaging
fulltext:
model: "gpt-5-mini-2025-08-07"
objective: "Identify fMRI studies of working memory in schizophrenia"
inclusion_criteria:
- Human participants
- fMRI neuroimaging
parsing:
parse_coordinates: false
coordinate_model: "gpt-4o-mini"
output:
directory: "results"
annotation:
enabled: false
Model identifiers and API endpoints are configurable, so any OpenAI-compatible provider can be used.
Documentation
Citation
Autonima v0.1.0 is the version evaluated in the AutoNIMA manuscript. See releases.
Release files for autonima 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| autonima-0.1.0.tar.gz | 212.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| autonima-0.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 399.2 kB
Release files / autonima-0.1.0.tar.gz
| Download URL | autonima-0.1.0.tar.gz |
|---|---|
| Size | 212.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9983486a2811e29f467fa082c950a664c3749ed10ea7d665ed894f9c260da326
|
|
BLAKE2b-256 checksum How to use checksums |
2945c35aa9ccc404c79c4efd3de7dee7f1799dfc833c575a7ecef6a8c33866be
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency logRelease files / autonima-0.1.0-py3-none-any.whl
| Download URL | autonima-0.1.0-py3-none-any.whl |
|---|---|
| Size | 186.6 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
252f8c564170890580062f7ce9cefb333f4a6b972cfe4bbb07de6ca0947a4daf
|
|
BLAKE2b-256 checksum How to use checksums |
e9528daa4d9838eae23965d3cc67068138eb2198179a91aa04e066b068a7e155
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 25, 2026.
Transparency log