[세컨드브레인 개발기] 16. 122B와 27B — 커도, 빠른 것도 다 이긴 건 아니었다
15편 마지막에 122B 모델로 갈아탔다. 큰 모델로 바꾸면 다 나아질 거라 믿었다. 직접 비교해 보니, 더 큰 모델이 이긴 건 속도뿐이었다. 지능은 아니었다. 이 머신에는 사실 두 개의 후보가 있었는데, 크기로 보면 122B, 품질로 보면 27B였다. 그 둘을 이 머신에서 실제로 재보고 정리한 기록이다.
올리고 나서 좋은 말만 적어뒀다
122B를 올리던 시절의 기록에는 좋은 말만 가득하다. 모델 항목에는 "122B는 훨씬 똑똑함", 품질에는 "프런티어급"이라고 적혀 있고, 속도는 85~90 tok/s로 목표였던 81을 넉넉히 넘겼다. 컨텍스트도 256K로 늘었다. 기록을 읽으면 이 머신이 최고의 선택을 한 것처럼 보인다.
어느 것 하나 틀린 말은 아니었다. 숫자도 사실이었다. 문제는 그 숫자들이 항상 나오는 값이 아니었다는 것, 그리고 "훨씬 똑똑함"이라는 결론이 실측과 어긋났다는 것이다. 사실관계가 틀린 게 아니라, 비교를 빠뜨린 채 결론을 적어 둔 것이다.
속도는 베스트케이스였다
81 tok/s라는 숫자는 07-25 기록에서 나왔다. 당시엔 기존 29 tok/s 대비 2.8배 향상이라며 기록에 남겼고, 15편에도 실었다. 그런데 이 숫자는 조건이 갖춰질 때만 나온다. 워밍업이 끝나고, 단일 요청이고, 영어 텍스트를 처리하고, 스펙디코딩 수용률이 높아야 한다. 일상에서 만나는 입력은 거의 그 조건이 아니었다.
한국어 회의록을 올리면 15 tok/s로 떨어졌다. 같은 모델, 같은 머신인데 언어만 한글로 바뀌었을 뿐인데도, 세 배나 느려졌다. 측정에는 주의가 하나 더 필요한데, 첫 요청은 커널 JIT 컴파일 때문에 비정상적으로 느렸다. 122B가 3.6 tok/s로 찍힌 게 그 경우다. 그래서 측정은 반드시 워밍업을 한 뒤에 해야 한다. 뒤에 스펙디코딩 토큰 수를 6에서 3으로 줄이고 어텐션 백엔드를 바꾸니 28~29 tok/s까지 올라갔다. 개선됐지만, 여전히 영어의 절반 수준이다. 조건별 실측을 붙여 두면 이렇다.
| 조건 | 속도 |
|---|---|
| 한국어 산문 · 튜닝 전 | 15 tok/s |
| 한국어 산문 · 스펙 6→3 + FLASHINFER | 28~29 tok/s |
| 256K 컨텍스트 실측 | 41.8 tok/s |
| 영어 트래픽 · 단일 스트림 | 81~90 tok/s |

지능 비교는 표가 말해준다
속도만으로 모델을 고를 수는 없어서, 지능도 직접 비교했다. 07-25 실측 세션이 벤치마크의 원본이고, 결과는 표 하나로 정리됐다.
| 항목 | 122B-A10B | 27B |
|---|---|---|
| 연구 방법론 비평 | 외부검증·진단유효성 지적 | 더 예리 — 교란변수(연령·성별·흡연력) 미통제 지적 |
| 정량 임상추론 (PPV) | 44.3%/12.2% 완벽 | 동일하게 완벽 |
| 롱테일 지식 | IEC 62985를 "전기차 충전"이라 환각 (Dice↔IoU는 정답) | 모르면 모름이라 정직 (Dice 역변환은 오답) |
| 비전 | 도형·색·글자·표 정확 | 동일하게 정확 |
| 표 숫자 판독 | 100% | 100% |
| 컨텍스트 | 262,144 | 262,144 (동일) |
| 속도 (코드/산문) | 41.8 / 36.5 tok/s | 29.4 tok/s |
결과는 단순했다. 정량적인 일은 둘 다 완벽하게 해냈고, 비전과 컨텍스트도 동일했다. 차이가 갈린 건 두 군데였다. 하나는 논문을 비평하는 일에서 27B가 더 예리했다. 교란변수 하나하나를 짚어냈다. 다른 하나는 롱테일 지식에서 122B가 모르는 걸 지어냈다는 것이다. IEC 62985라는 CT 선량 관련 표준을 "전기차 충전 표준"이라고 답했다. 모르면 모른다고 하는 것보다, 아는 척 지어내는 것이 더 나쁘다는 걸 그때 다시 느꼈다. 27B도 완벽하진 않아서, Dice와 IoU를 뒤집는 계산은 틀렸다. 그래도 모름을 모름이라고 말하는 태도가, 지어내는 것보다 훨씬 다루기 좋았다.
그래서 당시 장부에는 "모델 자체 품질은 27B가 위"라고 남겼다. 122B는 더 나은 모델이 아니라, GB10 저대역폭이라는 조건에서 돌릴 수 있는 최선의 선택이었다. 이 문장이 이 편의 결론이기도 하다.
이 비교가 항상 깨끗하게 나온 것은 아니다. 측정을 두 번 틀렸다. 한 번은 채점용 프로브에 thinking이 켜져 있었다. thinking이 켜지면 모델은 추론 과정을 본문이 아니라 reasoning_content로 보낸다. 프로브는 본문만 읽었다. 추론은 다른 곳으로 빠지고 본문은 비어서 0점이 나왔다. A3B가 0/8로 보인 것이 바로 그 상태였다. 두 모델을 같은 조건에서 다시 재니 제대로 점수가 나왔다.

또 한 번은 정규식으로 채점하다가 틀린 답을 맞다고 통과시킨 일이다. 채점 도구가 틀리면 결론이 통째로 뒤집힌다. 지능 비교를 믿기 전에, 그 비교에 쓴 줄자부터 의심해야 한다는 걸 이번에 배웠다.
측정하면서 고친 오해가 하나 더 있다. 처음에 27B는 텍스트 전용이라 생각했다. gpugeant 머신에 따로 비전 모델이 떠 있길래 그렇게 짐작한 것인데, 찾아보니 27B 설정에 vision_config가 있었고 실제 이미지를 보내면 정확히 판독했다. 27B도 멀티모달이었다. 122B가 이긴다고 믿었던 항목 중 하나가 여기서도 지워졌다.
GB10의 역설
그럼 왜 122B를 올렸나. 여기 하드웨어가 만든 역설이 있다. 같은 27B 모델을 두 머신에서 돌리면 결과가 갈린다. 대역폭이 273GB/s인 GB10에서는 27B가 11~15 tok/s로 처진다. 주력으로 쓰기 어려운 속도다. 그런데 대역폭이 넉넉한 L40 머신에서는 같은 모델이 29.4 tok/s를 낸다. 모델은 같은데, 돌리는 하드웨어에 따라 쓸 수 있느냐 없느냐가 갈린다.
속도는 대역폭을 활성 파라미터와 바이트로 나눈 값이다. 27B는 토큰당 활성 파라미터가 27B 전부다. 122B는 총 파라미터는 122B지만 토큰당 활성은 10B다. 대역폭이 좁은 GB10에서는 읽는 양이 적은 쪽이 이긴다. 그래서 122B가 41.8 tok/s로 빠르다.
122B 채택은 품질 때문이 아니라 대역폭 때문이다. 이게 이번 비교의 가장 큰 결론이다. 크다고 좋은 게 아니라, 좁은 대역폭에서 버틸 수 있는 구조가 필요한 것이다.

지금은 어떤 모델이 일하고 있나
2026-08 서빙 구성을 보면, 122B는 운용 중단으로 적혀 있다. 주력 자리는 deepseek-v4-flash가 채웠고, 27B는 gpu-remote-01로 옮겨서 일하고 있다.
122B를 내린 데는 느린 것 외에도 이유가 있었다. 유휴 상태였다가 첫 요청이 들어오면 96초를 기다려야 했고, 1분 반을 화면 앞에서 기다리는 일은 실사용에서는 견디기 어렵다. 게다가 동시 요청이 몰리면 처리량이 반토막이 났고, keepalive 핑을 보내야 살아 있었다. 속도가 빠른 모델이어도, 쓰는 쪽이 불안하면 주력이 되기 어렵다.
큰 모델에 건 기대는, 크면 다 잘할 거라는 믿음이었다. 비교 결과는 달랐다. 지능은 27B가 나았고, 122B는 대역폭이라는 제약에 답한 모델이었다. 크면 좋을 거라는 믿음은, 직접 재보기 전까지는 믿음일 뿐이다.