DeepSeek-V4-Flash means LLM steering is interesting again
개요
DeepSeek-V4-Flash 모델의 등장으로 LLM의 내부 활성화를 조작하여 출력을 제어하는 '스티어링' 기법이 다시 주목받고 있으며, 로컬 환경에서도 실용적으로 시도해 볼 수 있는 가능성이 열렸다.
주요 내용
* 스티어링(Steering) 개념: LLM의 추론 과정 중에 모델의 내부 활성화를 직접 조작하여 원하는 방향으로 출력을 유도하는 기법이다. 특정 개념(예: 간결하게 응답하기)을 모델의 내부 뇌 상태에서 추출하여, 추론 시 해당 개념을 형성하는 수치 활성화를 증폭시키는 방식으로 작동한다.
* 스티어링 방법:
* 단순 접근: 동일한 프롬프트 세트를 두 번 실행하고, 두 결과의 활성화 값 차이를 계산하여 '스티어링 벡터'를 생성한다. 이 벡터를 다른 프롬프트의 활성화 레이어에 더하면 동일한 효과를 얻을 수 있다.
* 정교한 접근: 두 번째 모델을 훈련시켜 첫 번째 모델의 활성화로부터 '특징(features)'을 추출하고, 이를 개별 개념과 매핑하여 증폭시키는 방식이다. (예: Anthropic의 Sparse Autoencoders)
* 스티어링의 매력:
* 명시적인 훈련 데이터셋 구성 대신 모델 내부의 '스마트 다이얼'을 직접 조작하는 것처럼 느껴진다.
* '간결성/장황함', '성실함/속도' 등의 조절 슬라이더를 통해 모델의 말하는 방식을 직접 제어할 수 있다.
* 심리적, 철학적 호기심을 자극하는 흥미로운 기법이다.
* 스티어링이 널리 사용되지 않은 이유:
* AI 연구계에서 '중산층'적인 아이디어로 치부되거나, 대규모 AI 연구소에서는 직접 모델 조작이 가능하므로 덜 중요하게 여겨진다.
* API를 통해 LLM을 사용하는 일반 사용자는 모델 가중치나 활성화에 접근할 수 없어 스티어링이 어렵다.
* 지금까지 강점이 있는 오픈 소스 모델이 부족하여 스티어링 시도가 활발하지 않았다.
* 대부분의 기본 응용은 프롬프팅으로 충분히 대체 가능하다 (예: 장황하게 응답하라는 요청).
* 스티어링의 실용적 가능성:
* 프롬프트로 제어 불가능한 개념: '지능'과 같이 프롬프트로 명확히 지시하기 어려운 개념에 대한 스티어링은 가능성이 있을 수 있으나, '지능'과 같은 복잡한 개념은 모델 전체 가중치와 거의 동일할 수 있어 사실상 모델 재훈련과 유사해질 수 있다.
* 데이터 압축으로서의 스티어링: 특정 개념(예: 특정 코드베이스 지식)을 표현하는 데 많은 토큰이 필요한 경우, 스티어링을 통해 이를 모델의 암묵적 메모리로 옮겨 컨텍스트 창을 절약할 수 있다. 다만 이 역시 모델의 상당 부분을 재학습시키는 것과 유사해질 수 있다.
* DeepSeek-V4-Flash와 DwarfStar 4: DeepSeek-V4-Flash는 로컬에서 프론티어 모델의 에이전트 코딩 수준과 경쟁할 만큼 충분히 좋은 성능을 보여주며, DwarfStar 4는 llama.cpp 기반으로 DeepSeek-V4-Flash만 실행하도록 최적화되었고 스티어링 기능을 기본적으로 지원한다.
시사점
DeepSeek-V4-Flash와 DwarfStar 4의 등장은 스티어링 기법을 로컬 환경에서 실용적으로 탐구할 기회를 제공하며, 향후 오픈 소스 커뮤니티에서 모델별 맞춤형 도구와 추출 가능한 부스팅 기능 라이브러리에 대한 연구가 활발해질 가능성을 시사한다.
댓글
GitHub Discussions