게임 개발 · 기술 동향미로의 개발노트
카테고리

transformers

Transformers 5.22.2, 분산 실행과 템플릿 샌드박스 보완

모아보기 · 소식 기준일 · 블로그 공개

NCCL 장치 지정 경로와 Jinja 샌드박스를 손봤습니다.

컴퓨터에 설치돼 동작 중인 RTX 4090
GPU 참고 사진입니다. 이 릴리스의 테스트 장비를 뜻하지 않습니다. Benlisquare · CC BY-SA 4.0. · 이미지 출처 · 이용 조건

발표 내용

Transformers 5.22.2는 분산 실행에서 장치 ID를 NCCL에만 지정하도록 수정하고 Jinja 샌드박스 방어를 강화했습니다. 대형 기능 추가보다 분산 실행과 보안 수정에 집중한 패치입니다.

확인할 부분

분산 학습과 채팅 템플릿을 함께 쓰는 환경이라면 두 기능을 따로 테스트해야 합니다. 장치 초기화와 템플릿 렌더링은 서로 다른 실행 단계에서 문제가 드러날 수 있어요.

분산 실행과 템플릿 처리를 따로 읽습니다

분산 실행에는 여러 장치에서 계산한 값을 모으는 단계가 있어요. 같은 코드가 한 장치에서 잘 실행되더라도, 장치를 선택하는 값이 각 백엔드로 어떻게 전달되는지까지 확인되는 것은 아닙니다. 이 변경은 NCCL에만 장치 ID를 지정하는 경로를 다룹니다. 비교 환경에서는 백엔드 이름과 작업자 수를 기록하고, 초기화에서 실패했는지 실제 계산까지 진행했는지 나누어 봅니다.

단순한 실행 예제는 동일한 입력으로 한 장치에서 결과를 구한 뒤, 작은 분산 실행에서도 출력이 일치하는지 보는 것입니다. 작업자가 뜬다는 메시지와 전체 결과가 모였다는 사실은 별개이므로, 모든 작업자가 정상 종료했는지도 남깁니다. 장치 배치가 달라지는 상황과 통신 설정이 바뀌는 상황을 동시에 비교하면 원인을 구분하기 어려워 한 번에 한 조건을 바꿉니다.

템플릿 샌드박스의 방어 강화는 분산 결과와 관련이 없는 변경입니다. 템플릿을 직접 제공하는 서비스라면 평소 사용하는 템플릿이 계속 동작하는지, 허용하지 않은 접근이 이전처럼 차단되는지를 격리된 입력으로 확인할 수 있어요. 학습 작업이 성공했다는 사실로 템플릿 처리를 검증할 수 없고, 템플릿이 정상 출력된다고 해서 분산 설정이 올바르다는 뜻도 아닙니다. 릴리스 영향은 실제 사용 경로를 두 갈래로 나눠 기록하는 편이 명확합니다.

출처

같은 카테고리의 글

최신 AI 동향 전체 보기 ↗