AWS 기술 블로그

Amazon Bedrock을 활용한 Omelet의 경로 최적화 AI 에이전트, TOAST

/* 이 블로그는 Omelet 사의 Juni Lee 님, Seunghyun Kang 님, Jiwoo Son 님이 주 블로그 저자로 글을 써 주셨습니다. */

Omelet은 KAIST 교수진이 창업한 스타트업으로, 산업 현장의 복잡한 의사결정 문제를 해결하기 위해 최적화 알고리즘과 머신러닝을 결합한 AI 기반 솔루션을 개발하고 있습니다. 예를 들어 수많은 배송지와 차량, 시간 제약 등을 고려하여 효율적인 물류 경로를 도출하거나, 인력의 선호와 조직의 운영 관행까지 반영하여 효과적인 근무 일정을 수립하는 등, 다양한 변수와 제약조건 속에서 최적의 결정을 내려야 하는 문제들을 다룹니다. 이처럼 복잡성이 높은 문제들은 수작업이나 단순 규칙 기반의 접근 방식만으로는 효율적인 해답을 도출하기 어려워, 보다 정교하고 유연한 의사결정 지원 시스템이 요구됩니다.

Omelet은 다양한 최적화 도메인 중 먼저 강력한 경로 최적화 엔진을 개발하여 경로 최적화 문제를 정교하게 풀 수 있는 기반을 마련했으며, 현재는 이를 AI 에이전트 형태로 확장하는 방향으로 개발을 진행 중입니다. 사용자가 복잡한 수식을 다루지 않더라도 자연어 기반의 대화형 인터페이스를 통해 문제를 설명하고 해법을 받을 수 있도록 하고, 결과는 시각적이거나 요약된 형태로 직관적으로 제공되며, 반복 사용자 선호와 조직의 맥락까지 반영된 맞춤형 의사결정 지원이 가능하도록 설계하고 있습니다.

경로 최적화의 필요성과 도입 장벽

물류, 운송, 배달 등 다양한 산업에서는 경로 최적화를 통해 비용을 절감하고 운영 효율성을 높이고자 하는 니즈가 꾸준히 존재해왔습니다. 하지만 실제로 이를 구현하는 과정은 결코 단순하지 않습니다. 경로 최적화는 단순한 최단거리 계산이 아니라, 다양한 현실 조건을 동시에 고려해야 하는 복합적인 문제입니다. 예를 들어, 시간 제약, 차량 용량, 계약 권역, 선호 지역 및 배송 순서, 차량별 통행 제한, 고정차량과 용차 운용, 배차 담당자의 선호도 등 여러 요소가 반영되어야 하며, 실시간 트래픽 정보와 다양한 비용 요소(연료비, 인건비, 통행료 등)도 함께 고려되어야 합니다. 이러한 이유로 경로 최적화는 고도화된 알고리즘과 정교한 판단이 필요한 문제입니다.

더 큰 문제는, 최적화 솔루션이 있어도 이를 바로 이해하고 현장에 적용하는 과정이 쉽지 않다는 점입니다. API 문서는 기능을 명확히 설명하고 있지만, 복잡한 비즈니스 요구사항에 맞춰 효과적으로 활용하려면 해석과 적용에 필요한 개발 리소스나 도메인 이해가 요구되는 경우가 많습니다. 결국 최적화의 필요성은 분명하지만, 현실적인 도입과 활용에는 여전히 장벽이 존재합니다. Omelet은 이러한 문제를 해결하고자 새로운 접근 방식을 고민했습니다.

먼저 이런한 문제 해결에 대해서 영상을 보시고, 상세한 블로그 글을 보시면 좋겠습니다.

< YouTube: https://www.youtube.com/watch?v=z2rlw26EOxc >

문제 해결을 위한 접근 방식

1. Omelet Routing Engine

.

기존의 경로 최적화 문제를 푸는 방법은 크게 두 단계로 구성됩니다. 첫 번째는 현실 세계의 복잡한 비즈니스 요구사항을 수학적 모델로 변환하는 문제 정식화(Problem Formulation) 단계이며, 두 번째는 이렇게 정식화된 모델을 바탕으로 최적의 해를 구하는 최적화 알고리즘 적용(Optimization Solving) 단계입니다.

문제 정식화 단계에서는 실제 현장의 다양한 제약조건(예: 배송 시간 창, 차량 적재 한도, 고객 우선순위 등)을 위반하지 않으면서도 최소화하거나 최대화하고자 하는 목적함수(예: 총 이동 거리, 총 비용 등)를 수식으로 정확하게 정의해야 합니다. 이 과정은 단순한 프로그래밍이 아니라, 도메인에 대한 깊은 이해와 이를 바탕으로 문제를 수학적으로 표현할 수 있는 모델링 역량이 동시에 요구됩니다. 수식이 부정확하거나 현실을 반영하지 못하면, 이후 단계에서 아무리 정확한 최적화를 수행해도 의미 있는 결과를 얻기 어렵습니다.

최적화 알고리즘 적용 단계에서는 수식화된 모델을 기반으로 가능한 해들 중 가장 효율적인 해를 찾아야 합니다. 그러나 대부분의 경로 최적화 문제는 NP-hard로 분류되어, 가능한 모든 조합을 계산해보는 완전탐색 방식은 이론적으로 불가능합니다. 이에 따라, 현실적인 시간 내에 좋은 품질의 해를 얻기 위해 휴리스틱, 메타휴리스틱, 수학적 최적화 기법 등이 활용됩니다.

이처럼 경로 최적화는 단순한 개발 영역이 아니라, 수학적 전문성과 산업 도메인 지식이 결합되어야만 실질적인 효과를 낼 수 있는 복합적인 문제입니다. 문제 정식화와 최적화 알고리즘 적용이라는 두 단계는 서로 요구하는 역량이 다르고, 어느 한쪽에서 오류가 생기면 전체 결과의 품질이 크게 떨어질 수 있습니다. 특히 현실에서는 결과가 기대와 다를 때, 그것이 수학적 모델링의 문제인지, 알고리즘의 한계인지 구분하기 어려워 디버깅조차 쉽지 않습니다. 이러한 이유로 기존 방식은 산업 현장에서 적용과 확장이 어렵고, 전문가의 지속적인 개입 없이는 실용적인 솔루션을 만들기 어려운 구조적 한계를 갖고 있습니다.

Omelet은 이러한 근본적인 문제를 해결하기 위해, 사용자가 복잡한 수학적 문제 정식화를 하지 않고도 문제 데이터만 잘 연동하면 최적화 문제를 해결할 수 있는 독자적인 Routing Engine을 개발했습니다. 저희의 Routing Engine은 다음과 같은 혁신적인 접근 방식을 취합니다.

산업별 KPI나 제약조건이 정의된 최적화 문제가 주어졌을 때, 내부의 Representation & Generation 모델이 이를 해석하여 최적화 문제를 자동으로 구성하고 초기 해를 생성합니다. 이후, 강화학습 기반의 Reasoning AIImprovement Search 알고리즘이 해를 반복적으로 개선하며 최적의 결과로 다듬어 나갑니다. 이 모든 과정은 지속적인 학습 루프를 통해 시간이 지날수록 더욱 정교해집니다. 이 과정에서 실제 산업에서 담당 업무를 수행하고 있는 담당자 분들의 인터뷰나 피드백을 바탕으로 지속적으로 결과를 수정합니다.

결과적으로, 복잡한 수학적 모델링 없이도 누구나 자신의 비즈니스 요구사항에 맞는 고품질의 최적화 결과를 얻을 수 있는 기술적 기반이 마련된 것입니다.

2. TOAST: Routing Engine 활용도 극대화를 위한 AI 에이전트

하지만 Omelet은 여기서 멈추지 않았습니다. 아무리 강력한 엔진이라도 API 형태로만 제공된다면, 이를 활용하기 위한 개발 리소스가 부족하거나 코딩에 익숙하지 않은 현업 담당자에게는 여전히 장벽이 존재하기 때문입니다. 이러한 마지막 장벽마저 허물기 위해 탄생한 것이 바로 Omelet의 경로 최적화 AI 에이전트, TOAST(Transportation Optimization Agentic System & Technology)입니다.

TOAST는 다음과 같은 두 가지 목표를 통해 Omelet의 최적화 기술을 모든 사용자에게 제공합니다.

  • 개발자 지원: Routing Engine API 활용도 극대화

저희의 강력한 Routing Engine API를 개발자들이 더 쉽고 빠르게 활용할 수 있도록, TOAST는 API의 모든 기능을 효과적으로 사용하기 위한 학습 곡선과 통합의 복잡성을 크게 낮춰줍니다.

  • 비개발자 및 시민개발자 접근성 향상: 자연어 기반 경로 최적화

코딩 지식이 없는 현업 담당자나 일반 사용자도 자연어를 통해 손쉽게 경로 최적화 기능을 활용할 수 있도록 지원합니다. 복잡한 설정이나 기술적인 이해 없이도 효율적인 경로 최적화를 직접 경험하고 활용할 수 있도록 돕고자 합니다.

TOAST는 Amazon Bedrock 기반의 LLM을 활용하여 자연어 입력을 이해하고, 사용자의 목적에 맞는 답변과 함께 저희 Routing Engine에 최적화 요청을 자동으로 구성합니다. 자세한 아키텍처는 다음 섹션에서 소개합니다.

 

솔루션 아키텍쳐

1. 사용자 인터페이스 및 호스팅 환경: 직관적 경험과 안정적 기반

모든 사용자 상호작용은 고도화된 챗 UI를 통해 이루어집니다. 이 인터페이스는 단순한 텍스트 대화를 넘어 파일 첨부, 지도 시각화 컴포넌트 렌더링 등을 지원하여, 사용자가 AI 에이전트와 직관적이고 효과적으로 소통할 수 있는 환경을 제공합니다.

시스템의 안정성과 확장성은 서버리스 아키텍처를 통해 보장됩니다.

  • 애플리케이션 호스팅 (AWS Fargate for Amazon ECS): 웹 애플리케이션은 컨테이너화되어 AWS ECS Fargate에서 운영됩니다. 이를 통해 서버 관리의 복잡성을 줄이고, 트래픽 변화에 따라 리소스가 자동으로 확장되어 일관된 성능을 유지합니다.
  • 대화 기록 관리 (Amazon DynamoDB): 모든 대화 기록은 Amazon DynamoDB에 저장되어 밀리초 단위의 빠른 응답 시간을 보장합니다. TTL(Time To Live) 기능을 활용하여 데이터의 수명 주기를 자동으로 관리하고 스토리지 비용을 최적화합니다.

2. Supervisor Agent: 지능형 요청 라우팅 및 오케스트레이션

Supervisor Agent는 시스템의 중앙 관제탑 역할을 수행합니다. 사용자의 자연어 요청을 의미론적으로 분석하여 가장 적합한 전문 에이전트에게 작업을 동적으로 할당합니다.

에이전트 간 협업과 실행 흐름은 LangGraph 프레임워크로 체계적으로 관리됩니다. LangGraph는 조건부 분기, 순환, 병렬 실행 등 정교한 제어 구조를 그래프 형태로 정의하여 다단계 추론이 필요한 복잡한 워크플로우를 안정적으로 실행합니다.

모든 에이전트의 핵심 지능은 Amazon Bedrock의 Claude 4 Sonnet 모델을 기반으로 합니다. TAU-bench에서 검증된 뛰어난 도구 활용 능력을 바탕으로 각 에이전트가 상황에 맞는 도구를 자율적으로 선택하고 실행하는 ‘agentic’ 작업 수행에 최적화되어 있습니다. MMMLU 등 다국어 평가에서의 성과는 글로벌 환경에서도 일관된 자율 실행 품질을 보장합니다. 시스템 전반의 동일한 모델 적용으로 각 에이전트의 판단 기준과 실행 방식의 일관성을 확보하였습니다.

3. 전문 에이전트: 분산된 역량, 통합된 문제 해결

Supervisor Agent의 지시에 따라 각 전문 분야를 담당하는 에이전트들이 실제 작업을 수행합니다.

3.1. RAG Agent: 기술 문서 기반의 전문 지식 제공

RAG Agent는 특정 도메인의 기술 문서를 기반으로 정확한 정보를 제공하는 지식 전문가입니다. 사용자가 Routing Engine API의 사용법에 대해 질문하면, 관련 문서를 실시간으로 검색하여 근거에 기반한 답변을 생성합니다.

  • 하이브리드 검색: 검색 정확도를 극대화하기 위해 하이브리드 검색 방식을 도입했습니다. Amazon Bedrock의 Cohere Embed 모델을 통한 의미 기반의 Dense 검색과 키워드 기반의 Sparse 검색을 결합하여 사용자의 의도를 정확하게 파악합니다.
  • 고성능 벡터 DB (Qdrant): 벡터화된 데이터는 Rust로 개발된 Qdrant에 저장됩니다. 메모리 효율성과 처리 속도가 뛰어나며, 메타데이터 필터링 기능으로 검색 범위를 정교하게 좁힐 수 있습니다.

3.2. Route Optimization Agent: 외부 엔진 연동을 통한 복잡한 문제 해결

Route Optimization Agent는 Omelet의 Routing Engine API를 호출하여 다양한 제약 조건을 고려한 최적 경로를 도출합니다.

모든 데이터는 Amazon S3에 저장됩니다. S3는 99.999999999%의 내구성과 무한한 확장성을 제공하여 데이터 증가에 대한 걱정 없이 중요한 최적화 데이터를 안전하게 보관할 수 있습니다.

3.3. Data Handling Agent: 자연어 기반 데이터 탐색

Data Handling Agent는 사용자가 업로드한 데이터를 단순 저장하는 것을 넘어 데이터 탐색과 실시간 쿼리 기능을 제공합니다.

  • 데이터 처리 및 표준화: 다양한 형식(CSV, Excel 등)의 파일을 표준화된 내부 포맷으로 변환하고, 데이터 검증과 주소 변환 등 전처리 과정을 수행하여 데이터 품질을 보장합니다.
  • 자연어 쿼리: 사용자는 “강남에 있는 배송지만 보여줘”와 같은 자연어로 데이터를 즉시 조회하고, 결과를 테이블이나 요약 등 원하는 형태로 받아볼 수 있습니다. 이로써 데이터 접근성이 크게 향상됩니다.

4. 통합 모니터링 및 관찰성: 시스템 신뢰성 및 지속적인 개선

시스템의 신뢰성과 성능 최적화를 위해 Arize Phoenix를 중심으로 한 관찰성(Observability) 체계를 구축했습니다. Phoenix는 에이전트 호출 시 이루어지는 LLM 호출, 도구 호출 등의 각 단계를 추적하는 트레이싱 전문 도구입니다. 내부 호출 구조를 시각화하고, 에이전트별 응답 시간, 토큰 사용량 등 핵심 메트릭을 실시간으로 모니터링하여 성능 병목 지점을 조기에 발견하고 대응할 수 있게 합니다.

Phoenix 역시 ECS Fargate 환경에서 운영되어 모니터링 시스템 자체의 안정성과 확장성을 확보하고 전체 아키텍처와의 일관성을 유지합니다.

TOAST 주요 사용 시나리오

Routing Engine QnA

TOAST의 RAG(Retrieval-Augmented Generation) Agent는 Routing Engine API에 대한 질문에 정확하고 신뢰할 수 있는 답변을 제공하는 핵심 구성 요소입니다. 사용자가 API 사용법, 기술적 명세, 또는 구현 예시에 대해 질문하면, 이 에이전트가 자동으로 관련 문서를 검색하여 정확한 정보를 제공합니다.

RAG Agent는 검색 정확도를 높이기 위해 이중 벡터(dense, sparse) 하이브리드 검색과 메타데이터 필터링 검색을 수행합니다. 메타데이터 필터링은 문서 분류를 기준으로 하며, 그 분류는 다음과 같습니다:

  • API Documentation: 개발자들이 Omelet의 Routing Engine API를 자신의 애플리케이션과 서비스에 통합하는 데 필요한 기술 명세와 사양을 제공하는 문서입니다.
  • Introduction: Omelet Routing Engine의 핵심 인공지능 방법론과 전체 시스템 아키텍처를 설명하는 문서입니다.
  • Target Problem: Omelet Routing Engine이 해결하고자 하는 구체적인 경로 최적화 문제를 정의하고 설명하는 문서입니다.
  • Examples: Omelet Routing Engine의 실제 활용 방법을 보여주는 코드 샘플과 사용 사례를 제시하는 문서입니다.

LLM은 검색된 문서를 바탕으로 답변을 생성하며, 모든 응답에는 참조 문서의 출처를 명시합니다. 이를 통해 개발자는 Routing Engine API의 복잡한 기능을 쉽게 이해하고 활용할 수 있으며, 비개발자도 자연어로 기술 질문을 할 수 있습니다.

경로 최적화 워크플로우

TOAST의 경로 최적화 워크플로우는 AI 에이전트가 사용자의 자연어 요청부터 최적화된 경로 결과 제공까지의 전 과정을 지능적으로 지원합니다.

1. 데이터 처리 등록

사용자가 파일을 업로드하면 데이터 분류 과정을 거쳐 시스템에 등록됩니다. 등록 가능한 데이터는 ‘depots(차고지/물류센터 정보)’, ‘drivers(차량/기사 정보)’, ‘orders(주문 정보)’로 분류되며, 경로 최적화에 필수적인 위치 정보와 차량 적재 중량, 상품 중량 등의 제약 조건을 포함합니다.

데이터를 파일이 아닌 텍스트로 제공할 경우, LLM을 활용하여 각 분류에 맞게 변환하고 지오코딩(주소를 좌표로 변환)과 같은 전처리 과정을 거친 후 저장합니다.

2. 데이터 준비 최적화

데이터가 사전에 제대로 등록되었는지 확인한 뒤, 저장된 정보를 직접 쿼리해 필요한 값만 가져옵니다. 텍스트로 데이터를 제공한 뒤 LLM이 이를 다시 API 입력에 맞게 변환하는 것이 아닌 등록된 데이터를 쿼리하여 데이터를 준비하는 방식은 불필요한 토큰 소비를 막고, 모델이 실제로 존재하지 않는 차량이나 방문지를 ‘환각’으로 만들어낼 위험을 최소화할 수 있습니다.

데이터 쿼리를 위해선 LLM이 조건에 맞는 창고·방문지·차량을 필터링하는 실행 코드를 동적으로 생성합니다. 예를 들어, 특정 창고명 검색이나 중량 기준을 충족하는 방문지 필터링을 위한 조건문을 자동으로 작성합니다. 이 코드는 데이터베이스에서 필요한 항목만 추출하여 Routing Engine API 호출에 필요한 입력값을 준비하고, API는 이 준비된 데이터를 기반으로 최적 경로를 계산합니다.

3. 결과 분석 시각화 제공

최적화 결과를 바탕으로 사용자가 이해하기 쉬운 설명을 제공합니다. 최적화 결과는 각 차량별 경로 비용, 총 거리 비용, 그리고 각 차량별 경로 정보를 포함합니다. 최적화된 차랑별 경로는 지도 위에 시각화하여 직관적으로 확인할 수 있도록 합니다.

4. 피드백 기반 재최적화

사용자가 최적화 결과를 검토한 후 만족스럽지 않거나 수정이 필요한 부분이 있다면, 복잡한 설정 변경 없이 자연어로 간단히 요청할 수 있습니다. 에이전트가 이를 자동으로 해석하여 제약 조건으로 반영하고 재최적화를 수행합니다. 이러한 대화형 최적화 과정을 통해 사용자는 기술적 전문 지식 없이도 자신의 비즈니스 요구사항에 맞는 최적의 경로를 얻을 수 있습니다.

향후 계획 비전

TOAST는 Amazon Bedrock과 AWS 관리형 서비스를 기반으로, 복잡한 최적화 기술을 누구나 직관적으로 사용할 수 있도록 설계된 AI 에이전트 시스템입니다. 자연어만으로 경로 최적화를 수행하고, 결과를 분석·시각화하며, 피드백에 따라 반복적인 최적화를 손쉽게 진행할 수 있다는 점에서 기존 API 중심 접근 방식의 한계를 뛰어넘었습니다.

이 경험을 통해 저희는 AI 에이전트가 복잡한 기술을 일상적인 의사결정 도구로 전환할 수 있음을 확인했습니다. TOAST는 그 첫 번째 사례이며, 저희는 이를 기반으로 다음과 같은 확장을 계획하고 있습니다:

  • 도메인 확장: 경로 최적화를 넘어 스케줄링, 적재, 재고 관리 등 다양한 산업 문제로 적용 범위를 확대합니다.
  • 개발자 접근성 강화: Model Context Protocol(MCP) 기반의 구조를 도입해, 외부 개발자들이 쉽게 최적화 기능을 자신의 앱에 통합할 수 있도록 지원합니다.

Omelet의 목표는 최적화 기술을 소수 전문가의 전유물이 아닌, 모든 의사결정자가 쉽게 활용할 있는 일상 도구로 만드는 것입니다. TOAST는 그 비전을 현실로 만들어가는 시작점입니다.

더 자세한 기술적 구현 방법이나 Omelet의 최적화 솔루션에 대해 궁금하다면, info@omelet.ai 로 문의해주시기 바랍니다.

Juni Lee

이준의 님은 Omelet의 AI 엔지니어로서, 대규모 언어모델 기반 최적화 에이전트 시스템의 아키텍처 설계 및 핵심 구현을 책임지고 있습니다. 신뢰 가능한 AI 에이전트를 통해 비전문가도 복잡한 산업 문제를 주도적으로 해결할 수 있도록 돕는 사용자 중심의 시스템 구축에 관심이 많으며, 생성형 AI를 활용한 업무 생산성 향상에도 꾸준히 주력하고 있습니다.

Seunghyun Kang

강승현 님은 Omelet에서 OR(Operations Research) 엔지니어이자 풀스택 엔지니어로 활동하고 있으며, 제품개발본부의 본부장을 맡고 있습니다. 주요 역할은 최적화를 위한 알고리즘 개발로, 복잡한 문제를 수학적 모델과 계산 기법을 통해 해결하는 데 집중하고 있습니다. 동시에 제품 개발의 전체적인 흐름을 관리하며, 기술적 실행뿐 아니라 기획과 운영 전반에 걸친 총괄 책임을 수행하고 있습니다.

Jiwoo Son

손지우 님은 Omelet의 ML 엔지니어로서, 다양한 최적화 문제를 해결하기 위한 인공지능 모델 연구와 개발을 수행하고 있습니다. 또한, 사업개발본부에서 여러 기업들과의 POC 프로젝트를 통해 각 기업이 직면한 최적화 문제를 정의하고, AI와 OR(Operations Research) 방법론을 결합하여 실제 산업 현장에 적용 가능한 알고리즘을 설계하는 역할을 맡고 있습니다.

JinHyeok Lee

JinHyeok Lee

이진혁 솔루션즈 아키텍트는 솔루션 개발 및 보안 프로젝트 경험을 통해 스타트업 고객들이 안전하게 워크로드를 설계하고 운영할 수 있도록 지원하는 일을 담당하고 있습니다.

Minhae Kim

Minhae Kim

김민해 Account Manager는 스타트업 고객이 AWS를 통해 성장할 수 있도록 클라우드 도입을 지원하고 있습니다. 최근에는 생성형 AI 분야에서 AWS의 서비스를 활용한 프로젝트를 통해 고객의 비즈니스 혁신과 경쟁력 강화에 기여하고 있습니다.