LangChain | 검증과 매핑 [Validation], [Mapping] | 프롬프트 템플릿

박성문·2025년 1월 3일

검증 (Validation)

사용자가 입력한 데이터가 시스템이 요구하는 조건을 만족하는지 확인하는 과정이다. 
시험지를 제출하기 전에 빈 문항은 없는지, 
답을 올바른 형식으로 작성했는지 확인하는 것과 같다.

ex ) O / X 문제, 객관식, 주관식

  • 필수 데이터의 존재 여부 확인
  • 입력 데이터가 올바른 타입인지 확인
  • 값이 허용된 범위 내에 있는지 유효성 검사
  • 시스템 오류를 사전에 방지

검증 프로세스

  • 사용자가 웹 인터페이스에서 데이터 입력
  • 입력된 데이터의 존재 여부 확인
  • 데이터 타입 확인 (숫자, 문자열 등)
  • 값의 범위나 형식이 적절한지 검사
  • 문제가 있다면 사용자에게 피드백 제공

매핑 (Mapping)

검증을 통과한 데이터를 미리 정의된 템플릿의 적절한 위치에 배치하는 과정이다.
마치 퍼즐 조각을 알맞은 자리에 끼워 넣는 것과 같다.

  • 검증된 데이터를 템플릿의 형식에 맞게 변환
  • 데이터를 템플릿의 변수 위치에 삽입
  • 구조화된 형식으로 변환
  • LLM이 처리할 수 있는 형태로 변환
  • 일관된 형식의 프롬프트 생성

매핑 프로세스

  • 검증된 데이터 수신
  • 템플릿의 변수 위치 확ㅇ긴
  • 각 변수 위치에 해당하는 데이터 삽입
  • 완성된 프롬프트 생성

차이점

처리 시점

  • 검증 : 데이터 입력 직후 가장 먼저, 매핑 전에 수행
  • 매핑 : 검증 통과 후, LLM 전달 전에 수행

목적

  • 검증 : 데이터 유효성과 안전성 확보
  • 매핑 : 데이터를 템플릿 형식에 맞게 변환

처리 결과

  • 검증 : 입력 데이터의 사용 가능 여부 판단
  • 매핑 : 실제 사용할 수 있는 형태의 프롬프트 생성

에러 상황

  • 검증 : 부적절한 데이터 발견 시 즉시 프로세스 중단
  • 매핑 : 템플릿과 데이터 간 불일치 시 오류 발생

레스토랑에서의 예시

  • 검증 : 주문 받은 재료가 모두 있는지, 신선한지 확인하는 과정
  • 매핑 : 확인된 재료들을 레시피 또는 보관방법에 맞게 배치하는 과정

에러 처리

  • 검증 : True / False 또는 예외 발생
  • 매핑 : 포맷된 문자열 생성

전체 프로세스 예시

profile
성문이

0개의 댓글