매일 아침 "USB-C 충전기 25달러 아래로 2일 배송 찾아줘" 같은 요청을 쇼핑 AI가 처리한다고 상상해보자. 문제는 말은 잘해도 실제로는 엉뚱한 제품을 추천하거나, 재고가 없는 상품 ID를 지어내는 경우가 많다는 점이다. 최근 공개된 EcomRLVE-GYM은 이런 현실을 바꾸기 위해 설계된 훈련장이다.

400개 환경, 12개 난이도 축으로 구성된 쇼핑 시뮬레이터

연구팀은 EcomRLVE-GYM에서 400개의 독립된 환경을 제공한다. 각 환경은 제품 검색, 장바구니 구성, 주문 조회, 반품 처리 등 실제 전자상거래 시나리오를 시뮬레이션한다. 환경마다 숨겨진 목표(ground-truth goal)가 생성되고, 가상 사용자가 대화를 시작하면 AI 에이전트는 6가지 도구(catalog.search, cart.add, cart.remove, order.lookup, policy.query, cart.checkout)를 사용해 요청을 처리해야 한다. 난이도는 0부터 12까지 13단계로, 한 숫자가 동시에 12가지 독립적인 측면(제품 수, 변형 선택, 수량, 턴 예산, 오타 노이즈, 문맥 전환, 검색 깊이, 주문 이력 크기, 정책 복잡성, 도구 예산 등)을 제어한다. 예를 들어 d=0에서는 단일 제품을 변형 없이 장바구니에 추가하는 단순 작업이지만, d=6이 되면 3개 제품을 거의 모두 특정 변형(USB-C vs Lightning, 무광 vs 유광)과 1개 초과 수량으로 정확히 담아야 한다.

기존 방식과의 차이: 사람 평가 없이 코드로 보상 계산

예전에는 쇼핑 AI를 훈련할 때 사람이 직접 대화를 평가하거나 다른 언어모델(LLM-as-a-judge)에게 판단을 맡겼다. 이번 환경은 완전히 다르다. 보상(reward)이 순수 코드로 계산된다. 구체적으로 세 가지 신호로 구성된다: (1) F1 점수 — (제품, 변형, 수량) 튜플의 정확 일치율, (2) 효율성 보너스 — 적은 턴 수로 완료할수록 추가 점수, (3) 환각 검사 — 추천된 모든 제품 ID가 실제 검색 결과에서 나온 것인지 확인. 잘못된 JSON 출력이나 허용되지 않은 도구 호출은 즉시 실패 점수를 부여한다. 이 모든 평가는 숨겨진 목표에 접근 가능한 프로그램이 수행하므로, 사람 주석이나 LLM 판단이 전혀 필요 없다. 개발자는 GitHub 저장소에서 코드와 환경을 직접 내려받을 수 있다.

개발자가 바로 체감하는 변화는 적응형 난이도 스케줄링이다

각 환경은 AI 에이전트의 성공률을 독립적으로 추적한다. 에이전트가 현재 난이도를 안정적으로 통과해야만 다음 단계로 자동 전환된다. 이는 "너무 쉬워서 배울 게 없거나, 너무 어려워서 진전이 없는" 상황을 막아준다. 실제 사례를 보면, Qwen 3 8B 모델이 d=1에서는 3턴 만에 깔끔하게 작업을 끝냈지만, d=8에서는 대나무 대신 숯색을 고르고, XL 대신 XS를 선택하며, 에어프라이어 변형을 두 번의 사용자 수정에도 고치지 못하고 "그 변형은 없다"고 환각을 내는 오류 연쇄를 보였다. 이런 다단계 실패 패턴을 적응형 훈련이 교정하도록 설계된 것이다.

쇼핑 AI가 단순한 말잔치에서 실제 업무를 완료하는 도구로 진화하는 첫걸음이다.