Mistral 3B 유해물 필터 공개, 20B와 동점이지만 한국어 프롬프트는 81점
Mistral이 8월 4일 콘텐츠 판정 모델 Shieldstral 1.0-3B를 Apache 2.0으로 공개했습니다. 텍스트 종합 F1 84.9로 20B 모델과 동점, 멀티모달은 83.8로 1위입니다. 한국어는 입력 검사 81.2, 출력 검사 86.4로 갈립니다.
- Mistral이 3B 유해물 분류 모델을
Apache 2.0으로 열었습니다. - 텍스트 종합 F1 84.9로 7배 큰 20B 모델과 동점입니다.
- 한국어는 응답 검사 86.4, 프롬프트 검사는 81.2로 낮습니다.
사용자가 올린 글이나 이미지가 서비스 규칙에 어긋나는지 자동으로 걸러내는 모델이 있습니다. 콘텐츠 모더레이션 가드 모델이라고 부릅니다. 지금까지 이런 모델은 무엇을 막을지가 학습할 때 이미 정해져 버렸습니다. "폭력", "성적 콘텐츠", "자해" 같은 카테고리가 모델 안에 박혀 나옵니다. 서비스마다 다른 규칙을 넣으려면 다시 학습시켜야 했습니다.
Mistral AI가 2026년 8월 4일 공개한 Shieldstral 1.0-3B는 그 규칙을 학습이 아니라 입력으로 받습니다. 판정할 때마다 평범한 문장으로 질문을 던지면 모델이 예 또는 아니오로 답합니다. 가중치는 Apache 2.0으로 열려 있고, Hugging Face에서 바로 내려받을 수 있습니다.
규칙을 재학습이 아니라 문장으로 준다
Shieldstral에 넣는 입력은 세 부분입니다.
과업 맥락과 판정 엄격도
예/아니오로 답할 정책 질문 한 개
판정 대상 글 또는 이미지
yes 또는 no 토큰 하나
<Query>에 "이 글이 의료 조언을 담고 있는가?"처럼 서비스 고유 규칙을 문장으로 적으면 그대로 판정 기준이 됩니다. 재학습이 필요 없습니다. Mistral은 모더레이션을 예/아니오 질의응답으로 다시 짠 것이라고 설명합니다.
출력이 토큰 하나라는 점은 운영 비용에서 티가 납니다. 정책을 프롬프트로 받는 기존 방식인 GPT-OSS-Safeguard(20B)와 Nemotron-3.5-Safety는 답을 내기 전에 긴 추론 사슬을 먼저 생성합니다. 판정 한 건마다 수백 토큰이 나가고 그만큼 늦어집니다. Shieldstral은 yes와 no 두 토큰의 로짓을 0에서 1 사이 점수로 재정규화해 쓰고, 기본 임계값은 0.5입니다. 판정마다 정방향 계산 한 번으로 끝납니다.
바탕이 된 모델은 Ministral-3B-Base-2512에 Pixtral 비전 인코더를 붙인 구성이라, 글과 이미지를 같은 질의 형식으로 판정합니다. 학습에는 약 5,410만 샘플이 쓰였습니다. 공개 텍스트 4,520만, 합성 대조쌍 440만, 멀티모달 450만입니다.
3B가 20B와 동점인 지점, 그리고 지는 지점
텍스트 안전성 종합 F1은 84.9입니다. 13개 벤치마크를 묶은 점수이고, 같은 점수를 낸 모델이 파라미터가 약 7배 많은 GPT-OSS-Safeguard(20B)입니다.

눈에 띄는 쪽은 오히려 아래쪽입니다. 널리 쓰이는 LlamaGuard-4(12B)가 69.1, ShieldGemma(9B)가 54.7로, 파라미터가 3배에서 4배 많은데도 크게 뒤집니다. 이 두 모델은 학습 시점에 고정된 분류 체계로 판정하기 때문에, 벤치마크마다 다른 정의를 쓰는 21개 스플릿 평가에서 손해를 봅니다.
이미지가 섞이면 격차가 더 벌어집니다. 멀티모달 종합 F1은 Shieldstral이 83.8, 2위 OmniGuard(7B)가 77.6입니다. LlamaGuard-4(12B)는 37.5로, 이미지 판정에서는 사실상 무작위에 가깝습니다.

지는 지점도 있습니다. 세분화된 분류 체계를 주고 정책 적응력을 재는 평가에서 Shieldstral은 91.3, GPT-OSS-Safeguard(20B)는 94.1입니다. 2.8점 뒤집니다. 논문은 이 열세를 인정하면서도, 20B는 답 전에 추론 사슬을 만드느라 실제 배포에서 느려진다고 맞섭니다. 카테고리가 아주 촘촘한 규칙을 다뤄야 하고 판정 지연을 감당할 수 있다면 20B 쪽이 여전히 정확합니다.
작은 전용 모델이 큰 범용 모델의 자리를 가져가는 사례는 보안 쪽에서도 나왔습니다. Microsoft 첫 보안 모델로 비용 절반을 낸 사례에서도 어려운 구간은 큰 모델에 남았는데, 여기서도 촘촘한 정책 판정은 20B가 지키고 있습니다.
한국어는 입력 검사와 출력 검사가 갈린다
한국어는 모델 카드가 명시한 공식 지원 언어 12종에 들어 있습니다. 영어, 프랑스어, 스페인어, 독일어, 이탈리아어, 포르투갈어, 네덜란드어, 중국어, 일본어, 한국어, 아랍어, 러시아어입니다.
다만 논문의 언어별 표를 보면 한국어 점수가 용도에 따라 둘로 갈립니다. 사용자가 보낸 입력을 검사하는 프롬프트 분류가 81.2, 모델이 내놓은 답을 검사하는 응답 분류가 86.4입니다.
| 언어 | 입력 검사 F1 | 출력 검사 F1 |
|---|---|---|
| 한국어 | 81.2 | 86.4 |
| 일본어 | 83.0 | 86.3 |
| 중국어 | 83.5 | 82.8 |
| 아랍어 | 77.9 | 87.1 |
| 인도네시아어 | 55.5 | 94.1 |
논문은 아랍어와 인도네시아어를 비롯한 저자원 언어의 프롬프트 분류에서 성능이 떨어진다고 직접 밝혔습니다. 한국어는 그 명단에 없지만, 입력 검사가 출력 검사보다 5.2점 낮다는 방향은 같습니다. 사용자 입력만 검사하도록 연결했다면 그 5.2점이 놓치는 양으로 남습니다.
그 밖에 모델 카드가 밝힌 한계는 세 가지입니다. 적대적으로 조작하거나 난독화한 입력에서 신뢰도가 떨어지고, 아주 긴 문서에서도 마찬가지이며, 데이터 필터링을 거쳤어도 학습 데이터의 편향이 남아 있습니다.
지금 쓸 수 있는 조건
| 항목 | 조건 |
|---|---|
| 대상 | 개발자. 가중치를 직접 내려받아 실행합니다 |
| 가격 | 무료. Apache 2.0이라 상업적 사용이 가능하고 저작자 표시만 필요합니다 |
| API | 없습니다. Mistral 문서의 모델 목록에 Shieldstral이 올라 있지만 모델 식별자와 가격이 비어 있고, 상태는 Public Preview입니다 |
| 한국 사용 | 가능합니다. 가중치를 직접 실행하므로 지역 제한이 없습니다 |
| 하드웨어 | 16GB NVIDIA GPU 한 장, BF16 기준. 컨텍스트는 32k로 학습됐습니다 |
API가 없다는 점이 이 릴리스의 가장 큰 제약입니다. Mistral은 이미 mistral-moderation-latest라는 별도 모더레이션 API를 운영하고 있지만 그건 고정 분류 체계를 쓰는 텍스트 분류기이고, Shieldstral과 같은 모델이 아닙니다. GPU 없이 Shieldstral을 시험할 경로는 지금 없습니다.
실행은 vLLM이 권장 경로입니다.
vllm serve mistralai/Shieldstral-1.0-3B --max-model-len 32768
llama.cpp로 돌리려면 GGUF 변환과 함께 멀티모달 프로젝터를 따로 준비해야 하고, Transformers 경로는 mistral-common 1.11.5 이상이 필요합니다.
한국어 서비스에 이미 모더레이션을 연결해 운영 중이고 GPU가 있다면, 지난 한 주 신고 로그를 그대로 <Query>에 서비스 규칙 문장으로 넣어 돌려보는 것이 첫 작업입니다. 이때 입력단과 출력단의 오탐률과 미탐률을 합치지 말고 따로 재야, 위의 5.2점 차이가 우리 데이터에서도 벌어지는지 알 수 있습니다. GPU가 없다면 docs.mistral.ai/models/overview의 Shieldstral 행에 모델 식별자와 가격이 채워지는 시점이 시험을 시작할 신호입니다.