어제는 보고 듣고 만드는 AI를 손으로 만져 봤다. 오늘부터는 요즘 모두가 쓰는 그 AI, 즉 LLM(Large Language Model: 대규모 언어 모델)으로 들어간다. 첫 질문은 이거다. LLM은 대체 무엇을 보고 답을 만드는가. 답은 한 단어로 정리된다. 맥락, 영어로 컨텍스트다.

같은 사람에게 "사과 그려 줘"라고 해도 화가와 어린이와 디자이너는 전혀 다른 그림을 그린다. 차이를 만든 건 각자의 배경, 즉 머릿속 맥락이다. AI도 똑같다. 무엇을 보고 있느냐에 따라 같은 요청도 결과가 달라진다. 오늘은 그 맥락이 무엇인지 눈으로 확인한다.

컨텍스트 = 모델이 지금 보고 있는 입력 전체

컨텍스트는 모델이 출력을 만들 때 참조하는 입력 전부를 말한다. 크게 세 가지가 합쳐진 묶음이다.

  • 지시 — 무엇을 어떻게 해 달라는 요청.
  • 자료 — 함께 올린 그림/문서/예시.
  • 앞 대화 — 지금까지 주고받은 내용.

핵심은 같은 엔진이라도 이 묶음을 어떻게 채우느냐에 따라 결과가 달라진다는 점이다. 맥락을 넣고 빼는 것만으로 출력이 바뀐다.

body-2

위 그림이 오늘의 한 장이다. 맥락이 빈약하면(맥락 OFF) 같은 엔진도 밋밋한 결과를 낸다. 거기에 "도구 사용법"과 "예술가의 특징" 두 맥락을 얹으면(맥락 ON) 같은 엔진이 원작을 닮은 결과를 만든다. 엔진은 그대로인데 맥락 한 줄이 결과를 가른다. 말로만 들으면 막연하니, 실제로 한 번 해 보자.

실제로 해 봤다 — 화가의 화풍으로 다른 장면을 그리면

실험은 단순하다. 유명한 그림 한 점의 화풍만 뽑아내, 그 그림에는 없던 전혀 다른 장면에 입혀 본다. 예시로 고른 건 반 고흐의 별이 빛나는 밤(1889)이다. 퍼블릭 도메인(저작권이 풀린) 작품이라 마음껏 써도 된다 (원작 출처).

original

이 그림의 특징은 누가 봐도 뚜렷하다. 소용돌이치는 밤하늘, 물감을 두껍게 올린 붓질(임파스토), 노랗게 빛나는 별과 달, 짙은 파랑과 노랑의 대비. 이 특징들을 언어로 적어 모델에게 건네는 것이 바로 "맥락 적재"다.

1단계, 화풍을 말로 뽑아낸다. 먼저 이미지를 모델에 올리고 이렇게 묻는다.

이 그림의 시각적 특징을 색 / 붓질 / 구도 / 주제 네 항목으로,
각 한 문장씩 분석해 줘.

그러면 "청색조 밤하늘에 노란 별이 강한 보색 대비를 이루고, 물감을 두껍게 칠한 소용돌이 붓질이 하늘 전체를 휘감으며..." 같은 묘사가 나온다. 이 문장들이 다음 단계에서 그대로 맥락이 된다.

2단계, 같은 장면을 맥락만 바꿔 두 번 그린다. 그림에는 없던 새 장면으로 한강과 남산타워가 보이는 서울 야경을 골랐다. 먼저 아무 맥락 없이 그려 보면(맥락 OFF) 이렇게 평범하게 나온다.

style-off

이번엔 앞에서 뽑은 화풍 묘사를 그대로 얹어 다시 그린다(맥락 ON).

위에서 분석한 별이 빛나는 밤의 특징(소용돌이치는 밤하늘,
두꺼운 임파스토 붓질, 노란 별과 달, 짙은 파랑과 노랑의 대비)을
살려서 한강과 남산타워가 보이는 서울 야경을 그려 줘.
원작을 복제하지 말고 같은 '스타일'로만.
style-on

결과가 통째로 달라졌다. 같은 모델, 같은 장면(서울 야경)인데 화풍 묘사라는 맥락 한 묶음을 넣었더니 하늘이 소용돌이치고 별이 노랗게 타오른다. 엔진도 그대로, 요청한 장면도 그대로. 바뀐 건 오직 맥락뿐이다. 이 차이가 곧 컨텍스트의 정의다. 직접 재현해 보고 싶으면 이미지 생성이 되는 도구(예: Gemini)에 같은 순서로 넣어 보면 된다.

직접 해 보기 — Claude로 맥락을 켜고 끄며

body-1

이번엔 글쓰기 도구로도 같은 원리를 확인해 보자. 특징이 또렷한 몬드리안의 작품(검은 격자선 + 빨강/파랑/노랑 면)을 고르면 효과가 가장 선명하다. Claude 새 대화를 열고 순서대로 따라가 보자.

  1. 맥락 적재 — 작품을 첨부하고 "이 그림의 시각적 특징을 색/선/구도/기법 4항목으로, 각 한 문장씩 분석해 줘"라고 한다.
  2. 맥락 OFF (기준선) — "아무 맥락 없이 그냥 추상화 한 점을 그려 줘." 밋밋한 결과가 나온다.
  3. 맥락 ON — "방금 분석한 특징(검은 수직/수평 격자선 + 빨강/파랑/노랑 면)을 반영한 새 추상화를 그려 줘. 복제가 아니라 같은 스타일로." 2번과 나란히 비교한다.
  4. 맥락 변형 — "이번엔 삼원색 대신 파스텔만 쓰고 격자선을 가늘게." 바뀐 맥락만큼 결과가 따라 변한다.

2번과 3번의 차이, 그게 곧 컨텍스트다. Claude는 사진 같은 래스터 이미지는 만들지 않으니 도형 기반 그림으로 스타일을 보여 준다. 사진 같은 결과가 필요하면 같은 특징을 SD(Stable Diffusion: 오픈소스 이미지 생성 모델) 같은 이미지 생성 모델에 넣을 영어 프롬프트로 바꿔 달라고 하면 된다. 맥락을 다른 도구로 옮기는 연습이다.

토큰, 컨텍스트 윈도우, 환각 — 한 축으로 꿴다

맥락이라는 한 축을 잡으면 자주 듣는 세 단어가 한 번에 정리된다.

  • 토큰 — 모델이 글을 잘게 쪼개 보는 조각이다. 단어보다 작을 때가 많다. 궁금하면 토크나이저 도구에 문장을 넣어 몇 조각으로 나뉘는지 직접 볼 수 있다.
  • 컨텍스트 윈도우 — 한 번에 펼쳐 볼 수 있는 종이의 양이다. 이걸 넘기면 앞부분을 잊는다. 긴 대화에서 모델이 앞 내용을 놓치는 이유가 여기 있다.
  • 환각 — 맥락이 부족하면 모델이 빈칸을 그럴듯하게 메운다. 그래서 출력은 검증하는 게 기본이다.

정리 — AI를 다루는 일은 맥락을 설계하는 일

오늘 손에 남길 한 문장. LLM은 지금 보고 있는 입력 전체(맥락)로 답을 만들고, 맥락을 바꾸면 같은 엔진의 출력이 바뀐다. 별이 빛나는 밤의 화풍을 한강에 입힌 것처럼, AI를 잘 쓴다는 건 결국 이 맥락을 잘 설계한다는 뜻이다.

다음 글에서는 이 맥락 설계를 글 작업에서 직접 해 본다. 같은 요청도 역할/맥락/예시/제약/단계를 어떻게 주느냐에 따라 결과 품질이 크게 달라지는 걸 확인한다.