잘란도, RAG로 공급업체 열 매핑 자동화
최근 30일 조회수 — 좋아요 —핵심 요약
잘란도는 과거 매핑을 검색해 LLM이 후보를 제안하고 API 검증과 사람의 검토를 거치는 시스템을 구축했다.

잘란도(Zalando)가 공급업체 파일의 열을 사내 데이터 스키마에 연결하는 작업을 대규모언어모델(LLM)과 검색증강생성(RAG)으로 자동화했다. 과거 매핑 기록을 검색해 제안에 활용하는 ‘RAG 플라이휠’을 만들되, 모델의 답을 곧바로 반영하지 않고 애플리케이션 프로그래밍 인터페이스(API)의 검증과 사람의 검토를 거치도록 설계했다.1
잘란도 공급 운영팀이 받는 파일은 워크북의 시트마다 10~60개 열을 담고 있으며, 형식과 열 이름도 공급업체별로 다르다. 같은 상품 식별자도 Art.-Nr., Article Number, SKU로 적히고, 색상에는 독일어 Farbe가 쓰이기도 한다. 이 열들을 SKU, 색상 코드, 색상명 등을 포함한 55개 이상의 고정된 내부 열에 일일이 연결해야 했다.
기존에는 하드코딩한 규칙과 정규표현식, 레벤슈타인 거리 기반 유사 문자열 검색을 썼다. 하지만 권장소비자가격처럼 의미가 같은 열도 UVP, Price, MSRP라는 서로 다른 이름으로 들어온다. 문자열 형태에 의존하는 방식은 이런 의미 관계를 파악하기 어렵고, 공급업체가 추가되거나 파일 형식을 바꿀 때마다 엔지니어가 규칙을 손봐야 했다.1
잘란도는 외부 AI 구성 요소를 AWS 베드록(AWS Bedrock)에서 운영한다. 의미 검색에는 1,024차원 벡터를 생성하는 아마존 타이탄 텍스트 임베딩 V2(Amazon Titan Text Embeddings V2)를 쓰고, 논리적 판단에는 앤트로픽 클로드 소넷(Anthropic Claude Sonnet)이나 제미나이(Gemini) 같은 생성 모델을 배치한다. pgvector는 과거 공급업체 데이터와 매핑을 검색하는 데 쓰인다. 중앙의 API는 고정된 내부 스키마와 계속 바뀌는 공급업체 데이터·과거 매핑을 분리해 모델에 전달한다.
모델의 변동성은 두 단계로 줄였다. 온도는 0.0으로 고정하고, 출력은 sourceColumn, targetColumn, reasoning, confidenceScore를 담은 정해진 구조로 제한했다. 이어 API가 원본 파일에 없는 소스 열이나 내부 스키마에 없는 대상 열을 거부하고, 모든 소스 열이 다뤄졌는지도 검사한다.1
다만 출력 형식을 고정해도 매핑의 의미가 옳다는 보장은 없다. 잘란도 역시 LLM 제안을 검증 전까지 신뢰하지 않으며, 모든 제안을 사람이 검토한다고 밝혔다. 따라서 이번 시스템의 핵심은 무인 자동 결정이 아니라, 과거 사례를 재사용해 수작업 후보 생성을 줄이면서도 최종 판단 경계를 API와 운영자에게 남긴 데 있다.
Footnotes
읽기 목록은 이 브라우저에 저장됩니다.
출처
- Zalando Engineering Blog - Automating Data Ingestion with a RAG Flywheel — Zalando Engineering
이 글은 위 출처를 근거로 자동 생성된 뒤 발행됐습니다. 원문을 함께 확인해 주세요. 교차 보도 없이 단독 출처로 작성됐습니다.