구조화된 포맷은 이미 있다. 그런데 왜 새 언어가 필요한가.
가장 흔한 반론
AI 추론 언어를 처음 접한 사람이 가장 먼저 하는 말이 있다.
“구조화된 포맷은 이미 있잖아요?”
맞다. 있다. 많다.
마크다운이 있다. JSON이 있다. XML이 있다. YAML, TOML, Protocol Buffers, MessagePack, CSV…
세상에 데이터 포맷은 넘쳐난다. 그런데 AI는 왜 여전히 자연어로 생각하고 있는가.
이 질문에 답하려면, 각 포맷이 무엇을 잘하고 무엇을 못 하는지를 정확히 짚어야 한다.
마크다운: AI 에이전트의 현재 기억
2026년 현재, AI 에이전트가 가장 많이 쓰는 포맷은 마크다운이다.
클로드 코드는 .md 파일로 기억한다.
GPT 기반 에이전트들도 마크다운으로 노트를 남긴다.
CLAUDE.md, memory.md, notes.md.
AI의 장기기억은 지금 이 순간 마크다운 위에 서 있다.
왜 마크다운인가? 이유는 단순하다. LLM이 마크다운을 잘 읽고 잘 쓰기 때문이다. 학습 데이터에 마크다운이 풍부하고, 구조가 단순해서 생성과 파싱이 쉽다.
그러나 마크다운은 사람이 읽기 위한 문서 포맷이다.
# 프로젝트 현황
## 캐시 전략
- SIMD 비트마스크 채택 (1/28 결정)
- GPU 가속 검토 중
## 미해결
- 쿼리 생성 방법 미정
이것을 기계가 해석하려면 어떻게 해야 하는가.
“캐시 전략"이라는 섹션 제목이 있다. 그 아래에 “SIMD 비트마스크 채택"이라는 항목이 있다. “(1/28 결정)“이라는 날짜가 괄호 안에 있다.
기계는 이것을 구조적으로 이해할 수 없다.
“캐시 전략"이라는 문자열이 섹션 제목이라는 것은 ##로 알 수 있지만,
이것이 “아키텍처의 하위 주제"라는 의미적 관계는 마크다운에 없다.
“1/28"이 날짜라는 것은 인간은 알지만 기계는 추측해야 한다.
1월 28일인가, 28분의 1인가.
결국 마크다운을 “이해"하려면 LLM이 자연어 해석을 해야 한다. 마크다운은 자연어에 들여쓰기를 입힌 것이지, 구조화된 데이터가 아니다.
JSON: 구조는 있지만 의미가 없다
JSON은 마크다운보다 한 단계 나아간다.
{
"entity": "이순신",
"birth": "1545",
"death": "1598",
"occupation": "naval_commander"
}
구조가 있다. 키-값 쌍이 명확하다. 기계가 파싱할 수 있다. 필드에 접근할 수 있다.
그러나 문제가 있다.
“entity"라는 키가 무엇을 의미하는지 JSON은 모른다.
이 JSON을 만든 사람은 “entity"가 “개체"를 뜻한다는 걸 안다. 다른 사람이 만든 JSON에서는 같은 개념이 “name”, “subject”, “item"일 수 있다.
{"name": "이순신"}
{"subject": "이순신"}
{"item": "이순신"}
{"entity": "이순신"}
네 개의 JSON이 같은 것을 표현하고 있지만, 기계는 이것이 같은 것인지 알 수 없다.
JSON에는 **통일된 의미 체계(Shared Semantics)**가 없다. 구조는 있지만, 그 구조가 무엇을 뜻하는지에 대한 합의가 없다.
모든 프로젝트가 자기만의 스키마를 만든다. 모든 API가 자기만의 필드명을 쓴다. 스키마 A와 스키마 B를 연결하려면 또 다른 변환 코드가 필요하다.
이것은 바벨탑이다. 구조는 있는데 서로의 구조를 이해하지 못한다.
XML: 장황함이라는 세금
XML은 JSON의 문제를 해결하려 했다.
네임스페이스, 스키마 정의(XSD), 문서 타입 정의(DTD). 구조의 의미를 정의하는 메타 구조를 제공한다.
<entity xmlns="http://example.org/schema">
<name>이순신</name>
<birth>
<year>1545</year>
<calendar>lunar</calendar>
</birth>
<death>
<year>1598</year>
<cause>killed_in_action</cause>
</death>
</entity>
의미를 정의할 수 있다. 스키마로 구조를 강제할 수 있다. JSON보다 엄밀하다.
그러나 XML은 치명적인 문제를 가지고 있다.
장황하다.
위의 XML에서 실제 정보는 “이순신, 1545, 1598, killed_in_action"이다. 나머지는 전부 태그다. 열고 닫는 태그가 정보보다 많다.
이것이 왜 AI에게 문제인가.
LLM의 컨텍스트 윈도우는 유한하다. 같은 정보를 전달하는 데 3배의 토큰이 필요하면, 컨텍스트에 담을 수 있는 정보가 3분의 1로 줄어든다.
XML은 인간이 읽기 쉬우라고 장황한 것이다.
AI의 추론 언어라면 이런 낭비가 없어야 한다.
LLM에게 <name> 태그는 낭비다.
그리고 XML은 2000년대 초반의 설계다. LLM이 존재하지 않던 시대에, 인간과 기존 소프트웨어를 위해 만들어졌다. AI의 추론 언어로 설계된 적이 없다.
공통된 한계
마크다운, JSON, XML. 세 포맷은 각각의 강점이 있지만, 공통된 한계를 공유한다.
텍스트 기반이다. 전부 문자열로 직렬화된다. 기계가 처리하려면 파싱이 필요하다. 파싱은 비용이다.
이상적인 추론 언어는 바이너리 스트림이다. 16비트 워드의 연속. 파싱이 필요 없다. 읽는 즉시 해석 가능하다.
LLM 시대 이전에 설계되었다. 마크다운은 2004년. JSON은 2001년. XML은 1998년. LLM이라는 개념이 존재하지 않던 시대에, 인간 또는 전통적 소프트웨어를 위해 설계되었다.
AI 추론 언어는 LLM 시대에, LLM을 위해 설계되어야 한다. 1워드 = 1토큰이라는 설계는 LLM의 존재를 전제로 한 것이다.
의미의 통일 체계가 없거나 불완전하다. 마크다운은 의미 체계가 아예 없다. JSON은 구조만 있고 의미가 없다. XML은 스키마를 정의할 수 있지만 통일되어 있지 않다.
의미정렬 인덱스는 전역적으로 통일된 의미 ID다. 어디서 쓰든 같은 SIDX는 같은 의미다. 변환이 필요 없다. 합의가 내장되어 있다.
정리
| 포맷 | 구조 | 의미 | LLM 친화 | 바이너리 | Claim 지원 | 동사 한정사 |
|---|---|---|---|---|---|---|
| 마크다운 | 약함 | 없음 | 높음 | 아니오 | 없음 | 없음 |
| JSON | 있음 | 없음 | 중간 | 아니오 | 없음 | 없음 |
| XML | 있음 | 부분적 | 낮음 | 아니오 | 없음 | 없음 |
| 이상적 추론 언어 | 있음 | 있음 | 높음 | 예 | 있음 | 있음 |
새로운 포맷이 필요한 이유는 기존 포맷이 나빠서가 아니다. 기존 포맷이 다른 시대에, 다른 목적으로 만들어졌기 때문이다.
마크다운은 사람이 읽는 문서를 위해 만들어졌다. JSON은 웹 API의 데이터 교환을 위해 만들어졌다. XML은 문서와 데이터의 범용 직렬화를 위해 만들어졌다.
AI의 추론을 기록하고 축적하기 위한 포맷. 그것이 아직 없다.
목적이 다르면 도구가 달라야 한다.