◆ Open, community-trained AI on Animica

Open AI,
trained by everyone.

ENA is Animica's open training & inference network. Lend your machine — laptop, rig, or GPU box — to run real AI work: data curation, evaluation, retrieval, and fine-tuning. Every verified job mints an on-chain receipt and earns you ANM.

⛏ Contribute compute 📊 See live progress
Jobs verified Training runs Contributors Receipts

A flywheel for open models

ENA coordinates four kinds of work into one auditable pipeline — every result is hashed, verified, and exported as an on-chain credit event.

🧹

Useful-work

Curate, dedupe, label, embed and index datasets — CPU-friendly jobs any machine can run.

🎯

Training

SFT, LoRA/QLoRA and DPO fine-tuning, orchestrated with manifests, checkpoints and eval reports.

Inference

OpenAI-compatible serving across a fleet of contributor nodes and routed providers.

🧾

On-chain receipts

Deterministic SHA3 receipts tie every job to a credit event — transparent, reproducible, payable.

Live network progress

Real numbers from the ENA coordinator. Help these grow.

connecting…
Jobs submitted
Jobs verified
Training runs
Contributors
Models touched
Datasets
Indexed chunks
Receipts minted

🏆 Top contributors

WorkerJobs

🕒 Recent activity

JobTypeStatus

Stats served from GET /api/stats on the ENA coordinator. Showing the sample baseline if the coordinator is offline.

Contribute & earn ANM

Two tracks. Pick the one that matches your hardware — both pay out in ANM per verified job.

Anyone · CPU

Run a worker node

Curation, eval, embedding and indexing jobs run great on a normal laptop or rig.

1
Install the CLI
pip install --upgrade animica
2
Point at the coordinator (optional — defaults to local)
export ANIMICA_ENA_ENDPOINT=https://ena.animica.org/api
3
Start contributing — claim, run, get paid
animica ena worker start --worker-id "$(hostname)" --endpoint https://ena.animica.org/api --types extract,chunk,embed,index,dataset_clean,eval
4
Check your earnings
animica ena worker status
Operators · GPU

Run fine-tuning jobs

Have a CUDA GPU? Run SFT / LoRA / QLoRA / DPO and earn training credit.

1
Install with the training extras
pip install --upgrade "animica[gpu]"
2
Get the starter dataset (all Animica knowledge)
curl -O https://ena.animica.org/animica-knowledge.jsonl
3
Prepare a run on it (LoRA shown)
animica ena train prepare --dataset animica-knowledge.jsonl --out manifests/run.json --base-model Qwen/Qwen2.5-1.5B --backend python_transformers --method lora --auto-split
4
Train & evaluate
animica ena train run  --manifest manifests/run.json
animica ena train eval --manifest manifests/run.json --model-provider ollama
5
Anchor the result on-chain
animica ena train export <run_id> --out run.json
# emits a TrainingReceipt (dataset + checkpoint hash, gpu-hours)

New here? Read the full docs · Methods supported: sft lora qlora dpo distill

Request work — pay in ANM

Connect your Animica wallet, fund a job in ANM, and the contributor fleet runs it. Your payment is bound to the job on-chain; workers earn it on verified completion.

Demand · wallet-funded
Treasury:

Status

Connect a wallet and submit a job to see it move through awaiting_payment → proposed → running → verified.

    Needs the Animica wallet extension (window.animica). Don't have it? Get a wallet. Amounts are in ANM (9 decimals).

    Training data

    ENA trains on open, community-contributed data. Donate instruction pairs or point us at a source — it's normalized, deduped, and registered for training jobs. datasets contributed so far.

    Contribute · open

    Donate training data

    Recent datasets

    DatasetKindRows

    From the CLI: animica ena datasets contribute rows.jsonl

    Set up the starter dataset (55 pairs, all Animica knowledge):

    curl -O https://ena.animica.org/animica-knowledge.jsonl
    animica ena datasets contribute animica-knowledge.jsonl

    Download: animica-knowledge.jsonl

    How earning works

    Every job follows the same auditable path. Pay is tied to verified, hashed work — not promises.

    🧩
    Claim

    Your worker claims a job from the queue.

    ⚙️
    Run

    It executes locally and produces a result + artifacts.

    Verify

    Deterministic checks pass; a SHA3 receipt is minted.

    🪙
    Earn

    The receipt's credit event settles to ANM.

    Useful-work credit

    CPU jobs (curation, eval, embed, index) pay per verified job, sized by job kind and volume.

    Training credit

    Fine-tuning pays by GPU-hours and samples processed, anchored by a TrainingReceipt.

    Transparent splits

    Provider / treasury / miner splits are policy-driven and on-ledger via AICF settlement.

    Job kinds: data_curation · eval · rag_index · distill · sft · dpo Receipt hash: SHA3-256 Settlement: AICF

    Job kinds & models

    ENA speaks OpenAI-compatible inference and ships pluggable model + embedding providers (deterministic offline fallback, OpenAI-style APIs, Ollama).

    CPU-friendly

    scrape · extract · chunk · label · embed · index · summarize · eval · dataset_clean · training_records · train_prepare

    GPU training

    SFT · LoRA · QLoRA (4-bit) · DPO · CPU distillation — manifest-driven with checkpoints & eval reports.

    Providers

    deterministic · openai_compatible · ollama — for both generation and embeddings, configured in one file.

    Help make ENA truly something awesome

    Open models get better when more people contribute compute and data. Spin up a worker in two commands.