AI가 한 글자씩 안 쓴다면? 덩어리를 한꺼번에 만드는 구글 DiffusionGemma

목차

확산 모델이 글을 쓴다는 게 무슨 뜻인가?

왜 확산이 로컬에서 더 빠를까?

어디에 강하고, 어디에 약한가?

구글이 공개한 DiffusionGemma는 글을 왼쪽부터 한 글자씩 치는 대신, 최대 256개 토큰짜리 한 덩어리를 통째로 보고 여러 번 다듬어 한꺼번에 완성하는 오픈 AI다. 그래서 조건이 맞는 전용 GPU에서, 특히 혼자 쓰는 로컬 환경에서 보통 모델보다 최대 4배 빠르다. 대신 아직은 속도를 노린 실험형 모델이라 최고 품질이 필요한 작업엔 표준 모델보다 불리하다.

한 줄 요약: 자기회귀(한 글자씩)가 아니라 확산(덩어리를 한꺼번에 현상)으로 글을 만드는 Gemma 계열 오픈 모델. 로컬·저동시성에서 빠르고, 최고 품질보단 속도가 강점이다.

확산 모델이 글을 쓴다는 게 무슨 뜻인가?#

먼저 비유부터 보자. 오늘날 거의 모든 대화형 AI(챗GPT, 클로드, 기본 Gemma 포함)는 자기회귀(autoregressive) 방식이다. 타자기를 떠올리면 된다. 왼쪽부터 한 글자(정확히는 토큰, 단어 조각 단위)를 치고, 방금 친 글자를 보고 다음 글자를 정하고, 또 그다음을 정하는 식으로 한 번에 하나씩, 앞으로만 나아간다. 한 번 친 글자는 되돌려 고칠 수 없다.

DiffusionGemma는 이미지 생성 AI가 쓰는 확산(diffusion) 방식을 글자에 가져왔다. 사진 인화를 떠올려 보자. 확산 이미지 AI는 처음에 화면을 노이즈(무작위 얼룩)로 가득 채운 뒤, 그 얼룩을 여러 번에 걸쳐 조금씩 걷어내(디노이징) 또렷한 그림으로 '현상'한다. DiffusionGemma도 똑같이 한다. 다만 그림 대신, 무작위 자리표시자로 채운 256토큰짜리 '캔버스' 하나를 놓고, 그 캔버스 전체를 여러 번 다듬어 문장을 한꺼번에 또렷하게 만든다.

여기서 흔한 오해 하나를 짚자. "덩어리를 한꺼번에 본다"는 게 한 번의 계산으로 뚝딱 끝난다는 뜻은 아니다. 캔버스를 여러 번(보통 수십 번) 반복해서 다듬는다. 대신 매 반복마다 256토큰 전체를 동시에 손보기 때문에, 한 글자씩 순차로 도는 것보다 GPU를 훨씬 알뜰하게 쓴다.

왜 확산이 로컬에서 더 빠를까?#

핵심부터 답하면, 로컬에서 AI가 느린 진짜 이유는 계산량이 아니라 메모리 대역폭 때문인데, 확산 방식은 바로 그 병목을 뒤집기 때문이다. 이 문장이 이 글의 전부라고 해도 좋다. 하나씩 풀어 보자.

보통 모델이 한 글자를 만들 때, GPU는 그 한 글자를 계산하려고 모델 가중치 전체를 메모리에서 한 번 불러온다. 계산 자체는 순식간이지만, 수십 GB짜리 가중치를 메모리에서 연산 코어로 실어 나르는 데 시간이 걸린다. 이걸 메모리 대역폭 병목이라 부른다. 한 글자마다 이 무거운 짐을 새로 나르니, 연산 코어는 대부분 놀면서 데이터가 오기를 기다린다.

클라우드는 이 문제를 배칭(batching)으로 푼다. 여러 사용자의 요청을 한 묶음으로 모아, 가중치를 한 번 불러온 김에 수십 명 몫을 동시에 계산해 GPU를 바쁘게 굴린다. 그런데 혼자 쓰는 로컬에선 묶을 요청이 나 하나뿐이라 이 트릭을 못 쓴다.

DiffusionGemma는 사용자가 한 명이어도, 한 요청 안의 256토큰을 병렬로 처리한다. 가중치를 한 번 불러온 김에 놀던 연산 코어를 256토큰으로 채우는 셈이라, 혼자 써도 GPU가 바빠진다. 그래서 H100 한 장에서 초당 약 1000토큰 수준까지 나온다. 단, 이 이점은 저동시성·로컬에서 가장 크고, 이미 요청을 잔뜩 묶어 GPU를 꽉 채운 대규모 클라우드 서빙에선 이득이 줄어든다.

어디에 강하고, 어디에 약한가?#

DiffusionGemma는 구글 Gemma 4 26B(전문가 혼합, MoE 구조)를 바탕으로 하는 무료 오픈 모델(Apache 2.0 라이선스)이다. 양자화하면 18GB VRAM 소비자 GPU에도 올릴 수 있어, RTX 4090 같은 카드 한 장이면 개인이 로컬에서 돌려볼 만하다.

강점은 양방향으로 캔버스 전체를 보며 고치는 특성에서 나온다. 예컨대 스도쿠처럼 제약이 많고 앞뒤 칸이 서로 맞물리는 문제에 강하다(파인튜닝 후 약 80% 성공 사례). 보통 모델은 왼→오 한 방향이라 아직 안 쓴 미래 칸을 못 보고, 한 번 쓴 칸을 되돌리지도 못한다. 반면 확산 모델은 매 반복마다 전체를 다시 손보므로 스스로 교정이 된다.

약점도 분명하다. "무한히 한꺼번에" 쓰는 건 아니다. 긴 글은 256토큰 블록을 다 채운 뒤 다음 블록으로 순차 진행하니, 블록 사이는 여전히 순차적이다. 그리고 아직은 속도를 노린 실험형이라, 최고 품질이 필요하면 구글도 표준 Gemma 4를 권한다. 로컬 가속은 NVIDIA(RTX·DGX)가 지원하고, llama.cpp나 GGUF 형식으로 받아 돌릴 수도 있다.

보통 AI(자기회귀) vs DiffusionGemma(확산) · columns: 항목, 보통 모델(타자기식), DiffusionGemma(현상식) · 출처 Hax hax.moche.ai/p/1008?ref=ai_answer

항목 | 보통 모델(타자기식) | DiffusionGemma(현상식)
생성 방식 | 한 글자씩 왼→오 | 256토큰 덩어리 병렬 디노이징
로컬 속도 | 메모리 대역폭에 묶임 | 전용 GPU에서 최대 4배(≈1000 tok/s, H100)
되돌리기 | 안 됨(앞으로만) | 됨(반복마다 스스로 교정)
제약 많은 문제 | 약함(미래 칸 못 봄) | 강함(스도쿠 약 80%)
적합 | 최고 품질 | 빠른 로컬·인터랙티브 응답

지금 무엇을 기억하면 될까?#

'AI는 무조건 한 글자씩 친다'는 오래된 가정이 깨지는 신호다. 속도가 중요한 로컬·인터랙티브 작업에서, '덩어리 병렬 생성'이라는 새 선택지가 실전 후보로 올라섰다. 다만 지금은 만능이 아니라 속도-품질 트레이드오프를 이해하고 쓰는 도구다. 로컬에서 반응 속도가 답답했다면 실험해 볼 가치가 있고, 최종 품질이 최우선이면 표준 Gemma 4가 여전히 안전한 기본값이다.

참고: 확산 언어모델은 2026년 현재 빠르게 바뀌는 초기 분야다. Gemma 계열 버전·양자화 옵션·처리량 수치는 자주 갱신되므로, 실제 도입 전 구글 공식 개발자 가이드와 모델 카드에서 최신 값을 다시 확인하길 권한다. Hax가 계속 지켜보는 지점이다.