
KAIST, AI 약점 7배 더 찾아낸다…더 안전한 생성형 AI 검증기술
생성형 AI를 배포하기 전에 그 숨은 약점을 자동으로 찾아내는 안전성 검증 기술이 개발됐다.
KAIST 전기및전자공학부 김준모 교수 연구팀은 대규모 언어모델(LLM)의 안전성을 검증하는 ‘레드팀(Red Teaming·AI를 의도적으로 공격해 취약점을 찾는 검증 과정)’ 기술의 한계를 극복한 새 프레임워크 ‘스테이블-지플로우넷(Stable-GFlowNet)’을 개발했다고 30일 밝혔다.
챗봇을 비롯한 생성형 AI가 실제 서비스에 빠르게 들어오면서, 모델이 유해하거나 위험한 답변을 내놓지 않도록 하는 안전성 확보가 핵심 과제로 떠올랐다. 이를 위해서는 배포 전에 모델의 약점을 최대한 폭넓게 찾아내야 하는데, 기존 검증 기술은 성공률이 높은 한두 가지 공격 방식만 반복해서 만들어내는 한계가 있었다. 소수의 약점만 반복해서 찾으면 나머지 위험은 걸러지지 않은 채 남는다. 연구팀이 개발한 기술은 공격의 성공률을 유지하면서도 서로 다른 유형의 약점을 훨씬 다양하게 찾아낸다는 점에서 의미가 있다. 실제로 기존 기술이 찾아낸 17개의 고유 공격 유형보다 약 7배 많은 134개를 발굴하면서도 92%의 공격 성공률을 유지했다. 이번 연구는 권민찬 박사과정생이 제1저자로 참여했으며, AI 분야 최고 권위 학회인 국제머신러닝학회(ICML) 2026에서 상위 2.2%에 해당하는 스포트라이트 논문으로 선정됐다.
왜 AI를 ‘일부러 공격’해야 하나
레드팀은 원래 군사·보안 분야에서 아군을 가상의 적 입장에서 공격해 방어의 허점을 미리 찾아내는 훈련을 가리키는 말이다. 생성형 AI에도 같은 개념이 적용된다. 프로그램을 세상에 내놓기 전에, AI가 유해하거나 위험한 답변을 하도록 유도하는 ‘공격 프롬프트(attack prompt·취약점을 시험하기 위한 질문)’를 일부러 만들어 숨은 약점을 찾아내는 과정이다.
이 과정이 필요한 이유는 분명하다. 생성형 AI는 학습 데이터와 구조가 워낙 복잡해, 개발자도 모델이 어떤 질문에 어떻게 무너질지 미리 다 알 수 없다. 배포 전에 약점을 최대한 찾아내야, 이후 안전 학습(safety fine-tuning)을 통해 그 위험을 차단할 수 있다. 찾지 못한 약점은 그대로 서비스에 남아, 실제 사용자가 악용할 여지가 된다.
핵심은 ‘얼마나 잘 뚫느냐’와 ‘얼마나 다양하게 뚫느냐’ 두 가지를 동시에 잡는 것이다. 공격 성공률이 높아야 실제 위험을 재현할 수 있고, 공격 방식이 다양해야 여러 종류의 약점을 폭넓게 걸러낼 수 있다. 성공률만 높고 방식이 획일적이면, 특정 유형의 약점만 반복해서 찾아낼 뿐 나머지는 놓치게 된다.
바로 이 다양성 확보가 기존 기술의 약점이었다. 공격을 잘 찾긴 하지만 매번 비슷한 공격만 만들어내는 것이 문제였고, 연구팀은 이 지점을 정면으로 겨냥했다.

다양성과 성공률의 딜레마
기존에는 주로 ‘강화학습(reinforcement learning)’으로 공격 프롬프트를 만들었다. 보상을 최대화하도록 학습하는 기법으로, 성공적인 공격에 높은 점수를 주면 AI가 그 방향으로 학습한다. 문제는 이 방식이 가장 점수가 높은 한두 가지 공격 방법만 반복해서 생성하는 ‘모드 붕괴(mode collapse)’에 빠지기 쉽다는 것이다. 다양한 결과 대신 일부 결과에만 치우치는 현상으로, 여러 유형의 취약점을 충분히 찾지 못하게 만든다.
이를 해결할 대안으로 주목받은 것이 ‘생성 흐름 네트워크(GFlowNet)’다. 이 기술은 보상에 비례해 다양한 결과를 골고루 생성하도록 설계돼, 원리상 레드팀에 적합하다. 성공률이 높은 공격은 자주, 낮은 공격은 드물게 생성하되 다양성 자체를 유지하는 방식이다.
그러나 GFlowNet에는 구조적 약점이 있었다. 학습 과정에서 전체 보상의 총합을 추정하는 ‘분배 함수(Z)’라는 값을 별도로 학습해야 하는데, 이 추정이 부정확하면 학습 전체가 불안정해지고 오히려 모드 붕괴가 가속화됐다. 복잡한 계산 과정 자체가 성능을 떨어뜨리는 원인이 된 것이다.
여기에 더해 ‘보상 신호의 잡음’ 문제도 있었다. AI의 답변이 유해한지 판별하는 장치가 완벽하지 않다 보니, 뜻이 통하지 않는 깨진 문장에도 잘못 높은 점수를 주는 경우가 생겼다. 그러면 AI는 실제로 위험한 공격 대신, 판별기를 속이는 ‘횡설수설’을 생성하는 쪽으로 학습이 무너졌다. 성능이 쉽게 붕괴하는 이 불안정성 때문에 GFlowNet은 이론적 장점에도 실제 활용이 어려웠다.

‘좋은 공격은 배우고, 잘못된 공격은 걸러낸다’
연구팀은 GFlowNet의 불안정성을 해결하기 위해 세 가지 핵심 장치를 개발했다. 첫째는 ‘대조 궤적 균형(CTB)’이다. 추정이 까다로운 분배 함수 Z를 직접 학습하는 대신, 같은 조건에서 뽑은 두 개의 결과물을 짝지어 상대적으로 비교하는 방식을 도입했다. 이 과정에서 Z가 자연스럽게 상쇄돼 학습 불안정성이 근본적으로 줄어드는데, 그러면서도 기존 방식과 수학적으로 동일한 최적의 결과에 도달한다는 점을 이론적으로 증명했다. 여러 갈래 길 가운데 더 나은 쪽을 비교해 고르는 것과 비슷한 원리다.
둘째는 ‘노이즈 경사 가지치기(NGP)’다. 두 결과물의 보상 차이가 의미 없이 작을 때는 학습에서 제외하고, 뚜렷한 차이를 보이는 중요한 신호에만 집중하도록 했다. 판별기나 대상 모델에서 발생하는 무작위적 변동에 과도하게 휘둘리지 않게 해, 잡음이 많은 환경에서도 안정적인 학습이 가능해졌다.
셋째는 ‘최소-K 유창성 안정화 장치(MKS)’다. AI가 뜻 없이 깨진 문장으로 보상만 가로채는 ‘보상 해킹’을 막기 위한 장치다. 문장에서 가장 부자연스러운 일부 단어들의 생성 확률을 기준으로 비정상적인 문장을 걸러내, 사람이 실제로 쓸 법한 자연스러운 공격 프롬프트를 만들도록 유도했다. 이를 통해 문장의 자연스러움을 유지하면서도 더 넓은 공격 영역을 탐색할 수 있게 됐다.
세 장치를 결합한 결과, 스테이블-지플로우넷은 기존 기술의 17개보다 약 7배 많은 134개의 공격 유형을 찾아내면서도 92%의 공격 성공률을 유지했다. 서로 다른 공격 기법으로 방어 성능을 평가하는 ‘교차 공격(cross attack)’ 시험에서도, 이 기술로 학습한 방어 모델은 다양한 공격을 폭넓게 막아냈다. 더 포괄적인 취약점을 찾아낸 덕분에 방어 성능의 일반화로 이어진 것이다.
이 기술의 쓰임새는 AI 안전성 검증에만 그치지 않는다. 연구팀은 신약 후보 물질을 찾는 ‘분자 생성’처럼 다양하고 우수한 후보를 폭넓게 찾아내야 하는 다른 문제에서도 기존 방법보다 빠르고 안정적으로 작동함을 확인했다. 김준모 교수는 “적은 데이터와 잡음이 많은 현실적인 환경에서도 AI의 다양한 취약점을 안정적으로 찾아낼 수 있다는 점에서 의미가 크다”며 “생성형 AI를 실제 서비스에 적용하기 전에 더 폭넓은 위험 요소를 찾아내고 방어할 수 있어, 안전하고 신뢰할 수 있는 AI 개발의 핵심 기반기술이 될 것”이라고 말했다.