필립 틸레(Philipe Tillet)는 OpenAI의 엔지니어로, CUDA 전문가가 아니라도 효율적으로 GPU 코드를 쓸 수 있게 해 주는 언어 Triton과 그 하위 레이어 언어 Gluon을 만든 사람입니다. 2019년 인턴으로 OpenAI에 합류해서 오랫동안 사전 학습(Pre-training) 효율성 영역을 맡아 왔고, 지금은 모델이 스스로 커널을 작성하고 최적화 의사결정을 내리는 과정을 가이드하고 확인하고 있습니다. 버트런드 러셀과 마음의 철학에 깊은 관심을 가지고 있다고 합니다.
매튜 페라리(Matthew Ferrari)는 OpenAI의 추론 시스템 엔지니어입니다. 요청을 어떻게 분산시킬지, 하드웨어를 어떻게 최대한 활용할지, 문제가 생겼을 때 모델을 어떻게 활용해서 원인을 찾을지 등 추론 스택 전반의 엔지니어링 문제를 담당하고 있습니다.
아마 ChatGPT 쓰시는 분 많을 거라고 생각합니다. 여러분이 ChatGPT에 보내는 요청 하나를 받아서 처리하는 과정을 담당하는 시스템을 만들고 운영하는 사람들이 있습니다 - ‘모델’을 만드는 사람들이 아니라, 그 모델이 10억명 사용자의 요청을 받아내면서도 적절하게 비용(Cost)과 지연 시간(Latency)를 계속해서 개선해 가는 사람들이예요.
오늘 인터뷰는 OpenAI에서 그 현장에서 일하는 두 사람, 필립 틸레와 매튜 페라리와의 대화입니다.
오늘 인터뷰가 흥미로운 이유는 두 가지라고 생각하는데, 하나는 ‘사용자가 ChatGPT에서 엔터를 누른 다음 GPU까지 요청이 도달하는 경로를 실무자로부터 차근차근 들을 수 있다는 것’이고, 다른 하나는 ‘그 경로를 최적화하는 작업을 이제 사람이 아니라 모델이 상당 부분 맡고 있다는 것’ 때문입니다. 사람이 두 달 걸린 프로젝트를 모델이 며칠 만에 재현했다는 이야기, 사람이 쓰라고 만든 언어 Triton이 결국 ‘모델을 위한 언어’ Gluon으로 이어졌다는 이야기가 그 증거구요.
이 인터뷰를 읽으시기에 앞서, 튜링포스트 코리아에서 이전에 발행했던 토큰 택소노미에 대한 아래 글을 한 번 보시면 더 인터뷰를 쉽고 재미있게 읽으실 수 있을 것 같습니다:
자, 그럼 지금부터 OpenAI 추론팀과의 인터뷰, 시작하겠습니다.
Q. 안녕하세요 두 분, 시간 내 주셔서 감사합니다. 오늘 ChatGPT에 요청을 보낼 때 그 뒤에서 무슨 일이 벌어지는지, 그리고 그걸 만드는 두 분의 일이 최근 어떻게 바뀌고 있는지 이야기해 보려고 해요.
필립: 불러주셔서 감사합니다.
매튜: 감사합니다.
Q. 지난 7월 블로그 글에서 "효율성(Efficiency)이 더 많은 사람들에게 지능을 배포하는 데 핵심이다"라고 쓰셨는데요. 두 분에게 효율성, 그리고 지능의 민주화는 어떤 의미인가요?
필립: ‘지능의 민주화’는 OpenAI에서도 아주 중요한 미션으로 생각하고 있는 말이예요. 그런데 현실은, 우리가 가진 컴퓨팅 자원은 한정돼 있어요. 그래서 그걸 모든 사용자에게 적절하게 잘 나눠서 제공하는게 아주 중요한 일입니다.
따라서, 추론 스택을 더 빠르고 효율적으로 만들수록, 같은 자원으로 무료 사용자든 유료 사용자든 더 광범위하게, 많은 사람들에게 제품을 배포할 수 있어요. 효율성이 곧 ‘배포의 범위’인 셈이죠.
Q. 필립은 2019년 인턴으로 들어와서 Triton을 만드셨는데요. 그때와 지금을 비교한다면 추론과 효율성 영역에서 뭐가 가장 많이 바뀌었나요?
Triton은 필립 틸레가 만든 오픈소스 GPU 프로그래밍 언어이자 컴파일러입니다. Python과 비슷한 문법으로 커스텀 GPU 커널(특히 딥러닝 연산용)을 작성할 수 있게 해주는데, CUDA를 직접 다루는 것보다 훨씬 쉬우면서도 손으로 최적화한 코드에 필적하는 성능을 낼 수 있도록 설계됐습니다.
개발자가 저수준 메모리 관리나 스레드 스케줄링을 일일이 신경 쓰지 않아도, 컴파일러가 자동으로 타일링·메모리 접근 최적화를 처리해주는 게 핵심이라고 합니다. 이후 PyTorch 등 주요 딥러닝 프레임워크의 백엔드에도 폭넓게 채택되면서, 사전 학습·추론 효율화 모두에서 업계 표준급 도구로 자리잡았습니다.
필립: 2019년에 제가 입사했을 때는 '추론(Inference)'이라는 개념 자체가 없었어요. API도 없고 제품도 없었구요. 저는 GPT-3.5 이전 모델들의 사전 학습 효율성을 높이는 작업을 4~5년 정도 했는데, 그러다가 제품이 나오고 산업이 커지면서 추론의 비중이 급격히 커졌죠.
스케일도 지금 돌아보면 놀랍습니다. 제가 들어왔을 때는 사전 학습용 V100 GPU 1만 개짜리 클러스터 하나가 전부였거든요. 지금 기준으로는 조족지혈에 불과하죠.
Q. 매튜는 이미 OpenAI 내에 LLM 모델을 서빙하기 위한 대부분의 시스템이 갖춰진 시점에 들어오신 걸로 알아요. 조인 후 일하시면서 가장 흥미로웠던 점은 뭐였나요?
매튜: 지금 생각해도 엄청난 스피드로 모든 게 바뀌어온 것 같아요 - 불과 1년 사이에 말이죠. 1년 전만 해도 커널을 수작업으로 튜닝하거나, 스택의 한두 개 레이어를 들여다보는 게 제 일이었는데, 지금은 Codex, GPT-5.6 Sol 같은 도구들 덕분에 스택의 훨씬 깊은 곳까지 성능을 분석할 수 있게 됐어요. 엔지니어 한 명이 전체 스택에 미칠 수 있는 영향력이 그만큼 커졌습니다.
Q. 모델이 그저 코딩을 해 준다는 수준을 넘어서 실제 엔지니어링 문제를 같이 생각하고 풀기 시작했다고 느낀 변곡점은 언제였나요?
매튜: 저희도 자주 이야기하는 토픽인데요, 저로서는 GPT 5.4 출시가 결정적인 순간이었다고 생각합니다.
2025년 12월부터 2026년 1월까지 두 달 동안 수동으로 진행했던 프로젝트가 하나 있었어요. 그런데, GPT 5.4가 나온 뒤에 약간의 반복 작업을 거쳐서, 그 두 달치의 작업을 며칠 만에 그대로 재현할 수 있었어요. 저희가 일상적으로 하는 엔지니어링 업무에 엄청난 속도를 내게 해 주는 촉매가 됐죠.
필립: 저도 비슷해요. Codex가 나오면서 내부적으로 엔지니어링에 모델을 활용하는 비중이 많이 늘었고, GPT 5.4가 확실한 전환점이었죠. 그 이후로 5.5, 5.6 같은 새 세대가 나올 때마다 그 비중이 기하급수적으로 커지고 있어서, 작업 방식 자체가 빠르게 바뀌고 있습니다.
Q. 그렇군요. 자 그럼, 이제 본론으로 가 볼게요. 만약 ChatGPT를 사용하는 사람이 최신 모델에 요청을 보내면, 추론이라는 측면에서는 전체적으로 어떤 일이 일어나나요?
매튜: 네, 한 번 순서대로 따라가 볼게요.
시작은 사용자 기기죠. 노트북이든 ChatGPT 앱이든, 거기서 돌아가는 하네스(Harness) 코드가 OpenAI API로 요청을 보내고, 텍스트가 토큰(Token)으로 바뀝니다. 여기서 하나 강조하고 싶은 게 있는데, 이 상위 레이어가 효율적으로 작동하지 않으면 다운스트림 작업을 아무리 최적화해도 엔드투엔드 효율은 높을 수가 없어요.
토큰은 글로벌 로드 밸런싱, 리전 로드 밸런싱, 게이트웨이를 거쳐서 GPU 위에서 돌아가는 추론 엔진(Inference Engine)에 도달합니다. 추론 엔진은 디바이스 코드인 커널(Kernel)을 호출해서, 다음 토큰을 예측하기 위한 방대한 수학 연산을 수행하고요.
추론 엔진의 오케스트레이션, 배칭(Batching), 스케줄링 연산 상당수는 GPU가 아니라 전통적인 CPU에서 돌아갑니다. 그래서 CPU도 중요한 성능 상의 병목 지점이 될 수 있는 거구요.
그리고 이 모든 것 위에 캐싱 인프라(Caching Infrastructure)가 있습니다. 동일하거나 비슷한 프리픽스를 가진 요청이 들어오면 같은 연산을 다시 하지 않게 막아주는 층이에요.
프리픽스(prefix)란 입력 프롬프트(토큰 시퀀스)의 앞부분을 뜻하는데, 시스템 프롬프트나 대화 히스토리처럼 여러 번의 요청에서 반복되는 경우가 많습니다. LLM 추론에서는 원래 입력 토큰 전체를 한 번에 병렬로 처리하는 '프리필(prefill)' 단계에서 각 토큰의 KV 캐시를 계산하는데, 프리픽스 캐싱은 이때 새 요청의 앞부분이 이전에 계산해둔 프리픽스와 일치하면 그 KV 캐시를 재사용하고, 일치하지 않는 새로운 부분만 계산하는 기법입니다.
즉 2,000토큰짜리 시스템 프롬프트 뒤에 50토큰의 새 질문이 붙는 경우, 캐싱 없이는 2,050토큰 전체를 프리필해야 하지만 캐싱이 있으면 앞의 2,000토큰은 스킵하고 새로운 50토큰만 처리하면 되니 추론 속도와 비용 효율성이 크게 향상됩니다.
Q. CPU, GPU, 캐시 말고도 최적화해야 하는 영역이 더 있나요?
필립: 하드웨어 계층에서는 GPU, 커스텀 가속기(Custom Accelerators), CPU, 네트워크, 스토리지 – 사실상 모든 자원이 최적화의 대상이에요.
매튜: 소프트웨어 쪽도 마찬가지입니다. 하네스, API 레이어, 추론 엔진, 가속기 커널, 로드 밸런싱, 엔진 스케줄링까지 레이어 전부가 최적화 대상이에요. 어느 한 곳만 보면 안 됩니다.
Q. 필립이 쓴 글에서, 원래 사람이 쓰라고 만든 Triton이 이제 '모델을 위한 언어'가 됐다는 내용이 있던데, 그건 무슨 의미인가요?
필립: 아까도 언급되었던 Triton은 제가 커널을 쉽게 쓰려고 만든 고수준 언어(High-level Language)예요. 메모리 배치나 스케줄링 같은 세부 결정을 컴파일러가 대신 내려주기 때문에 개발자는 편하지만, 그만큼 세밀한 제어권은 컴파일러 쪽에 있었죠.
그런데 AI 모델의 성능이 좋아지면서 상황이 달라졌어요. 이런 저수준 최적화 결정을 컴파일러가 자동으로 내리는 것보다, 모델이 직접 내리는 게 더 유리해진 거예요. 문제는 고수준 언어인 Triton으로는 그런 세밀한 제어가 어렵다는 점이었고, 그래서 제가 Triton의 하위 레이어에 해당하는 저수준 언어 Gluon을 만들었습니다.
Gluon은 컴파일러가 대신 판단해주는 부분을 줄이고 AI 모델이 직접 저수준 최적화를 통제할 수 있게 해주는 언어예요. 그 결과 지금은 AI 모델들이 GPU나 커스텀 가속기용 커널을 짤 때 Triton보다 Gluon을 더 많이 쓰고 있습니다.
Q. 커널 개선으로 GPT‑5.6 Sol의 서빙 비용이 20% 줄었다고 하셨는데요. 사용자한테는 어떤 혜택으로 돌아가나요?
매튜: 네 가지 방향에서 사용자에게 혜택이 있다고 할 수 있을 것 같습니다. 첫째는, 같은 자원으로 더 많은 사용자에게 서비스를 배포할 수 있어서 좋은 거구요. 둘째는, 트래픽의 규모가 같은 상황에서도 지연 시간(Latency)을 줄일 수 있어요.
필립: 셋째는 신뢰성(Reliability)이에요. 대규모 서비스를 안정적으로 쓸 수 있는 용량이 확보되니까요. 그리고 넷째는, 더 직접적으로, 비용 절감분을 고객에게 돌려주는 것이겠죠 - GPT‑5.6의 가격에 그 절감분이 반영되는 식으로요.
Q. 추론 엔지니어링의 영역에서, 모델과 엔지니어 사이의 역할 분담은 어떻게 되나요? Human-in-the-Loop 관계는 어떻게 유지되고 있는지 궁금해요.
매튜: 구체적인 사례를 하나 말씀드릴게요. GPT 5.5 출시 당시에 모델(Codex)이 대규모 프로덕션 트래픽 패턴 – 요청 형태, 수량 같은 것들 – 과 수천 개의 데이터 포인트를 직접 분석해서, 가속기 간의 로드 밸런싱 휴리스틱을 최적화했어요. 예전에 사람이 손으로 조정하던 방식보다 훨씬 효율이 높았어요.
필립: 다만, 시스템에 문제가 생겼을 때 최종 책임은 사람이 집니다. 그래서 여전히 Human-in-the-Loop 구조를 유지하면서 감독합니다.
매튜: 그렇긴 한데, 모델에게 몇 시간씩 자율적으로 맡기는 영역도 분명히 있어요. 수학적으로 검증이 명확한 커널 작성이 대표적이죠.
필립: 네, 디버깅도 마찬가지예요. 대규모 프로덕션 환경에서 하드웨어, 소프트웨어, 리눅스 커널 드라이버가 얽힌 복잡한 버그의 원인을 추적하는 일은 모델이 몇 시간이고 자율적으로 돌게 둡니다.
Q. 모델이 시스템 상태를 관찰하고 행동하는 걸 보시잖아요. 그럴 때, 모델이 시스템에 대한 제대로 된 '내부 표현(Internal Representation)'을 갖고 있다고 생각하게 되시나요?
매튜: 저는 모델이 세 가지의 조합으로 동작한다고 봐요. 추론 능력(Reasoning), 사실적 지식(Factual Knowledge), 그리고 컨텍스트(Context)요. 긴 생각의 사슬(Chain of Thought)을 통해서 컴퓨터와 소프트웨어가 어떻게 동작하는지를 꽤 잘 추론하고, 창의적인 해법도 내놓습니다.
필립: 가장 큰 병목은 검증(Verification)과 평가라고 생각합니다. 하위 레벨 커널은 검증이 쉬워요. 그런데 상위 레벨의 로드 밸런서나 큐 시스템은 다릅니다. 미지의 예외 상황(unknown unknowns)을 검증하는 게 훨씬 어려워요.
그래서 엔지니어의 핵심 역할은 모델이 전체 스택 중에서 가장 중요한 병목에 집중하도록 방향을 잡아주는 거라고 봅니다.
Q. GPT 5.6에 적용된 추측적 디코딩(Speculative Decoding) 최적화는 어떻게 진행됐나요?
추측적 디코딩(Speculative Decoding)은 작은 드래프트 모델이 여러 토큰을 빠르게 미리 생성하면, 큰 타겟 모델이 이를 한 번의 순전파로 병렬 검증해서 맞는 토큰은 채택하고 틀린 지점부터는 직접 다시 생성하는 기법이에요.
LLM 추론의 병목이 연산량보다는 메모리 대역폭에 있다는 점을 활용해서, 한 번의 메모리 읽기로 여러 토큰을 동시에 처리함으로써 GPU 활용도를 높이는 방식입니다. 검증 과정이 타겟 모델의 확률 분포를 그대로 따르기 때문에, 결과물의 품질은 타겟 모델이 혼자 생성한 것과 동일하게 보장되면서 속도만 향상시킬 수 있다는 게 핵심입니다.
매튜: 추측적 디코딩은 토큰을 미리 예측해서 응답 속도를 올리는 기법이죠. GPT 5.6에서는 추측 모델의 아키텍처, 시스템, 학습 루프 전체를 최적화하는 데 모델을 적극적으로 썼습니다.
사람이 하면 몇 달 걸릴 실험과 연구를 모델이 대신하니까, 탐색 공간(Search Space)이 비약적으로 넓어졌어요. 예전에는 아이디어가 있어도 구현이 너무 복잡해서 시도조차 못 하던 것들이 있었거든요. 지금은 그런 것들을 쉽게 실험해 볼 수 있습니다.
Q. 추론과 효율화를 담당하는 엔지니어링팀은 어떻게 구성돼 있나요? 그리고 어디가 병목이냐를 두고 의견이 갈릴 때는 어떻게 해결하세요?
필립: 사실 OpenAI는 조직 간 경계가 엄격하지 않고, 꽤 협력적으로 돌아가는 편이에요.
의견 대립 문제는, 사실 주관적으로 다투지 않아요. 성능 데이터와 비효율의 원인에 대해서 객관적인 데이터(Source of Truth)를 명확히 측정하니까요.
그리고 Codex 덕분에 엔지니어들이 스택의 여러 레이어를 유연하게 넘나들 수 있게 됐어요. 그래서 중요한 문제에 자원을 집중시키기가 쉬워졌습니다.
Q. ChatGPT를 사용자들이 쓰다가 가끔 "모델이 다운됐다"고 느낄 때, 추론·효율성 측면에서는 실제로 무슨 일이 일어난 건가요?
매튜: 그 원인은 다양해요. 클라우드 서비스 사업자 측의 장애일 수도 있고, API 서버 문제일 수도 있고, 최적화 과정에서 큐(Queue) 불균형이 생긴 경우도 있죠.
필립: 다만 한 가지는 분명히 말씀드리고 싶어요. GPT 5.6 같은 특정 모델을 쓸 때 모델 자체의 지능이 떨어지는 일은 절대 없도록 철저히 테스트합니다. 부동소수점 연산 순서가 바뀌면서 미세한 수치 차이가 생길 수는 있는데, 지금은 그런 변경 사항이 모델의 동작을 바꾸지 않도록 엄격하게 모니터링하고 있어요.
Q. 추론 스택의 관점에서, 여러 모델 버전과 추론 노력(Reasoning Effort) 옵션은 실제로는 어떻게 작동하나요?
매튜: ‘추론 노력’은 모델이 내부 생각의 사슬(Chain of Thought)이 작동하는 과정에서 더 많은 토큰을 생성하도록 지시하는 거예요. 추론 스택의 입장에서 보면 특별할 게 없습니다. 그냥 토큰이 더 많이 생성되는 요청일 뿐이에요.
필립: 조금 더 큰 틀에서 본다면, AI 시스템은 지능(Intelligence), 지연 시간(Latency), 비용(Cost) 세 축 사이의 트레이드오프 위에 있는 거예요 - 하나의 모델로 모든 축에서 최고일 수는 없죠.
그래서 개발자의 필요 – 비용에 민감한지, 지연 시간에 민감한지 – 에 맞게 고를 수 있도록, 파레토 최적 전선(Pareto Frontier) 위에서 여러 옵션을 제공하는 겁니다.
Q. 앞으로 도전해야 한다고 생각하시는 다음 단계의 병목이라든가, 흥미로운 과제가 있다면요?
필립: 안전성을 유지하면서 모델 비용을 낮추고, 데이터센터 전력 와트(Watt)당 더 높은 지능을 끌어내는 것. 이게 저희가 계속 붙잡고 고민하고 있는 문제예요.
매튜: 하드웨어 쪽도 재미있습니다. 저희는 NVIDIA 하드웨어를 정말 좋아하고, 거기서 최선의 성능을 뽑아내고 있어요.
필립: 동시에 커스텀 칩 Jalapeño(할라페뇨) 같은 차세대 가속기를 평가하고 소프트웨어를 통합하는 작업도 흥미롭게 진행하고 있구요.
Q. 마지막 질문이예요 - 제가 항상 인터뷰할 때 드리는 질문인데요. 두 분의 생각이나 사고방식에 큰 영향을 준 책이나 경험이 있다면 어떤 건가요?
필립: 버트런드 러셀(Bertrand Russell)의 철학 서적들이요. 그리고 대학원 시절에 읽었던 마음의 철학(Philosophy of Mind) 논문들이 지금도 마음 속에 남아 있습니다.
매튜: 대학 시절에 CPU 알고리즘을 GPU로 옮기면서 성능이 1,000배 넘게 올라가는 걸 눈앞에서 보여주셨던 교수님들 수업이 지금도 생생해요. 그 경험이 지금 하는 일의 출발점이었습니다.
Q. 그렇군요. 오늘 두 분 말씀 감사합니다.
필립/매튜: 감사합니다.
오늘 에피소드가 재미있으셨다면, 커피 한 잔으로 후원해 주세요. ☕ 여러분의 피드백, 후원은 큰 힘이 됩니다!
읽어주셔서 감사합니다. 친구와 동료 분들에게도 뉴스레터 추천해 주세요!




