Trip Venturella가 대영도서관의 저작권 만료 텍스트만으로 학습시킨 언어 모델 Mr. Chatterbox를 공개했다. 개발자 본인의 설명을 직접 들어보면:
Mr. Chatterbox는 1837년부터 1899년 사이에 출판된 빅토리아 시대 영국 텍스트 28,000여 편으로 구성된 코퍼스를 바탕으로 완전히 처음부터 학습한 언어 모델입니다. 데이터셋은 대영도서관이 공개한 자료를 활용했습니다. 1899년 이후의 학습 데이터는 단 한 건도 포함되어 있지 않으며, 어휘와 개념 모두 19세기 문학에서만 형성되었습니다.
학습에 사용된 코퍼스는 총 28,035권으로, 필터링 후 추정 입력 토큰 수는 약 29억 3,000만 개입니다. 모델 파라미터는 약 3억 4,000만 개로, GPT-2-Medium과 비슷한 규모입니다. 결정적인 차이가 있다면, GPT-2와 달리 Mr. Chatterbox는 오직 역사적 데이터만으로 학습되었다는 점입니다.
방대한 양의 무단 수집 데이터 없이는 쓸 만한 LLM을 학습시키기가 얼마나 어려운지 알기에, 이런 모델을 몇 년째 꿈꿔왔다. 저작권 만료 텍스트만으로 학습한 모델과 대화하면 과연 어떤 느낌일까?
이제 Trip 덕분에 직접 확인해볼 수 있게 됐다!
모델 자체는 LLM 기준으로 매우 작은 편으로, 디스크 용량이 고작 2.05GB에 불과하다. Trip이 만든 HuggingFace Spaces 데모에서 직접 체험해볼 수 있다:

솔직히 말하면, 성능은 꽤 실망스럽다. 대화하다 보면 LLM이라기보다 마르코프 체인(Markov chain)에 가깝다는 느낌이 든다. 답변에서 빅토리아 시대 특유의 풍미가 느껴지는 건 재미있지만, 질문에 제대로 된 답을 얻기가 쉽지 않다.
2022년 Chinchilla 논문에 따르면, 학습 토큰 수는 파라미터 수의 약 20배가 적정 비율로 제시된다. 3억 4,000만 개 파라미터 모델이라면 약 70억 토큰이 필요한 셈인데, 이는 이번에 사용한 대영도서관 코퍼스의 두 배가 넘는 양이다. 참고로 Qwen 최소 모델이 6억 파라미터이고, 이 모델 패밀리는 20억 파라미터 수준부터 쓸 만해지기 시작한다. 개인적인 추측으로는, 쓸모 있는 대화 상대로 느껴지려면 학습 데이터가 지금의 4배 이상은 필요할 것 같다.
그래도 정말 재미있는 프로젝트임에는 틀림없다!
내 LLM 프레임워크를 이용해 직접 로컬에서 모델을 실행해보기로 했다.
작업 대부분은 Claude Code에게 맡겼다. 대화 기록은 여기서 확인할 수 있다.
Trip은 Andrej Karpathy의 nanochat으로 모델을 학습시켰다. 그래서 해당 프로젝트를 클론하고 모델 가중치를 받은 뒤, Claude에게 모델 실행용 파이썬 스크립트를 만들어 달라고 했다. 스크립트가 동작하기까지는 Space 데모 소스 코드에서 추가 세부 정보를 참고해야 했고, 이후 Claude에게 LLM 플러그인 튜토리얼을 읽히고 나머지 플러그인을 완성하도록 했다.
그렇게 만들어진 결과물이 llm-mrchatterbox다. 플러그인 설치 방법은 다음과 같다:
llm install llm-mrchatterbox
처음 프롬프트를 실행하면 Hugging Face에서 2.05GB 모델 파일을 자동으로 내려받는다. 아래와 같이 실행해보자:
llm -m mrchatterbox "Good day, sir"
또는 다음과 같이 지속적인 채팅 세션을 시작할 수도 있다:
llm chat -m mrchatterbox
LLM이 설치되어 있지 않다면, uvx를 이용해 처음부터 채팅 세션을 바로 시작할 수 있다:
uvx --with llm-mrchatterbox llm chat -m mrchatterbox
모델 사용이 끝난 후 캐시 파일을 삭제하려면 아래 명령어를 실행한다:
llm mrchatterbox delete-model
Claude Code에게 LLM 모델 플러그인 전체를 처음부터 만들도록 맡긴 건 이번이 처음이었는데, 결과가 꽤 만족스러웠다. 앞으로도 이 방식을 자주 활용하게 될 것 같다.
완전한 퍼블릭 도메인 데이터만으로 실용적인 모델을 만들 수 있기를 여전히 기대하고 있다. Trip이 nanochat과 약 29억 3,000만 개의 학습 토큰만으로 이 정도까지 해냈다는 사실 자체가 희망적인 출발점이다.
현재 제 블로그의 장문 아티클만 보고 계십니다. 모든 포스트를 받아보시려면 /atom/everything/을 구독하시거나, 다른 구독 옵션을 확인해보세요.