Commerce & PlatformsActive

PartsClub

수입차 부품 ERP

수입차 부품 유통 전문 AI-ERP. 50,000+ SKU를 대상으로 딥러닝 수요 예측 엔진이 리드타임·계절성·이상 수요를 반영해 최적 발주량을 자동 산출. pgvector 기반 시멘틱 검색이 OEM 번호·차종·모델명 혼용 쿼리를 처리하며 B2B 대리점 포털과 B2C 몰을 단일 재고 레이어 위에 통합 운영.

2026·6개월

Architecture Overview

PostgreSQL 단일 재고 원장 위에 FastAPI 백엔드가 수요 예측 서비스·시멘틱 검색 서비스·채널별 가격 엔진을 오케스트레이션. B2B 대리점 포털과 B2C 몰은 동일 API를 공유하되 price_rules + visibility_policy 테이블로 상품·가격을 채널 분리.

pgvector ivfflat · klue/roberta-base 임베딩 · XGBoost 시계열 앙상블 · 단일 재고 원장 CQRS

Technical Problems

01

OEM·차종·모델명 혼용 쿼리 처리 불가

수입차 부품 검색은 "BMW 5시리즈 E60 브레이크패드"처럼 OEM 번호·차종·연식·한글명이 뒤섞인다. LIKE 검색은 표기 변형에 무력하고 전문 검색 엔진도 도메인 문맥을 이해하지 못한다.

02

수요 예측 학습 데이터 희소성

긴 꼬리 SKU는 월 1~2건 판매 데이터만 존재해 딥러닝 단독 적용 시 과적합. 리드타임 변동·계절성·이상 수요(리콜·단종 예고) 요인이 복합 작용한다.

03

B2B·B2C 이중 채널 재고 동시 접근

대리점 선할인 예약과 B2C 장바구니가 동시에 같은 SKU에 접근할 때 초과 판매 방지와 채널별 가격 노출 분리가 필요하다.

Engineering Approach

01

pgvector ivfflat + klue/roberta-base 파인튜닝

`parts.embedding VECTOR(1536)` 컬럼, klue/roberta-base 모델을 부품 도메인 코퍼스로 파인튜닝해 OEM 번호·차종·한글명을 동일 벡터 공간에 임베딩. ivfflat 인덱스(probe=32)로 50K SKU p95 40ms 이내 시멘틱 검색 구현.

02

XGBoost 앙상블 + 유사 부품 군집 prior

3년 판매 이력에 리드타임·계절 지수·이상치 플래그를 피처로 추가한 XGBoost 앙상블. 희소 SKU는 유사 부품 군집 평균을 Bayesian prior로 사용해 cold-start 해결. 일 1회 Cloud Run 배치 재학습, MAPE 12% 달성.

03

단일 재고 원장 + PostgreSQL MVCC 동시성

`inventory_ledger` 단일 테이블, SELECT FOR UPDATE로 선점 잠금. `price_rules(tier, customer_id, sku_id, rate)` + `visibility_policy(channel, sku_id, visible)` 테이블로 채널 분리. 분산 잠금 없이 PostgreSQL MVCC만으로 동시성 제어.

Measurable Outcomes

40ms

검색 p95

50K SKU ivfflat 시멘틱 검색

−62%

재검색률

부품명 혼용 쿼리 정확도 향상

12%

예측 MAPE

XGBoost 앙상블, 희소 SKU 포함

2.1x

재고 회전율

자동 발주 제안 수락률 78%

Tech Stack

Search
pgvector ivfflatklue/roberta-baseVECTOR(1536)
Forecasting
XGBoostCloud Run BatchBayesian Prior
Backend
FastAPIPostgreSQLRedis
Frontend
Next.js 15TypeScriptSupabase

Visual Architecture

System Architecture

Semantic Search Pipeline

User Query
"BMW E60 브레이크패드"
klue/roberta-base
fine-tuned
VECTOR(1536)
pgvector ivfflat
50K SKU
p95 40ms
Ranked Parts

OEM 번호 · 차종 · 한글명 혼용 쿼리 — 동일 벡터 공간에서 크로스-모달 매칭

Demand Forecasting

Sales History 3yr
Lead time · Seasonal
XGBoost Ensemble
MAPE 12%
Reorder Qty
Auto PO

Cold-start: Bayesian prior from similar SKU cluster · Cloud Run daily batch

Channel Architecture — Single Inventory Ledger

PostgreSQL Inventory Ledger
price_rules(tier, customer_id) · visibility_policy(channel, sku_id)
B2B Portal
dealer · 3-tier pricing
B2C Mall
public pricing

SELECT FOR UPDATE · PostgreSQL MVCC · no distributed lock needed

Project Specs

Year

2026

Duration

6개월

Capability

Commerce & Platforms

Status

Active

Technologies

Next.jsTypeScriptPostgreSQLpgvectorPythonDemand ForecastingSemantic SearchSupabase

Have a similar project?

Let's build
something real.

Start a Conversation
PartsClub 수입차 부품 ERP | 달파몬 포트폴리오 | 달파몬 Dalpamon