메뉴

OpenAI API를 사용하여 유럽의 물류 주소를 검증함으로써 인건비를 32% 절약했으며, 두 가지 치명적인 문제도 피할 수 있었습니다.

지난주 ‘블랙 위크’ 대세일이 막 끝났는데, 기술팀이 회고 회의를 열었을 때 이런 사실을 발견했습니다: 올해 주소 자동 검증의 통과율이 작년보다 41% 상승했습니다. 예전에는 이상 주소를 처리하기 위해 별도로 고용했던 파트타임 직원이 3명이었는데, 올해는 그중 1명만 있어도 충분하더군요.

하지만 아무도 지난달에 겪었던 그 429 오류에 대해 언급하고 싶어 하지 않아요. 대규모 할인 행사 첫날, 가장 바쁜 3시간 동안에 말이죠.13%의 주소 해결 요청이 바로 거부됩니다.고객 서비스 후방 시스템이 다운되었고, 운영팀이 거의 우리 책상을 뒤엎으러 올 뻔했습니다.

"""처음 접하는 분들께 솔직히 말씀드리자면, OpenAI API란 무엇일까요?"

즉, 직접 대형 모델을 훈련시킬 필요 없이 OpenAI에서 이미 훈련된 GPT-4o, GPT-3.5-turbo와 같은 모델의 인터페이스를 호출하여 요청을 보내면 결과를 받을 수 있습니다. 사용한 토큰의 양에 따라 비용이 부과되며, 단일 요청은 최대 128k의 컨텍스트를 지원하는 버전이 이제 모두 공개되었습니다.

우리가 처음에 그것을 선택한 이유는 매우 간단했습니다: 유럽 각국의 주소 형식이 너무 복잡하고 혼란스러웠기 때문입니다. 영국의 우편번호와 독일의 우편번호 형식이 완전히 다르며, 다양한 언어의 철자 오류도 많았습니다. 이전에 직접 만든 규칙집을 반년에 8번이나 업데이트했지만 여전히 오류가 발생했습니다. 하지만 API를 사용한 의미 분석을 통해 올바른 프롬프트를 제공하면 정확도가 96% 이상으로 바로 향상되었습니다.

실제로 얻은 3가지 이점입니다; 거짓된 것은 없습니다.

  • 알고리즘 팀을 고용하여 모델을 개발할 필요도 없었고, 3개의 백엔드 시스템을 1주일 만에 인터페이스로 연동하는 데 성공했습니다. 서비스를 시작한 첫 달에 이전에 고용했던 3명의 파트타임 직원들이 들였던 인건비를 32% 절약할 수 있었습니다.
  • 이전에는 규칙 라이브러리에서 인식할 수 없었던 철자 오류나 약어 주소들이 이제 90% 이상 자동으로 수정되어, 사용자가 주문할 때 잘못된 주소를 입력할 경우 주문 취소율이 28%나 감소했습니다.
  • 다국어 혼합 입력을 지원합니다. 폴란드 사용자가 폴란드어로 입력한 주소나 스페인 사용자가 스페인어로 입력한 주소도 별도의 현지화 작업 없이 그대로 인터페이스에 전달하면 표준 물류 형식으로 자동으로 파싱됩니다.

이점만 보지 말고, 우리는 그 두 가지 문제로 거의 큰일 날 뻔했어요.

Blue and yellow shipping containers aligned on a sandy beach with the ocean and sky in the background.

첫 번째 문제는 기본적인 단일 모델의 제한 설정입니다. 이전에는 GPT-4o-mini만 사용했는데, 기본적인 분 단위의 제한 설정이 평소 사용량에는 충분했지만, 대규모 프로모션 당일에는 요청량이 3배로 증가하여 제한이 바로 발동되었습니다. 그 결과 13%의 요청이 429 오류를 보였습니다. 이후에는 비피크 시간대의 요청을 GPT-3.5-turbo로 전환하는 하위 수준의 로직을 추가하여 문제를 해결했습니다.

두 번째 문제는 민감한 주소의 오진입니다. 한 번은 사용자가 “군사 기지”와 관련된 단어가 포함된 주소를 입력했는데, 이 주소가 API의 콘텐츠 검열에 의해 바로 차단되었습니다. 우리는 실패에 대한 대비 조치를 취하지 않았기 때문에 해당 주문이 2일 동안 처리되지 않았고, 사용자는 바로 나쁜 평가를 남겼습니다.

누가 사용해야 할까요? 정말로 돈을 낭비하지 말아야 합니다.

만약 여러분도 저희처럼 다양한 언어의 의미 처리, 끝없이 많은 규칙을 작성해야 하는 상황에 처해 있다면—예를 들어 주소 검증, 사용자 문의에 대한 자동 응답, 다국어 콘텐츠 생성 등—그리고 팀 내에 전문적인 알고리즘 팀이 없다면, OpenAI API를 사용하는 것이 자체적으로 모델을 훈련시키는 것보다 훨씬 경제적입니다.

하지만 만약 당신이 처리하는 데이터가 외부로 유출될 수 없는 핵심 데이터라면, 예를 들어 금융 분야의 핵심 데이터 처리나 의료 분야의 개인정보 해석과 같은 경우, 또는 요청량이 매우 안정적이고 규칙이 명확한 간단한 시나리오라면, 굳이 이런 복잡한 시스템에 참여할 필요는 없습니다. 자체적으로 규칙을 만들거나 소규모 모델을 로컬에 배포하는 것이 더 저렴하고 안전할 것입니다.

처음 사용하는 분들을 위한 3가지 팁입니다. 이 모든 팁은 저희가 실제로 경험하며 배운 것들을 바탕으로 정리한 것들이에요.

  • 한 개의 모델만 사용하지 마세요. 적어도 두 개의 다른 수준의 모델을 준비하여 장애 상황에 대비하세요. 고급 요청은 정확도가 높은 모델을 사용하고, 저급 요청이나 피크 시간대의 요청은 저렴한 모델을 사용하면 비용을 최소 40%까지 절약할 수 있으며, 단일 모델의 제한으로 인한 장애도 방지할 수 있습니다.
  • 모든 요청에 대해 재시도 및 보조 처리 로직을 적용해야 하며, 콘텐츠 검열, 제한, 시간 초과와 같은 상황에 대한 대비 계획을 미리 세워두어야 합니다. 인터페이스가 다운되고 나서야 수동으로 처리하는 것을 기다리지 마세요.
  • 처음부터 가장 고급스러운 모델을 사용할 필요는 없어요. 먼저 가장 저렴한 GPT-3.5-turbo로 효과를 테스트해보세요. 효과가 만족스럽지 않다면 그때 더 고급스러운 모델로 바꾸면 돼요. 대부분의 간단한 시나리오에서는 작은 모델로도 충분히 잘 작동합니다.

마지막으로, 여러분이 자주 묻는 두 가지 질문에 대해 답변드리겠습니다.

질문: 유럽 지역에서의 호출이 매우 늦어질까요?
답변: 저희는 프랑크푸르트 노드를 사용하고 있으며, 대부분의 요청은 15ms 이내에 완료됩니다. 단, 몇 퍼센트의 요청만이 갑자기 200ms 이상 걸리기도 합니다. 캐싱을 추가하면 이 문제를 해결할 수 있으며, 비즈니스에는 전혀 영향을 미치지 않습니다.

질문: 파싱 결과가 잘못될 수 있는 상황이 있을까요?
네, 저희는 현재 신뢰도가 80% 미만인 결과들을 수동 검토로 전환하고 있습니다. 이 규칙을 도입한 후에는 오류율이 거의 무시할 수 있을 정도로 줄었습니다.

도움이 되었나요?

기술 지원온라인 상담
侧栏
맨 위로
简体中文ZH-CNDefault繁體中文ZH-TWEnglishEN日本語JA한국어KOภาษาไทยTHTiếng ViệtVIBahasa IndonesiaIDEspañolESFrançaisFRDeutschDEРусскийRUPortuguêsPTItalianoITالعربيةAR