AI

Context Engineering — 에이전트 품질을 결정하는 진짜 레버

프롬프트 엔지니어링을 넘어선 컨텍스트 엔지니어링의 4가지 구성요소와 실전 패턴을 정리한다.

7 min read
AIContext EngineeringLLMAgent
Context Engineering — 에이전트 품질을 결정하는 진짜 레버

"프롬프트를 잘 쓰면 된다"는 시대는 지났다. 이제 경쟁력은 컨텍스트를 잘 설계하느냐에서 갈린다.

Context Engineering은 LLM에게 전달되는 전체 정보 환경을 의도적으로 구성하는 실천이다. 시스템 프롬프트 한 줄이 아니라, 대화 이력·도구 응답·문서·메모리까지 모두 포함된다.

프롬프트 엔지니어링과 뭐가 다른가

항목프롬프트 엔지니어링컨텍스트 엔지니어링
단위단일 입력 문자열입력 전체 환경
범위한 턴세션 전체
변수문구·예시문구 + 메모리 + 검색 + 도구
평가출력 품질태스크 완결률
책임프롬프트 작성자시스템 아키텍트

비유하면 프롬프트 엔지니어링은 요리사에게 레시피를 주는 일이고, 컨텍스트 엔지니어링은 주방 전체를 설계하는 일이다. 재료 배치, 도구 접근성, 화구 순서까지 모두 해당한다.

컨텍스트의 4가지 구성요소

1. Instruction Context — 지시 정보

시스템 프롬프트, 역할, 출력 형식 규칙 등.

instruction 예시
너는 고객 지원 에이전트다.
답변은 3문장 이내로, 존댓말로 작성한다.
고객 개인정보는 절대 반복해서 노출하지 않는다.

2. State Context — 상태 정보

현재 대화 이력, 이전 도구 호출 결과, 사용자 선호 설정. 세션이 길어질수록 이 부분이 비대해진다.

3. Knowledge Context — 지식 정보

RAG로 검색된 문서, 코드베이스 발췌, 제품 매뉴얼. 에이전트가 "사실"을 근거로 말하게 만든다.

[💡 잠깐! 이 용어는?] RAG(Retrieval-Augmented Generation): 질의에 맞는 외부 지식을 검색해서 LLM 입력에 붙이는 패턴. 모델이 최신 정보나 사내 데이터를 참고할 수 있게 해준다.

4. Tool Context — 도구 정보

사용 가능한 도구 스키마, 이전 호출 결과, 에러 메시지. MCP 서버 연결이 여기 포함된다.

컨텍스트 윈도우 관리 전략

긴 세션에서 컨텍스트가 폭발하는 걸 막는 네 가지 전략이다.

context-manager.js
function trimContext(messages, maxTokens) {
  const system = messages.filter(m => m.role === 'system')
  const recent = messages.slice(-10)
  const summary = summarizeOld(messages.slice(0, -10))
 
  return [...system, { role: 'system', content: summary }, ...recent]
}

1. Sliding Window — 최근 N개만 유지. 간단하지만 앞부분 정보 유실 위험.

2. Summarization — 오래된 내용을 요약으로 대체. 토큰은 아끼지만 디테일 손실.

3. Semantic Compression — 중요도 점수로 필터링. 품질 좋지만 구현 복잡.

4. External Memory — 벡터 DB에 저장하고 필요할 때만 검색. 세션 간 영속성도 확보.

대부분의 프로덕션 에이전트는 이 네 가지를 조합해서 쓴다.

실전 패턴

계층적 컨텍스트

역할마다 다른 컨텍스트를 주는 구조다.

레이어내용빈도
Global회사 톤, 금지 사항항상
Session사용자 프로필, 현재 작업세션마다
Turn직전 메시지, 도구 응답매 턴
Tool도구 스키마, 최근 에러호출 시점

컨텍스트 오염 감지

에이전트가 엉뚱한 답을 내놓을 때, 프롬프트가 아니라 컨텍스트에 독이 들어간 경우가 많다. 이전 도구 응답의 에러, 무관한 검색 결과, 사용자의 오탈자가 누적된다.

포인트: 에이전트 품질이 떨어지면 모델을 바꾸기 전에 컨텍스트를 먼저 감사하라.

측정과 개선

컨텍스트 품질을 측정할 만한 지표는 이렇다.

  • 토큰 효율성: 전체 대비 실제 사용된 정보 비율
  • 관련성 점수: 포함된 문서 조각의 질의 관련도
  • 오염 빈도: 무관한 정보가 응답에 섞이는 비율
  • 재검색 비율: 같은 정보를 다시 찾는 빈도

정리

  • 프롬프트 한 줄보다 컨텍스트 전체 환경이 품질을 결정한다
  • 구성요소는 지시·상태·지식·도구 네 레이어로 나눌 수 있다
  • 긴 세션에서는 윈도우·요약·압축·외부 메모리 조합이 필요하다
  • 에이전트 품질 저하 시 모델보다 컨텍스트 감사가 먼저다

프롬프트 엔지니어는 개별 쿼리를 다루고, 컨텍스트 엔지니어는 에이전트의 정보 생태계를 다룬다. 앞으로 AI 제품 경쟁력은 이 생태계의 설계 깊이에서 갈린다.


참고: