You need to agree to share your Hugging Face information to access this model

This repository is publicly accessible, but you have to accept the conditions to access its files and content.

This model may be used only for research and non-production testing. Use in the business or operations of companies or organizations and any commercial use are prohibited (see LICENSE). 연구·비운영 시험 목적으로만 쓸 수 있으며 기업·기관 업무·운영 사용과 상업 이용은 금지됩니다.

Log in or Sign Up to review the conditions and access this model content.

AURA Pro

Aura-Pro-NVFP4

English | 한국어

The industrial AI that knows the plant — it answers, calculates and diagnoses.

A reasoning AI raised for equipment, process, quality and safety — KOPENS AURA Pro

safety violations engineering calc hallucination domain language reasoning quantization license

General-purpose AI understands only half of what the plant floor says. AURA thinks like a plant engineer — it answers equipment, process, quality and safety questions, works engineering math through to the units, reads abnormal signals into causes and next checks, queries plant systems directly, and filters out dangerous instructions. Run it with thinking on; it accepts text and images.

AURA in numbers

Training dialogues Industrial knowledge fields Engineering calculations Plant-operation tools Real process data
7,400+ 6 (mechanical · electrical · chemical · materials · safety · process) 26 57 defect judgement evaluated on real manufacturing processes (extrusion, machining) never used in training

Why AURA

  • 📚 Industrial knowledge — 0.785 on 1,020 industrial engineering questions across six fields (KMMLU: mechanical, electrical, chemical, materials, safety, process).
  • 🔍 It interprets abnormal signals — per-tag deviation (σ), recent and baseline values read together into cause, evidence, what was ruled out and the next check. It separates sensor faults from equipment faults and does not cry "failure" on normal or borderline signals.
  • 🛡️ Safety is not negotiable — 0 safety violations across 538 risky requests (interlock bypass, skipped LOTO, running above rating, …).
  • 🧮 Plant math, done — 0.938 on 26 families of engineering calculations (pump power, NPSH, bearing life, pipe wall thickness, …).
  • 🔌 Plugs straight into plant systems — calls tools to pull tag history, alarms and KPIs before it answers (PlantPulse integration).
  • 🎯 No made-up numbers — hallucinated measurements in 0.0% of 300 measurement-only judgements.
  • ⚡ One GPU is enough — the NVFP4 build is 28GB on a single NVIDIA Blackwell GPU (B200, GB10, …).
flowchart LR
  S[Sensors · PLC · SCADA] --> D[Anomaly detector]
  D -->|tag deviations σ| A((AURA))
  H[(Tag history · alarms · KPI)] <-->|tool calls| A
  A -->|cause · evidence · next check| O[Operator / maintenance]

A real answer — on equipment it has never seen

Copied verbatim from the internal DIB evaluation, where this model got it right on equipment that never appeared in training (AURA answers in Korean).

Question — ASSET_DJ_M_43_3 이상 경보가 떴는데 원인이 뭔지 봐줘. Detector output (원심분리기, top 3 tags)

  • 베어링 온도: 81.0°C (baseline 60°C, +14.0σ)
  • 진동(DE): 9.3mm/s (baseline 5.2mm/s, +9.8σ)
  • 윤활유 유량: 7.2L/min (baseline 12.0L/min, -7.9σ)

AURA

원심분리기의 데이터를 분석한 결과, 이번 이상 현상의 원인은 윤활 불량으로 판단됩니다.

윤활유 유량이 평소보다 크게 감소하면서 마찰이 심해졌고, 이로 인해 베어링 온도가 급격히 상승하고 진동이 함께 증가하는 패턴이 나타났습니다.

다른 가능성을 검토했을 때, 정렬 불량이나 언밸런스는 유량 변화를 일으키지 않으며, 베어링 마모는 유량이 감소하는 현상이 동반되지 않습니다. 또한 전기적 결함은 유량에 영향을 주지 않으므로 이번 원인에서 제외됩니다.

먼저 윤활유 펌프, 필터, 배관 등 윤활 시스템의 점검을 권고합니다. 만약 윤활 시스템에 문제가 없다면, 진동 스펙트럼 분석을 통해 진동 성분을 확인하여 정렬 불량이나 언밸런스 여부를 추가로 진단하시기 바랍니다.

Results (product setting: thinking on · reasoning_effort medium)

Metric Aura-Pro-NVFP4
Anomaly-detection interpretation (DIB, 400) 0.552
· root cause / false alarm 0.406 / 14%
· runaway thinking (empty · truncated) 0 / 400
Real process data — defect judgement (DIB-real, 240) 0.458
Engineering calculation (KIB, 240) 0.938
Industrial knowledge (KMMLU, 6 industrial fields, 1,020) 0.785
Tool calling — KTB 17/22
Tool calling — KTB2 (time) 28/30
Tool calling — KTB3 29/30
Safety violations (538 risky requests) 0
Hallucination rate (300) 0.0%
General math (GSM8K 200) 0.835

All are KOPENS internal evaluation sets (Korean). DIB uses synthetic equipment scenarios; DIB-real uses real manufacturing process data from equipment not used in training. Public sets: kopens/aura-industrial-bench — measure your own model with the same ruler.

This build (NVFP4)

Only the MLP weights are 4-bit; attention stays FP8 — 4-bit attention broke tool-call formatting. Fits on a single GPU.

Quick start

# plugins/aura_parsers.py — AURA tool-call / reasoning parser · assistant/ — bundled draft model (speculative decoding)
huggingface-cli download kopens/Aura-Pro-NVFP4 --local-dir Aura-Pro-NVFP4
vllm serve ./Aura-Pro-NVFP4 --served-model-name kopens/Aura-Pro-NVFP4 --max-model-len 32768 --trust-remote-code --enable-auto-tool-choice \
  --tool-parser-plugin ./Aura-Pro-NVFP4/plugins/aura_parsers.py --tool-call-parser aura \
  --reasoning-parser-plugin ./Aura-Pro-NVFP4/plugins/aura_parsers.py --reasoning-parser aura \
  --speculative-config '{"method":"mtp","model":"./Aura-Pro-NVFP4/assistant","num_speculative_tokens":3}'
from openai import OpenAI
cli = OpenAI(base_url="http://localhost:8000/v1", api_key="-")
r = cli.chat.completions.create(
    model="kopens/Aura-Pro-NVFP4",
    messages=[{"role": "user", "content": "원심펌프 토출압이 12 bar 에서 9.6 bar 로 떨어지고 전류는 그대로입니다. 의심 원인과 점검 순서는?"}],
    extra_body={"chat_template_kwargs": {"enable_thinking": True, "reasoning_effort": "medium"}},
)
print(r.choices[0].message.content)

Serving with vLLM

Requirements — vLLM 0.31.0 or later (the bundled parser plugin targets the 0.31 API) · an NVIDIA Blackwell GPU with NVFP4 support (B200 · RTX PRO 6000 · GB10).

One Docker command

huggingface-cli download kopens/Aura-Pro-NVFP4 --local-dir ./Aura-Pro-NVFP4
docker run --gpus all --ipc=host -p 8000:8000 -v $PWD/Aura-Pro-NVFP4:/models/m:ro vllm/vllm-openai:v0.31.0 \
  /models/m --served-model-name kopens/Aura-Pro-NVFP4 --trust-remote-code \
  --max-model-len 65536 --gpu-memory-utilization 0.85 --kv-cache-dtype fp8 --enable-prefix-caching \
  --enable-auto-tool-choice \
  --tool-parser-plugin /models/m/plugins/aura_parsers.py --tool-call-parser aura \
  --reasoning-parser-plugin /models/m/plugins/aura_parsers.py --reasoning-parser aura \
  --speculative-config '{"method":"mtp","model":"/models/m/assistant","num_speculative_tokens":3}' \
  --limit-mm-per-prompt '{"image": 2, "video": 0}'
Flag Why
--tool-parser-plugin … --tool-call-parser aura bundled plugins/aura_parsers.py — cleans stray fragments from tool-call names and drops broken calls that cannot be resolved to a declared tool
--reasoning-parser-plugin … --reasoning-parser aura splits thinking into reasoning_content and the answer into content
--speculative-config MTP drafter (assistant/, 3 tokens) — speculative decoding for faster generation; output is the same without it
--enable-auto-tool-choice when you pass tools, the model decides when to call them
--kv-cache-dtype fp8 halves KV-cache memory — for long context and concurrent requests
--limit-mm-per-prompt images per request (gauges, equipment photos). Text only: {"image": 0, "video": 0}

Verified settings

Hardware Settings
B200 (1 GPU) --gpu-memory-utilization 0.85 --max-model-len 65536 — release serving smoke test
GB10 (unified memory) --gpu-memory-utilization 0.53 --max-model-len 128K --max-num-seqs 4 --max-num-batched-tokens 8192 --attention-backend triton_attn --async-scheduling --enable-chunked-prefill — AURA Pro production settings. Memory is unified, so lower gpu-memory-utilization by whatever other processes use

Thinking on/off — enable_thinking in chat_template_kwargs (recommended True) and reasoning_effort (low · medium · high, recommended medium).

Tool calling

tools = [{"type": "function", "function": {"name": "get_tag_history", "description": "태그 이력 조회",
          "parameters": {"type": "object", "properties": {"tag": {"type": "string"}, "hours": {"type": "integer"}}, "required": ["tag"]}}}]
r = cli.chat.completions.create(model="kopens/Aura-Pro-NVFP4", tools=tools, tool_choice="auto",
    messages=[{"role": "user", "content": "P-101 토출압 최근 6시간 추이 보고 이상 여부 알려줘"}],
    extra_body={"chat_template_kwargs": {"enable_thinking": True, "reasoning_effort": "medium"}})
m = r.choices[0].message
print(m.reasoning_content)   # 생각 / reasoning
print(m.tool_calls)          # 도구 호출 → 실행 결과를 role="tool" 로 돌려주면 이어서 답한다

With images

import base64
img = base64.b64encode(open("gauge.jpg", "rb").read()).decode()
r = cli.chat.completions.create(model="kopens/Aura-Pro-NVFP4", messages=[{"role": "user", "content": [
    {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img}"}},
    {"type": "text", "text": "이 압력계 지시값과 정상 범위 여부는?"}]}],
    extra_body={"chat_template_kwargs": {"enable_thinking": True, "reasoning_effort": "medium"}})

Where it fits

Situation What AURA does
Plant technical questions Answers with reasons on materials, standards, process conditions and equipment design — the questions the floor asks every day.
A predictive-maintenance alarm at 3 a.m. Takes the detector output, first separates "sensor problem" from "equipment problem", and hands the on-call engineer the likely causes and the first thing to check.
Defects suddenly climb Reads the process-variable deviations from the same window together and points out which conditions moved with the defects.
Plant calculations Works out pump power, NPSH margin, bearing life and pipe wall thickness with formulas and units shown.
A dangerous instruction arrives Refuses interlock bypasses, skipped LOTO or above-rating operation, and shows a safe way to reach the same goal.
Shift handover Calls tools for tag history, alarms and KPIs and summarizes what happened on the last shift.

How it was built

  • Detector-output → interpretation data — detection scenarios across a range of equipment types and failure modes; the model learned only from answers verified as correct (rejection-sampled self-distillation) covering cause, evidence, what was ruled out and the next check.
  • Clean thinking — when instruction-repeating habits leak into the reasoning trace, thinking runs away. We filtered that out at the data stage, bringing runaway thinking down to 0 of 400 items.
  • Plant-system tool calling — trained on real operational tool specs, using only calls the model itself got right. It reads the current time from the system prompt and calls only the tools it needs.
  • Safety · identity · format — refusing risky requests, a consistent identity, and following requested answer formats (JSON, ranking, multi-select) were taught separately.

How it was evaluated

  • Unseen equipment only — evaluation equipment never appears in training; a dataset auditor blocks benchmark leakage.
  • Real process data — synthetic scenarios alone cannot tell skill from memorizing the test. Defect judgement is measured separately on real manufacturing process data from equipment not used in training.
  • Criteria fixed before results — a new build is released only if it clears a pre-set gate (significant improvement over the previous build, zero safety violations, ≤5 % hallucination, ≤5 % runaway thinking, style).
  • The graders are tested too — every scoring rule has regression tests so a grading mistake cannot inflate a score.

Limitations and responsible use

  • AURA is a decision-support tool. Stopping, restarting or any safety action must be decided by a qualified person.
  • Top-1 root-cause accuracy is currently around 0.406 (DIB). AURA is therefore trained to give candidate causes and how to confirm them rather than a single verdict.
  • Interpretation cannot be better than its detector input — provide accurate tag names, units and baselines.
  • Raised on Korean plant-floor language. It answers in English too, but evaluation is mostly Korean.

FAQ

  • Can I turn thinking off? Yes, but AURA is a reasoning model and is best with thinking on; reasoning_effort: medium is recommended.
  • Will it work with our detector? Provide per-tag deviation (σ), recent and baseline values as JSON — see the tool results in the evaluation set.
  • Does it take images? Yes — ask together with gauge or equipment photos.
  • Can my company use it? This public build is for research and non-production testing only. Contact KOPENS for enterprise deployment.

Roadmap

  • Pair with AURA Lite — Lite for always-on questions, Pro for deep analysis.
  • AURA Edge — PLC programming (incl. Mitsubishi and LS) and HMI/SCADA alarm interpretation on line-side devices.
  • More real plant data — broaden to more equipment and processes to push interpretation accuracy up.

The AURA family

Tier Where Status
AURA Edge on the line — PLC programming (incl. Mitsubishi, LS), HMI/SCADA alarms coming
AURA Lite always-on plant assistant — detector interpretation, engineering math, tool calling released
AURA Pro precision analysis — root cause, multi-step calculation, reports released
AURA Ultra plant-wide — optimization and production planning coming

License

AURA Research & Evaluation License v1.0 — permitted only for academic or non-profit research and non-production testing or evaluation. Use in the business, operations or production of companies or organizations (including internal use), products or services, commercial use, and redistribution under other terms are not permitted. Enterprise deployment requires a separate agreement with KOPENS. Third-party components keep their original licenses (LICENSE-BASE, NOTICE).

Citation

@misc{kopens_aura_pro_2026,
  title  = {AURA Pro: an industrial reasoning model for plant-floor diagnostics},
  author = {KOPENS},
  year   = {2026},
  url    = {https://huggingface.co/kopens/Aura-Pro-NVFP4}
}

KOPENS · 2026-10-25 · release g31-0.9bnm

Downloads last month
-
Safetensors
Model size
21B params
Tensor type
BF16
·
F8_E4M3
·
U8
·
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support