---
category: Unified
tags: [auto-consolidated, technical-documentation]
title: Context Engineering (컨텍스트 엔지니어링)
last_updated: 2026-05-02
---

# Context Engineering (컨텍스트 엔지니어링)

## 📌 Brief Summary
Context Engineering은 LLM의 제한된 컨텍스트 윈도우를 효율적으로 관리하고, 에이전트의 작업 성능을 극대화하기 위해 입력 데이터(프롬프트, 외부 지식, 도구 출력 등)를 정교하게 설계, 압축, 우선순위화하는 기술적 방법론이다. 단순한 텍스트 작성을 넘어, 하네스(Harness) 계층에서 데이터의 흐름을 제어하고 모델의 주의력(Attention)을 핵심 정보에 집중시키는 시스템 수준의 최적화를 의미한다.

---

> 컨텍스트 엔지니어링은 프롬프트 작성을 넘어, 에이전트의 제한된 인지 자원(Context Window)을 최적화하기 위해 정보를 필터링, 압축, 우선순위화하여 모델의 추론 충실도를 극대화하는 정교한 데이터 관리 기법이다.

## 📖 Core Content
*   **프롬프트 엔지니어링과의 차이**: 프롬프트 엔지니어링이 개별 메시지의 '표현'에 집중한다면, 컨텍스트 엔지니어링은 전체 대화와 작업 세션의 '데이터 구조'와 '흐름'을 설계한다. 하네스의 C-component가 담당하는 핵심 영역이다.
*   **적응형 컨텍스트 압축 (Adaptive Compression)**: 작업의 중요도와 모델의 컨텍스트 한계에 따라 데이터를 동적으로 요약하거나 압축한다. 중요도가 낮은 과거 이력은 버리고, 핵심 결정 사항과 현재 상태(WTM)만을 보존한다.
*   **컨텍스트 부패 (Context Rot) 방지**: 대화가 길어질수록 모델의 추론 성능이 저하되는 현상을 막기 위해, 주기적으로 컨텍스트를 청소(Cleanup)하고 필수 정보만을 재구성(Re-summarization)한다.
*   **우선순위 기반 인젝션 (Priority Injection)**: 사용자 메시지, 확인된 증거(Evidence Memory), 장기 메모리(LTM) 순으로 정보의 우선순위를 설정하고, 가장 중요한 정보가 컨텍스트의 핵심 위치(주로 최하단)에 배치되도록 조정한다.
*   **아티팩트 오프로딩 (Artifact Offloading)**: 대규모 코드나 로그 데이터를 모델 컨텍스트에 직접 넣는 대신, 별도의 파일 시스템(Artifact Store)에 저장하고 모델에게는 해당 리소스의 요약본과 참조 ID만을 제공한다.

---

### 1. 프롬프트에서 컨텍스트로의 진화
- **정적에서 동적으로**: 고정된 지시문(Prompt) 작성에서, 런타임 상황에 맞춰 필요한 정보만 선별하여 주입하는 동적 관리로 패러다임이 전환되었다.
- **인지 부하 제어**: 모델이 모든 정보를 보게 하는 대신, 현재 작업에 결정적인 정보(Salient Information)만 노출하여 추론의 정확도를 높인다.

### 2. 핵심 기술 및 전략
- **선택적 주입 (Selective Injection)**: RAG 등을 활용하여 방대한 데이터 중 관련성 높은 하위 집합만 컨텍스트에 포함시킨다.
- **적응형 압축 (Adaptive Compaction)**: 과거 대화나 작업 이력을 요약(Summary)하거나 중요도가 낮은 토큰을 제거하여 공간을 확보한다.
- **우선순위화 (Prioritization)**: 시스템 지시어, 최근 도구 결과, 장기 기억 등을 레이어별로 관리하고 중요도에 따라 배치 순서를 조정한다.

### 3. 하네스의 C-컴포넌트
- 하네스는 모델이 인지할 수 있는 '창(Window)'을 관리하는 역할을 수행하며, 컨텍스트 엔지니어링은 이 창 내부를 채우는 정책(Policy)과 알고리즘을 담당한다.

## ⚖️ Trade-offs & Caveats
*   **정보 손실의 위험**: 압축이나 요약 과정에서 모델이 작업을 수행하는 데 필수적인 세부 정보(Nuance)가 누락될 수 있다.
*   **추론 지연 및 비용**: 컨텍스트를 요약하거나 재구성하는 과정 자체가 별도의 모델 호출을 필요로 하므로, 실시간성 저하와 토큰 비용 증가가 발생한다.
*   **요약 편향 (Summary Drift)**: 여러 번의 요약 과정을 거치면서 원본 데이터의 의도가 왜곡되거나 중요한 사실 관계가 변질될 수 있다.

---

- **컨텍스트 부패 (Context Rot)**: 정보를 너무 많이 유지하면 주의 분산(Attention Dilution)이 발생하고, 너무 적게 유지하면 정보 상실로 인한 추론 오류가 발생한다.
- **토큰 경제성**: 긴 컨텍스트 모델이 등장했음에도 불구하고, 연산 비용과 지연 시간 때문에 여전히 효율적인 컨텍스트 관리는 필수적인 최적화 영역이다.

## 🔗 Knowledge Connections
### Related Concepts

#### [하네스 아키텍처]
*   [[C-component (Context Manager)|C-component (Context Manager)]]
    *   연결 이유: 컨텍스트 엔지니어링이 수행되는 실질적인 런타임 구성 요소이다.
*   [[S-component (State Store)|S-component (State Store)]]
    *   연결 이유: 장기적인 상태를 저장하고, 필요할 때 컨텍스트로 불러오는 과정에서 긴밀하게 협업한다.

#### [성능 및 최적화]
*   [[Context Rot|Context Rot]]
    *   연결 이유: 컨텍스트 엔지니어링의 주요 목표 중 하나가 컨텍스트 부패를 방어하는 것이다.
*   [[Adaptive Context Compaction|Adaptive Context Compaction]]
    *   연결 이유: 컨텍스트 엔지니어링에서 사용하는 핵심 기술 중 하나이다.

### Deeper Research Questions
*   모델의 Attention 패턴을 실시간으로 분석하여, 어떤 정보를 컨텍스트에서 제거해도 성능 저하가 없는지 정량적으로 측정할 수 있는가?
*   요약 편향(Summary Drift)을 방지하기 위해 원본 컨텍스트와 요약본 간의 의미적 유사성(Semantic Similarity)을 검증하는 자동화된 게이트는 어떻게 설계해야 하는가?
*   다중 에이전트 환경에서 각 에이전트에게 필요한 최소한의 컨텍스트(Minimal Viable Context)를 동적으로 결정하는 최적화 알고리즘은 무엇인가?

### Practical Application Contexts
*   **Implementation:** 롱-호라이즌(Long-horizon) 작업을 수행하는 에이전트에서 50턴 이상의 대화 이력을 3개 이내의 핵심 아티팩트 요약으로 압축하여 토큰 소모를 80% 절감한다.
*   **System Design:** 하네스 설계 시 C-component를 독립적인 모듈로 분리하여, 모델의 종류나 컨텍스트 윈도우 크기에 따라 서로 다른 압축 전략을 적용할 수 있게 한다.

---
*Last updated: 2026-05-01*

---

- **Parent**: 10_Wiki/Topics/AI
- **Related**: [[Agent Harness|Agent Harness]], RAG (Retrieval-Augmented Generation), [[Agent_State_Store|Agent State Store]]
- **Raw Source**: 00_Raw/Context Engineering


## 💻 GitHub 동기화 자동화 워크플로우
1. Stage: git add .
2. Commit: `git commit -m "[P-Reinforce] Wikify Context Engineering Strategies"`
3. Push: `git push origin main`