요즘IT
위시켓
새로 나온
인기요즘 작가들컬렉션
물어봐
새로 나온
인기
요즘 작가들
컬렉션
물어봐
개발
AI
IT서비스
기획
디자인
비즈니스
프로덕트
커리어
트렌드
스타트업
서비스 전체보기
위시켓요즘IT
고객 문의
02-6925-4867
10:00-18:00주말·공휴일 제외
[email protected]
요즘IT
요즘IT 소개작가 지원
기타 문의
콘텐츠 제안하기광고 상품 보기
요즘IT 슬랙봇크롬 확장 프로그램
이용약관
개인정보 처리방침
청소년보호정책
㈜위시켓
대표이사 : 박우범
서울특별시 강남구 테헤란로 211 3층 ㈜위시켓
사업자등록번호 : 209-81-57303
통신판매업신고 : 제2018-서울강남-02337 호
직업정보제공사업 신고번호 : J1200020180019
제호 : 요즘IT
발행인 : 박우범
편집인 : 노희선
청소년보호책임자 : 박우범
인터넷신문등록번호 : 서울,아54129
등록일 : 2022년 01월 23일
발행일 : 2021년 01월 10일
© 2013 Wishket Corp.
로그인
요즘IT 소개
콘텐츠 제안하기
광고 상품 보기
개발

프롬프트 엔지니어링에서 컨텍스트 엔지니어링으로

안영회
7분
6시간 전
550
에디터가 직접 고른 실무 인사이트 매주 목요일에 만나요.
newsletter_profile0명 뉴스레터 구독 중

본문은 필립 슈미트(Philipp Schmid)의 글 <The New Skill in AI is Not Prompting, It's Context Engineering>을 번역한 글입니다. 필립 슈미트는 현재 구글 딥마인드의 AI 관계 엔지니어(Relation Engineer)로 일하고 있으며, 그전에는 허깅 페이스의 테크 리드로 활동했습니다. 그가 정의하는 AI 에이전트 개발의 새로운 핵심, ‘컨텍스트 엔지니어링’을 소개합니다. 필자에게 허락을 받고 번역과 게재를 진행했습니다.


컨텍스트 엔지니어링(Context Engineering)은 AI 세계에서 핫이슈로 새롭게 떠오른 용어이다. 그 등장과 함께 담론의 초점이 ‘프롬프트 엔지니어링’에서 더 넓고 강력한 개념인 ‘컨텍스트 엔지니어링’으로 이동하고 있다. 토비 루트케는 그의 X(트윗)를 통해 컨텍스트 엔지니어링을 “LLM이 과제를 그럴듯하게 해결할 수 있도록 모든 컨텍스트를 제공하는 기술”이라고 설명한다. 옳은 말이다.

 

에이전트의 부상과 함께, ‘제한된 작업 메모리’에 어떤 정보를 넣는지가 더욱 중요해지고 있다. 제공하는 컨텍스트의 품질에 의해 에이전트의 성공과 실패가 결정된다는 것이다. 앞으로 대부분 에이전트의 실패는 더 이상 모델의 실패가 아니라, 컨텍스트의 실패이다.

 

컨텍스트란 무엇인가?

컨텍스트 엔지니어링을 이해하려면 먼저 ‘컨텍스트(Context)’의 정의를 확장해야 한다. 컨텍스트는 그저 LLM에 보내는 하나의 프롬프트가 아니다. 모델이 응답을 생성하기 전에 보는 모든 것을 컨텍스트로 생각해야 한다.

 

컨텍스트의 구성요소로 다음과 같은 것들이 있다.

 

<출처: 필립 슈미트, 번역: 작가>

 

  • 지시문/시스템 프롬프트: LLM과 대화할 때 모델의 행동을 정의하는 일련의 초기 지시문 묶음으로, 예시나 규칙 따위를 포함할 수 있다.
  • 사용자 프롬프트: 사용자가 즉시 요청하거나 질문하는 내용이다.
  • 상태/이력(단기 메모리): 현재 대화로, 지금까지 이어진 사용자와 모델의 응답을 포함한다.
  • 장기 메모리: 이전에 나눈 여러 대화를 통해 축적된 영속적인 지식 기반으로, 사용자 선호에 대한 학습, 과거 프로젝트 요약, 미래를 위해 기억해야 할 사실 따위를 포함한다.
  • 검색된 정보(RAG): 특정 질문에 답하기 위해 문서, 데이터베이스, API 따위에서 가져온 모델 밖의 최신 지식 및 관련 정보를 말한다.
  • 사용 가능한 도구들: 호출할 수 있는 모든 함수나 내장 도구의 정의(예: 재고 확인, 이메일 보내기 따위)를 뜻한다.
  • 구조화된 출력: 모델의 응답 형식에 대한 정의(예: JSON 객체 따위)이다.

 

 

왜 컨텍스트 엔지니어링이 중요한가: 값싼 데모에서 마법 같은 제품으로

진짜 효과적인 AI 에이전트를 만드는 비결은 작성하는 코드의 복잡성보다는 제공하는 컨텍스트의 품질에 달려 있다.

 

에이전트 구축은 더 이상 작성하는 코드나 사용하는 프레임워크에 관한 것이 아니다. ‘값싼 데모’와 ‘마법 같은’ 에이전트의 차이는 우리가 제공하는 컨텍스트의 품질에 있다. AI 비서가 간단한 이메일을 바탕으로 회의 일정을 잡으라는 요청을 받았다고 상상해 보자.

 

사용자: 안녕, 내일 잠깐 미팅할 수 있는지 확인하려고 해.

 

‘값싼 데모’ 에이전트는 컨텍스트가 부족하다. 이 에이전트는 사용자의 요청만 보고 그 외의 정보는 보지 않는다. 코드 자체는 완벽하게 동작해서 LLM을 호출해 응답을 받아 내지만, 그 결과는 도움이 되지 않으며 기계적으로 느껴질 수 있다.

 

값싼 데모 에이전트의 답: 메시지 감사합니다. 내일 괜찮습니다. 몇 시를 생각하고 계신가요?

 

‘마법 같은’ 에이전트를 만드는 힘은 풍부한 컨텍스트다. ‘마법 같은’ 에이전트의 최우선 임무는 어떻게 응답할지 결정하는 것이 아니라, LLM이 목적을 달성하는 데 필요한 정보를 수집하는 것이다. 이 에이전트는 LLM을 호출하기 전에 컨텍스트를 다음과 같이 확장한다.

 

  • 당신의 캘린더 정보: 일정이 꽉 차 있음을 보여줌.
  • 당신이 이 사람과 주고받은 과거 이메일: 이메일에 쓸 적절한 비공식적 어조를 결정하기 위해.
  • 연락처 목록: 상대방이 주요 파트너임을 확인하기 위해.
  • 초대장 보내기(send_invite)나 이메일 보내기(send_email) 도구.

 

그런 다음 이런 응답을 생성할 수 있다.

 

마법 같은 에이전트의 답: 짐, 내일은 하루 종일 일정이 꽉 찼어. 목요일 오전은 괜찮은데, 괜찮으면 초대장 보냈으니 확인해 줘.

 

마법은 더 똑똑한 모델이나 더 영리한 알고리즘이 아닌, 올바른 컨텍스트를 올바른 작업에 제공하는 데 있다. 이것이 컨텍스트 엔지니어링이 중요한 이유다. 에이전트의 실패는 모델의 실패만이 아니라 컨텍스트의 실패이기도 하다.

 

 

프롬프트 엔지니어링에서 컨텍스트 엔지니어링으로

컨텍스트 엔지니어링이란 무엇인가? “프롬프트 엔지니어링”이 하나의 텍스트 문자열 안에 담긴 완벽한 지시문 묶음을 만드는 데 집중한다면, 컨텍스트 엔지니어링은 훨씬 더 넓은 개념을 담는다. 간단히 말하자면 아래와 같다:

 

컨텍스트 엔지니어링은 LLM이 과제를 수행하는 데 필요한 모든 맞춤 정보와 적절한 도구를 올바른 형식과 시점에 제공하는 동적 시스템을 설계하고 구축하는 학문이다.
Context Engineering is the discipline of designing and building dynamic systems that provides the right information and tools, in the right format, at the right time, to give a LLM everything it needs to accomplish a task.

 

컨텍스트 엔지니어링은 이런 특징을 가진다.

 

  • 시스템이지 문자열이 아니다: 컨텍스트는 정적인 프롬프트 템플릿이 아니라, 메인 LLM을 호출하기 전에 시스템이 생성하는 산출물이다
  • 동적이다: 당장의 과업에 맞춤으로 즉석에서 생성한다. 어떤 요청에서는 캘린더 데이터가, 다른 요청에서는 이메일이나 웹 검색이 쓰일 수 있다.
  • 올바른 정보와 도구의 적시 제공: 핵심 임무는 모델이 중요한 세부 정보를 놓치지 않도록 하는 것이다(“쓰레기가 들어가면 쓰레기가 나온다”). 즉, 필요하고 유용할 때만 지식(정보)과 역량(도구)을 제공해야 한다는 의미다.
  • 형식이 중요한 경우: 정보를 어떻게 제시하느냐도 중요하다. 간결한 요약이 원시 데이터를 쭉 늘어놓는 것보다 낫고, 명확한 도구 스키마가 모호한 지시문보다 낫다.

 

 

마치며

믿을 수 있는 강력한 AI 에이전트를 만드는 방법은 더 이상 마법 같은 프롬프트나 모델 업데이트를 찾는 데 있지 않다. 중요한 것은 전달할 텍스트를 설계하고, 올바른 정보와 도구를 올바른 형식으로 적절한 시점에 제공하는 것이다. 이는 사업에서의 쓸모를 이해하고, 산출물을 정의하며 필요한 모든 정보를 구조화해서 LLM이 ‘과업을 완수’하게 할, 여러 기능을 아우르는 도전이다.


감사의 글

이 개요 글은 심도 있는 수작업 연구와 여러 훌륭한 자료에서 영감을 얻어 작성되었다:

  • 토비 루트케(Tobi Lutke)의 트윗
  • 안드레아 카파시(Andrej Karpathy)의 트윗
  • “컨텍스트 엔지니어링”의 부상
  • 컨텍스트 창을 소유하라
  • 사이먼 윌리슨(Simon Willison)의 컨텍스트 엔지니어링
  • 에이전트를 위한 컨텍스트 엔지니어링

 

©위 번역글의 원 저작권은 Philipp Schmid에게 있으며, 저작권법의 보호를 받는 바, 무단 전재와 복사, 배포 등을 금합니다