완성에서 대화로

chat/completions의 비밀

분명히 대형 언어 모델과 대화를 나누고 있는데, 왜 OpenAI의 API 경로에는 '완성(completions)'이라고 쓰여 있을까요? 이 명명 방식 뒤에는 대형 언어 모델의 본질에 대한 이해가 숨어 있습니다.

흥미로운 질문

분명히 '대화(chat)'인데, 왜 「완성(completions)」이라고 부를까요?

두 회사, 두 가지 전혀 다른 명명 방식 — 그 뒤에는 대형 언어 모델의 본질에 대한 서로 다른 이해가 담겨 있습니다.

OpenAI
/chat/completions
채팅 / 완성
Anthropic
/v1/messages
정직한 메시지
OpenAI의 숨겨진 논리
대형 언어 모델의 본질은 완성(completions)입니다: 텍스트를 주면 이어서 씁니다. 채팅은 단지 대화를 「완성되어야 할 텍스트」로 형식화한 것뿐이며, 본질은 여전히 Token 완성입니다.
PM이 알아야 할 핵심 포인트
대형 언어 모델에 전송하는 모든 메시지는 하나의 텍스트 블록으로 이어 붙여지며, 모델은 그 텍스트 끝부분에서부터 계속 생성합니다. 대화는 인간이 편의를 위해 씌운 껍질에 불과합니다.
완성 관점에서 바라본 대화
모델이 실제로 「보는」 내용 (이어 붙인 텍스트)
[system] 당신은 도움이 되는 어시스턴트입니다.
[user] 자샤선녀(紫霞仙子)는 누구인가요?(중국어 예시)
[assistant]
모델이 하는 일
[assistant] 마커 이후, 확률이 가장 높은 다음 Token을 예측하고, 종료 토큰이 생성될 때까지 계속합니다
chat은 환상입니다
당신은 '대화'한다고 생각하지만, 모델은 단지 '이 텍스트 블록을 완성'하고 있을 뿐입니다. 이것이 completions의 진실입니다
PM이 알아야 하는 이유
System Prompt, 컨텍스트, 히스토리 메시지가 모두 이어 붙여져 모델에 전송되며, Token 수가 비용과 품질의 핵심 변수입니다
OpenAI의 설계 결정
이 직관적인 명명이
전 세계에 영향을 미쳤습니다.
GPT + /chat/completions 패러다임이 시장을 가장 먼저 폭발적으로 성장시켰습니다
전 세계 개발자, 프레임워크, 툴체인이 모두 이 인터페이스 설계에 맞춰졌습니다
「대화 = 완성」을 이해하는 것이 모든 AI 엔지니어링을 파악하는 출발점입니다