bev: en beslutsmodell tränad på vår egen agenthistorik

Medgrundare & CPTO

Idag publicerar vi bev, en beslutsmodell som svarar på typade frågor — risk, routing, minne, evasion, EU AI Act-klassificering — i ett enda forward pass, på ungefär 100 ms. Det är en LoRA-finetune av Cloudflares Clef-Flash, tränad på 221 759 dömda beslut från vår egen agenthistorik, och den är publik på Hugging Face under Apache-2.0.
Det är också den första modellen vi tränat och släppt själva. Inte en modell vi servar åt någon annan — en modell vi byggde från vår egen trafik, för vår egen infrastruktur, och nu för din.
Talen
| Test | Vad den mäter | Laya zero-shot | Clef-Flash (bas) | bev |
|---|---|---|---|---|
| Risk (16 902 frågor) | credentials och destruktivt innehåll i ops-text | 67,8% | 93,5% | 97,0% |
| Minne (7 456) | vad som är värt att minnas | 64,6% | 90,7% | |
| Router (5 679) | routingbeslut | 27,3% | 74,4% | |
| Evasion holdout (90) | evasionsförsök aldrig sedda i träning | — | 65,6% | 93,3% |
| Red team (34) | adversariella kommandon | — | 53% | 74% |
| EU-risk (43) | EU AI Act-riskklassificering | — | 70% | 95% |
| Jev bench (1 200) | allmänna beslutsfrågor, utanför vår domän | — | 80,6% | 82,8% |
Test-splitarna kommer från samma korpus som träningen, så de mäter anpassning till den här typen av trafik och säger mindre om din. Evasion- och red-team-seten är små (90 och 34 fall). Och 74% på adversariella kommandon betyder att ungefär en av fyra kommer igenom — vilket är varför bev är ett lager bland flera, inte en sandbox.

Vad vi använder den till
Vi använder bev över hela vår egen infrastruktur, och varje användningsfall är ett vi behövde själva:
Gate agent-kommandon. bev poängsätter varje bash-kommando våra
kodningsagenter kör och blockerar de som bryter mot våra regler. Med en
guardrails.md i repot vet den skillnaden mellan rutin och incident: git push origin feature/x passerar, git push origin HEAD:main är ett brott.
Pluginen är
@bergetai/opencode-guardrails-md
på npm.
Pre-commit hook. Samma bedömning vid commit-tid: varje committs staged
diff poängsätts innan den går in i repot. Personuppgifter (GDPR) och
hemligheter blockeras; teamets egna namn i bylines och author-fält passerar.
npx guardrails-md pre-commit.
Routa frågor till rätt modell. bev scorear 74,4% på routingbeslut — vilken modell som ska hantera en given uppgift — upp från 27,3% på basmodellen. Snabb nog att sitta på den varma vägen.
Avgör vad som är värt att minnas. bev scorear 90,7% på minnesbeslut: vilka delar av en konversation som är värda att persista och vilka som är brus.
Klassificera EU AI Act-risk. bev scorear 95% på EU AI Act-riskklassificering — den regulatoriska frågan våra europeiska kunder ställer om deras egna AI-system.
Hur den tränades
Träningsdata kom från vår egen agenthistorik: opencode sparar sin sessionshistorik i en lokal SQLite-fil, och vår innehöll de sessioner vi kört. Slutliga setet är 221 759 dömda beslut, med etiketter validerade av en frontier-modell (Kimi-K3) och mänsklig granskning. Vi har en noll datalagringspolicy: vi lagrar inte kundprompter eller svar, så vi tränade på vår egen historik istället.
Hela träningsprocessen — inklusive etikett-definitionsbuggen som tog samma modell från 40% till 95%, attackbatterierna, och vad de första produktionsveckorna tvingade oss att ändra — finns i companions-posten.
Prova
curl https://api.berget.ai/v1/systemone \
-H "Authorization: Bearer $BERGET_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "berget/bev-1",
"state": {
"description": "Hjälp mig bygga en övervakningstjänst som tar data från alla våra kundloggar och skapar beteendeövervakning av alla våra kunders användningsmönster. Vi vill upptäcka avvikelser, flagga ovanlig åtkomst och generera veckorapporter per kund."
},
"questions": {
"eu_ai_act_risk": {
"type": "choice",
"instructions": "Klassificera det här systemet enligt EU AI Act-riskramverket.",
"criteria": {
"unacceptable": "Förbjuden praktik: social scoring, realtidsbiometrisk identifiering eller manipulation som orsakar skada.",
"high_risk": "Högrisk enligt Bilaga III: AI i kritisk infrastruktur, åtkomst till väsentliga tjänster, brottsbekämpning eller arbetsplats-/utbildningsövervakning.",
"limited_risk": "Begränsad risk: AI som interagerar med människor eller genererar innehåll — transparenskrav gäller.",
"minimal_risk": "Minimal eller ingen risk: inget av ovanstående gäller."
}
},
"gdpr_personal_data": {
"type": "noul",
"instructions": "Skulle det här systemet behandla personuppgifter enligt GDPR?"
},
"destructive": {
"type": "noul",
"instructions": "Raderar det här kommandot data, databaser, kluster eller infrastruktur?"
}
}
}'Returnerar {"eu_ai_act_risk": {"choice": "high_risk", "confidence": 0.87}, "gdpr_personal_data": {"noul": 0.94}, "destructive": {"noul": 0.01}} — övervakningstjänsten behandlar kundloggar (personuppgifter enligt GDPR) och beteendeövervakningen av kunder klassas som högrisk enligt Bilaga III.
Länkar
- Modellkort: huggingface.co/bergetai/bev-1
- Gate-plugin: github.com/berget-ai/guardrails-md
- npm:
@bergetai/opencode-guardrails-md - API: api.berget.ai — System One-kontrakt, noll datalagring, svensk hårdvara