정형 데이터를 프롬프트로 조립하는 아키텍처와 토큰 예산 관리
정형 로그와 메타데이터를 자연어 프롬프트로 조립할 때 필요한 이력 선별, 토큰 예산, 템플릿 형상관리, 개인정보 제외 원칙을 정리한다.
2026-09-02 · 최초 발행 2026-08-03
피처 전처리 뒤에 프롬프트 조립이 놓인다
넷플릭스 GenRec은 사용자 히스토리 원본 로그, 아이템 메타데이터, 컨텍스트를 컨텍스트 엔지니어링으로 자연어 프롬프트화해 입력하는 구조를 택했다. 수치 피처 벡터를 만들던 전처리 산출물은 텍스트 프롬프트가 되고, 피처 정의 파일 대신 조립 템플릿이 관리 대상이 된다.
새 신호를 반영할 때 별도의 피처 엔지니어링 없이 텍스트 한 줄을 추가할 수 있다는 점은 실험 회전 속도를 높인다. 반면 토큰 예산은 전달 가능한 정보량의 상한이 된다. 사용자 이력을 얼마나 포함할지, 어떤 필드를 남길지, 정보를 프롬프트 어디에 둘지가 모두 모델 성능에 영향을 준다.
조립 로직을 임시 코드로 남겨 두고 변경 이력을 기록하지 않으면 성능 변화를 설명하기 어려워진다. 변환 규칙, 이력 선별·절단 정책, 토큰 예산 배분, 템플릿 형상관리, 변경 효과 측정을 하나의 체계로 다뤄야 한다.
로그에서 추론까지 이어지는 조립 경로
필드별 자연어 표현 규칙부터 고정한다. 같은 필드가 상황마다 다른 방식으로 표현되면 모델은 일관된 패턴을 학습하기 어렵다. 수치는 단위와 함께 적고, 범주값은 코드 대신 의미가 드러나는 명칭으로 바꾼다. 시간 정보는 절대 시각보다 상대 표현이 유용할 수 있으므로 두 표현의 효과를 실측으로 비교한다.
사용자 이력은 최근성, 상호작용 강도, 다양성을 기준으로 골라야 한다. 최근순만으로 채우면 편향된 맥락이 만들어질 수 있다. 예산을 넘겨 일부 이력을 잘랐다면 그 사실을 프롬프트에 표시한다. 조용히 잘라 내면 모델이 전체 이력을 받았다고 오판할 수 있다. 이력 건수 상한은 토큰 예산에서 역산해 정한다.
아이템 메타데이터는 이력 항목에 인라인으로 붙일지 별도 블록으로 둘지 결정해야 한다. 중복되는 필드는 예산을 빠르게 소모하므로 공통 메타데이터는 한 번만 서술하고 참조하도록 구성한다.
시스템 지시와 공통 컨텍스트, 사용자 이력, 후보 목록에는 각각 예산 상한이 필요하다. 초과가 발생했을 때 어느 구간부터 줄일지도 미리 정해 둔다. 고정 지시와 공통 컨텍스트는 앞에 두고 사용자별 가변 정보는 뒤에 배치하면 프리픽스 캐시 적중과 연결된다. 중요한 정보를 프롬프트 중간에 묻지 말고, 위치별 활용도 차이는 실측으로 확인한다.
템플릿은 코드와 같은 방식으로 형상관리하고 배포 단위로 취급한다. 문구 하나가 성능을 바꿀 수 있기 때문이다. 실행된 프롬프트에는 템플릿 버전을 남기고, 템플릿 변경은 오프라인 평가와 A/B를 거쳐 검증한다. 직관적으로 나아 보이는 수정이 성능을 떨어뜨리는 경우도 흔하다. 변경 항목과 효과를 계속 기록하면 조립 설계 지침으로 축적할 수 있다.
조립 정책을 운영 절차에 연결하는 방법
포함할 로그와 메타데이터는 관계 조직과 합의해 목록으로 고정한다. 즉흥적인 신호 추가는 토큰 예산을 잠식한다. 신호별 예상 기여도와 토큰 소모량을 함께 기록하면 비용 대비 효과를 비교할 수 있다.
이력 길이는 늘려 가며 성능과 비용을 측정해 수확 체감 지점을 찾는다. 길이를 무조건 늘리면 비용만 증가할 수 있다. 사용자 유형별로 서로 다른 상한을 둘 필요가 있는지도 검토한다.
템플릿 수정도 배포로 다룬다. 변경 제안, 오프라인 검증, 소규모 A/B, 확대 배포의 순서를 고정하고, 긴급 변경 경로를 따로 두더라도 사후 검증은 의무화한다. 조립 변경의 효과가 작을 수 있으므로 충분한 표본과 기간을 확보해야 하며, 조기 판정으로 잡음을 신호로 오인하지 않아야 한다. 세그먼트별 효과도 함께 확인한다.
개인정보는 변환 단계에서 제외 규칙을 강제한다. 프롬프트는 로그보다 넓게 전파될 수 있어 유출 경로가 늘어난다. 제외 규칙 위반을 자동으로 검출하는 검사를 파이프라인에 포함한다.
특정 요청의 프롬프트를 사후에 재구성할 수 있도록 입력 스냅숏과 템플릿 버전도 함께 보관한다. 저장 비용을 고려해 샘플링 보관을 적용할 수 있다. 템플릿 소유 조직과 변경 권한을 명시하지 않으면 템플릿은 방치되고 성능 저하의 원인이 된다.
입력 방식이 바꾸는 설계상의 선택
| 구분 | 자연어 프롬프트 입력 | 정형 피처 벡터 입력 |
|---|---|---|
| 신호 추가 속도 | 텍스트 추가로 즉시 | 피처 정의·파이프라인 |
| 정보량 상한 | 토큰 예산 | 벡터 차원 |
| 표현 유연성 | 높음 | 낮음 |
| 전처리 비용 | 문자열 조립 | 수치 변환·정규화 |
| 디버깅 | 프롬프트 육안 확인 | 피처값 확인 |
| 저장 효율 | 낮음 | 높음 |
자연어 프롬프트 입력은 새 신호를 한 줄로 반영할 수 있어 실험이 빠르고, 사람이 프롬프트를 읽어 이상을 확인하기 쉽다. 사전학습된 언어 이해를 그대로 활용할 수 있다는 장점도 있다. 대신 토큰 예산이 정보량을 제한하고, 같은 정보를 표현하는 데 저장·전송 비용이 더 많이 든다.
피처 벡터는 정보 밀도가 높고 추론 비용이 낮으며 피처 기여도 분석이 가능하다. 그러나 신호 하나를 추가하려면 정의, 계산, 서빙 파이프라인 작업이 필요해 실험 속도가 느려진다. 신호 탐색 단계에는 프롬프트가, 확정된 고빈도 신호에는 벡터가 맞을 수 있어 두 방식을 병행하는 하이브리드 입력도 실무 선택지가 된다.
전체 이력을 넣으면 선별 로직을 만들지 않아도 되고 정보 손실 없이 모델이 중요도를 판단하게 할 수 있다. 그러나 토큰 비용은 이력 길이에 비례해 증가하고 긴 프롬프트에서는 중요한 정보가 희석된다. 결국 예산 한계로 절단이 발생한다. 선별 이력은 비용을 통제하고 신호 대 잡음비를 높여 정확도를 개선할 수 있지만, 잘못된 기준은 결정적인 이력을 버릴 수 있으며 기준 자체의 유지·검증 부담도 남긴다. 토큰 예산이 유한한 이상 핵심은 선별 여부가 아니라 선별 기준을 측정 가능한 정책으로 만들지, 암묵적 절단에 맡길지다.
정적 템플릿은 프리픽스 캐시 적중률이 높아 서빙 단가가 낮고 변경 효과를 측정하거나 재현하기 쉽다. 반면 사용자별 특성을 반영할 여지는 줄어든다. 사용자별 동적 조립은 포함 신호와 순서를 바꿔 개인화를 높일 수 있지만, 캐시 적중이 무너져 비용이 오르고 조합 수가 많아 성능 회귀 원인을 특정하기 어렵다. 고정 구간을 넓게 유지하고 가변 구간만 동적으로 구성하는 절충이 비용과 개인화를 함께 다루는 형태가 된다.
전처리·정보 설계·형상관리로 보는 프롬프트 조립
프롬프트 조립은 전처리의 다른 형태다. 정규화와 결측 처리에서 수행하던 규칙은 문자열 표현 규칙으로 옮겨간다. 같은 의미를 일관되게 표현하는 일은 피처 스케일링과 유사한 역할을 하며, 표현이 흔들리면 학습도 흔들린다.
무엇을 어떤 순서로 배치할지는 제한된 지면에 정보를 배열하는 정보 설계 문제다. 절단 여부를 프롬프트에 표시하는 일은 정보의 완전성을 소비자에게 알리는 메타데이터 역할을 한다.
조립 템플릿을 코드처럼 버전 관리하고 배포 절차에 포함하는 일은 구성 항목 식별과 변경 통제의 기본에 해당한다. 실행된 프롬프트의 템플릿 버전을 기록하면 베이스라인 추적성을 확보할 수 있다.
2026년에 이어질 변화
프롬프트 조립 로직은 독립 컴포넌트로 분리되고, 이를 위한 형상관리와 테스트 도구가 등장하는 흐름이 예상된다. 이력 선별과 절단 정책은 학습 가능한 모듈로 대체되며 수작업 규칙은 축소되는 방향이다.
프리픽스 캐시 적중을 전제로 한 프롬프트 구조는 서빙 비용 설계의 기본 규범으로 자리 잡는 흐름이다. 프롬프트에 담기는 개인정보 범위도 감사 대상에 포함되며, 필드 제외 검증은 필수 절차가 되는 방향이다.
Sources
- GenRec: Towards LLM-Native Recommendation at Netflix | Netflix TechBlog
- Netflix Bets on LLMs for Smarter Recommendations | StartupHub.ai
- Netflix: Foundation Model for Personalized Recommendation at Scale | ZenML LLMOps Database
- Context Engineering vs Prompt Engineering | DataHub
- How Netflix Is Building Recommendation Engine with LLM | The Cloud Girl