IA
Modelo ONNX Local
Camada 1 — ThreatModel via ort (ONNX Runtime)
Modelo ONNX Local
A Camada 1 do Sentry usa um modelo ONNX local para classificar payloads
suspeitos que as heurísticas não conseguem decidir com confiança. Inferência
local via ort (ONNX Runtime), sem depender de API externa.
Trait ThreatModel
// sentry-ai/src/threat.rs
#[async_trait]
pub trait ThreatModel: Send + Sync {
fn name(&self) -> &'static str;
fn version(&self) -> &str;
async fn classify(&self, evt: &Event) -> anyhow::Result<ThreatVerdict>;
}
A feature onnx é opcional e desligada por default. Ative via Cargo
feature no build:
[dependencies]
sentry-ai = { version = "0.1", features = ["onnx"] }
Pipeline de treinamento
- Dataset: payloads maliciosos catalogados (SQLi, XSS, RCE, log4shell)
- tráfego benigno.
- Treinamento offline (Python, em
tools/train) — produz um modelo ONNX versionado. - Versionamento: modelos em
models/(ex:models/sentry-payload-v1.onnx). - Deploy: binário carrega o modelo no startup; troca a quente via
sentry model reload. - Feedback loop: incidentes confirmados pelo decisor viram dataset de retreinamento.
Configuração
[analysis.ai]
onnx_model = "models/sentry-payload-v1.onnx"
llm_only_above = 30
CLI
sentry model status # versão do modelo, acurácia
sentry model reload # recarrega modelo do disco (hot swap)
Status
- Trait
ThreatModelemsentry-ai/src/threat.rs. - Feature
onnxexiste no Cargo.toml. - Impl ONNX pendente (F2.1/F2.2) — sem
tools/ainda.