컨텍스트 예산 설계와 선별 주입 아키텍처
AI 에이전트의 컨텍스트 예산, 선별 주입, 중복 제거, 압축, 만료와 주입 이력을 설계하는 방법을 정리한다.
2026-09-14 · 최초 발행 2026-09-05
모델에 넣을 정보는 창 크기가 아니라 예산으로 관리한다
2025년부터 2026년 사이 에이전트 실패를 분석하면서, 원인이 모델 자체보다 컨텍스트 구성에 있다는 인식이 넓어졌다. 품질을 높이는 작업도 지시문 표현을 손보는 데서 벗어나, 어떤 정보를 어느 시점에 얼마만큼 전달할지 설계하는 방향으로 이동하고 있다.
컨텍스트를 전부 채운다고 답변이 좋아지는 것은 아니다. 관련 없는 자료가 늘면 필요한 근거의 상대적 비중이 낮아지고, 반대로 지나치게 덜 넣으면 판단 근거가 빠져 그럴듯한 추측이 늘어난다. 주입되는 정보량은 토큰 원가와 지연에도 직접 연결된다. 같은 자료라도 요청 직후 넣는 경우와 도구 실행 뒤 넣는 경우의 효과는 다르며, 실제 주입 내역을 남기지 않으면 실패 원인을 되짚기도 어렵다.
이 문제는 예산 총량, 범주별 우선순위, 주입 시점, 관련성 판정, 중복 제거, 압축과 만료, 그리고 주입 이력을 하나의 체계로 다뤄야 한다.
후보 정보가 실행 입력이 되기까지
작업 유형마다 사용할 토큰 상한을 먼저 정한다. 모델의 컨텍스트 창 크기를 그대로 예산으로 삼으면 한계까지 채운 입력의 비용만 확정될 뿐이다.
이후 지시, 도구 정의, 사용자 입력, 검색 결과, 이력 요약, 참조 자료처럼 정보를 범주화하고 우선순위를 둔다. 항목을 개별적으로만 다루면 예산을 다시 배분할 때마다 협상이 반복된다.
처음부터 필요한 정보와 도구 결과가 나온 뒤 의미를 갖는 정보도 분리해야 한다. 초기 주입은 캐시에는 유리하지만, 그 시점에는 관련성을 판별하기 어려울 수 있다. 후보를 고를 때는 질의와의 의미 유사도뿐 아니라 최근성, 출처 신뢰도, 과거 참조 이력을 함께 본다. 유사도만 사용하면 최신성이 중요한 작업에서 오래된 유사 문서가 상위에 남을 수 있다.
동일한 사실이 여러 출처에서 들어오면 대표본을 남기고 나머지는 출처만 표기한다. 중복은 근거를 강화하기보다 예산을 소모한다. 이력이 길어지면 요약으로 바꾸되, 결정 사항과 제약은 원문으로 보존해야 한다. 수치와 결정이 요약 과정에서 사라지면 이후 판단이 달라질 수 있다. 오래된 정보에는 유효 기간을 부여하고, 만료된 항목은 후보군에서 자동 제외한다. 낡은 정보는 오류 자체보다 발견이 늦다는 점이 더 문제다.
실행 기록에는 최종 프롬프트만 보관해서는 부족하다. 어떤 항목이 어떤 이유로 포함됐고 제외됐는지를 실행마다 남겨야, 제외된 정보가 실패 원인이었을 때 추적이 가능하다.
운영에 넣기 위한 기준 만들기
도입 초기에는 실제 실행 한 건을 골라 최종 입력을 항목 단위로 나누고 각 항목의 토큰 비중을 확인하는 편이 낫다. 설계 문서의 예상 비중과 실측 비중은 자주 다르다.
예산은 지시와 도구 정의처럼 고정 비용인 범주, 검색 결과처럼 가변인 범주로 나눠 배분한다. 총량만 두면 검색 결과가 예산을 모두 차지할 수 있다. 선별 기준은 상위 몇 건, 최소 유사도, 최대 출처 수처럼 바로 적용할 수 있는 규칙으로 출발할 수 있다. 완성된 판정 모델을 먼저 만들지 않아도 단순한 기준만으로 상당한 낭비를 줄일 수 있다.
필요한 정보가 빠져 오답이 난 사례는 성공 사례와 별도로 모아야 한다. 선별 기준은 누락 사례를 통해서만 교정할 수 있다. 압축 품질도 길이 축소율만으로 판단하지 않고, 요약본이 결정 사항·수치·제약을 유지했는지 확인하는 기준을 둔다. 짧아진 요약이 판단 근거까지 버리는 경우가 있기 때문이다.
모델 단가, 창 크기, 작업 구성이 달라질 때 예산을 다시 배분하는 주기도 필요하다. 단가와 창 크기는 분기 단위로 바뀐다. 예산 산정 방식, 범주 정의, 선별 규칙, 압축 원칙, 이력 보관 범위는 조직 표준으로 등록하고, 범주별 예산 소진율·누락 사고 건수·압축 후 품질 지표를 정기 보고 항목으로 둘 수 있다.
주입 방식마다 감수하는 비용이 다르다
| 구분 | 선별 주입 | 전량 주입 |
|---|---|---|
| 정확도 | 높음 | 중간 |
| 토큰 원가 | 낮음 | 높음 |
| 누락 위험 | 있음 | 낮음 |
| 구현 복잡도 | 큼 | 작음 |
| 지연 | 짧음 | 김 |
| 원인 추적 | 이력 필요 | 단순 |
선별 주입은 관련 정보의 비중을 높여 핵심 근거를 놓칠 가능성을 줄이고, 토큰 원가와 지연도 함께 낮춘다. 주입 이력이 있으면 실패 원인을 분석할 수 있다. 반면 선별 기준이 잘못되면 필요한 근거가 빠진 채 조용한 오답이 발생하며, 판정 로직도 별도의 유지 대상이 된다. 초기 구축 공수도 필요하다.
전량 주입은 구현이 단순하고 누락으로 인한 오답이 없으며 기준을 조율할 필요가 없다. 그러나 관계없는 정보가 주의를 분산시켜 긴 입력에서 정확도가 떨어질 수 있고, 원가와 지연은 선형으로 늘어난다. 실패했을 때 어느 정보가 문제였는지도 좁히기 어렵다. 지시나 도구 정의처럼 고정된 범주는 전량 주입으로 유지하고, 검색 결과처럼 가변적인 범주에만 선별 기준을 적용하면 위험과 이득을 함께 관리할 수 있다.
동적 검색 주입은 질의 시점의 최신 자료를 사용하므로 적시성이 높고, 예산 안에서 필요한 정보만 넣을 수 있다. 자료가 증가해도 입력 길이가 늘지 않는 점도 장점이다. 대신 요청마다 프롬프트 앞부분이 달라져 캐시 적중이 낮아질 수 있고, 검색 지연이 응답 시간에 더해진다. 검색 품질은 답변 품질의 상한이 된다.
정적 고정 주입은 동일한 선두 블록을 반복해 캐시 효율이 높고, 검색 인프라 없이 동작하며, 결과를 재현하기 쉽다. 하지만 자료가 갱신돼도 반영이 늦고 고정 블록이 커질수록 모든 요청이 그 비용을 부담한다. 요청별 특성도 반영하기 어렵다. 안정적인 정책과 용어집은 선두에 두고, 변동 자료만 뒤에 동적으로 붙이는 배치는 캐시와 적시성을 함께 확보한다.
긴 이력을 압축하면 예산 여유가 생기고 오래된 대화에서도 핵심 흐름을 유지해 장기 세션을 운영할 수 있다. 다만 수치와 예외 조건이 요약 과정에서 사라지면 후속 판단이 어긋난다. 요약의 요약이 반복되면 왜곡이 누적되고, 압축에도 추론 비용이 든다. 원문을 계속 유지하면 정보 손실 없이 근거를 그대로 인용할 수 있지만, 예산이 빠르게 소진되고 긴 입력이 주의 분산과 지연을 만든다. 결정 사항과 수치는 원문 슬롯에 별도로 두고 서술형 맥락만 압축하는 방식이 여유와 정확성을 함께 지킨다.
정보 관리와 성능 관리가 만나는 지점
유효 기간을 부여하고 만료된 정보를 처리하는 일은 정보의 생성·활용·폐기 단계 관리에 해당한다. 압축 시점 규칙은 보존 형태를 전환하는 정책으로 볼 수 있다.
중복 제거와 대표본 선택은 데이터 품질의 유일성을 확보하는 활동이며, 범주별 우선순위는 데이터 분류 체계 수립과 연결된다. 예산 총량 산정과 소진율 관측은 자원 사용량을 계획하고 감시하는 일이다. 캐시 효율을 고려해 정보를 배치하는 방식은 응답 시간 최적화 설계이기도 하다.
컨텍스트 설계가 독립된 운영 영역이 되는 흐름
컨텍스트 구성은 프롬프트 작성과 분리된 설계 영역으로 다뤄지는 방향이다. 주입 이력 기록은 에이전트 관측 도구의 기본 수집 항목으로 편입되고, 범주별 예산 배분은 원가 관리 지표와 직접 연결돼 보고될 수 있다. 압축 품질 검증 역시 요약 모델을 선택하는 기준이자 별도 평가 대상으로 자리잡는 흐름이다.
컨텍스트는 많이 넣거나 적게 넣는 문제가 아니다. 예산을 정하고, 범주별로 배분하고, 필요한 시점에 관련 정보만 주입하는 문제다. 이때 무엇을 제외했는지와 그 사유까지 남겨야 누락에서 비롯된 실패가 원인 불명으로 남지 않는다.