밀버스 벡터 데이터베이스로 구동되는 지능형 옷장 맞춤화 시스템 구축
표지 이미지
침실이나 탈의실에 딱 맞는 옷장을 찾고 있다면 대부분의 사람들이 맞춤 제작을 떠올릴 것입니다. 하지만 모든 사람의 예산이 그렇게까지 확장될 수 있는 것은 아닙니다. 그렇다면 기성품은 어떨까요? 이러한 유형의 옷장의 문제점은 고유한 수납 요구 사항을 충족할 만큼 유연하지 않기 때문에 기대에 미치지 못할 가능성이 매우 높다는 것입니다. 또한 온라인에서 검색할 때 원하는 특정 유형의 옷장을 키워드로 요약하기가 다소 어렵습니다. 검색창에 입력한 키워드(예: 주얼리 트레이가 있는 옷장)와 검색 엔진에 정의된 키워드(예: 인서트가 있는 풀아웃 트레이가 있는 옷장)가 매우 다를 수 있습니다.
하지만 새로운 기술 덕분에 해결책이 있습니다! 가구 소매 대기업인 IKEA는 사용자가 다양한 기성품 옷장 중에서 선택하고 옷장의 색상, 크기, 인테리어 디자인을 맞춤 설정할 수 있는 인기 있는 디자인 도구인 PAX 옷장을 제공합니다. 행잉 공간, 여러 개의 선반 또는 내부 서랍이 필요한지 여부에 관계없이 이 지능형 옷장 맞춤화 시스템은 언제나 사용자의 요구를 충족시킬 수 있습니다.
이 스마트 옷장 디자인 시스템을 사용하여 이상적인 옷장을 찾거나 만들려면 다음과 같이 하세요:
- 옷장의 모양(일반, L자형 또는 U자형), 길이, 깊이 등 기본 요구사항을 지정합니다.
- 필요한 수납 공간과 옷장 내부 구성을 지정합니다(예: 걸이 공간, 풀아웃 바지 걸이 등 필요).
- 서랍이나 선반과 같은 옷장의 일부를 추가하거나 제거합니다.
그러면 디자인이 완성됩니다. 간단하고 쉽습니다!
팍스 시스템
이러한 옷장 디자인 시스템을 가능하게 하는 매우 중요한 구성 요소는 벡터 데이터베이스입니다. 따라서 이 글에서는 벡터 유사도 검색을 기반으로 하는 지능형 옷장 맞춤화 시스템을 구축하는 데 사용되는 워크플로와 유사도 검색 솔루션을 소개하고자 합니다.
이동하기:
시스템 개요
이러한 스마트 옷장 맞춤화 도구를 제공하려면 먼저 비즈니스 로직을 정의하고 품목 속성과 사용자 여정을 이해해야 합니다. 옷장은 서랍, 트레이, 선반과 같은 구성 요소와 함께 모두 비정형 데이터입니다. 따라서 두 번째 단계는 AI 알고리즘과 규칙, 사전 지식, 품목 설명 등을 활용하여 이러한 비정형 데이터를 컴퓨터가 이해할 수 있는 데이터 유형인 벡터로 변환하는 것입니다!
사용자 지정 도구 개요
생성된 벡터를 처리하기 위해서는 강력한 벡터 데이터베이스와 검색 엔진이 필요합니다.
도구 아키텍처
사용자 정의 도구는 가장 인기 있는 검색 엔진과 데이터베이스를 활용합니다: Elasticsearch, Milvus, PostgreSQL입니다.
왜 Milvus인가?
옷장 구성 요소에는 색상, 모양, 내부 구성 등과 같은 매우 복잡한 정보가 포함되어 있습니다. 그러나 옷장 데이터를 관계형 데이터베이스에 보관하는 기존의 방식으로는 충분하지 않습니다. 널리 사용되는 방법은 임베딩 기술을 사용하여 옷장을 벡터로 변환하는 것입니다. 따라서 벡터 저장과 유사도 검색을 위해 특별히 설계된 새로운 유형의 데이터베이스를 찾아야 합니다. 여러 인기 있는 솔루션을 조사한 결과, 뛰어난 성능과 안정성, 호환성, 사용 편의성을 갖춘 Milvus 벡터 데이터베이스가 선택되었습니다. 아래 차트는 여러 인기 있는 벡터 검색 솔루션을 비교한 것입니다.
솔루션 비교
시스템 워크플로
시스템 워크플로우
옷장 크기, 색상 등을 기준으로 대략적인 필터링을 위해 Elasticsearch를 사용합니다. 그런 다음 필터링된 결과는 유사성 검색을 위해 벡터 데이터베이스인 Milvus를 통과하고 쿼리 벡터와의 거리/유사성에 따라 결과가 순위가 매겨집니다. 마지막으로 비즈니스 인사이트를 기반으로 결과를 통합하고 더욱 세분화합니다.
데이터 흐름
옷장 사용자 지정 시스템은 기존 검색 엔진 및 추천 시스템과 매우 유사합니다. 세 부분으로 구성되어 있습니다:
- 데이터 정의 및 생성을 포함한 오프라인 데이터 준비.
- 리콜 및 랭킹을 포함한 온라인 서비스.
- 비즈니스 로직에 기반한 데이터 후처리.
데이터 흐름
오프라인 데이터 흐름
- 비즈니스 인사이트를 사용하여 데이터를 정의합니다.
- 사전 지식을 사용하여 다양한 구성 요소를 결합하여 옷장으로 구성하는 방법을 정의합니다.
- 옷장의 기능 레이블을 인식하고 해당 기능을
.json
파일에 있는 Elasticsearch 데이터로 인코딩합니다. - 비정형 데이터를 벡터로 인코딩하여 리콜 데이터를 준비합니다.
- 밀버스 벡터 데이터베이스를 사용해 이전 단계에서 얻은 리콜 결과의 순위를 매깁니다.
오프라인 데이터 흐름
온라인 데이터 흐름
- 사용자로부터 쿼리 요청을 받고 사용자 프로필을 수집합니다.
- 옷장에 대한 요구 사항을 파악하여 사용자 쿼리를 이해합니다.
- Elasticsearch를 사용해 대략적인 검색을 수행합니다.
- 밀버스에서 벡터 유사도 계산을 기반으로 거친 검색에서 얻은 결과에 점수를 매기고 순위를 매깁니다.
- 백엔드 플랫폼에서 결과를 후처리하고 정리하여 최종 결과를 생성합니다.
온라인 데이터 흐름
데이터 후처리
비즈니스 로직은 회사마다 다릅니다. 귀사의 비즈니스 로직을 적용하여 결과에 최종적인 손질을 더할 수 있습니다.
시스템 데모
이제 우리가 구축한 시스템이 실제로 어떻게 작동하는지 살펴봅시다.
사용자 인터페이스(UI)는 옷장 구성 요소의 다양한 조합 가능성을 표시합니다.
각 구성 요소는 기능(크기, 색상 등)에 따라 레이블이 지정되고 Elasticsearch(ES)에 저장됩니다. ES에 라벨을 저장할 때는 네 가지 주요 데이터 필드를 입력해야 합니다: ID, 태그, 저장 경로 및 기타 지원 필드입니다. ES와 레이블이 지정된 데이터는 세분화된 리콜 및 속성 필터링에 사용됩니다.
es
그런 다음 다양한 AI 알고리즘을 사용하여 옷장을 벡터 집합으로 인코딩합니다. 벡터 세트는 유사성 검색 및 순위를 매기기 위해 Milvus에 저장됩니다. 이 단계는 보다 정교하고 정확한 결과를 반환합니다.
Milvus
Elasticsearch, Milvus 및 기타 시스템 구성 요소는 전체적으로 사용자 정의 디자인 플랫폼을 형성합니다. 리콜 중에 Elasticsearch와 Milvus의 도메인별 언어(DSL)는 다음과 같습니다.
dsl
더 많은 리소스를 찾고 계신가요?
Milvus 벡터 데이터베이스가 어떻게 더 많은 AI 애플리케이션을 강화할 수 있는지 알아보세요:
- 시스템 개요
- 데이터 흐름
- 시스템 데모
- 더 많은 리소스를 찾고 계신가요?
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word