pile·
AI / ML·네이버 D2네이버 D2·

[AI 해커톤 후기] AI 해커톤 1위 팀이 AI에게 맡기지 않은 것

네이버 사내 AI 해커톤에서 1위를 차지한 팀이 투자 포트폴리오 관리 시스템(NStake)을 만들며 얻은 교훈을 다룬다. "AI가 무엇을 할 수 있나"보다 "어떤 일을 맡겨도 되는가"를 중심에 놓은 접근과, 재무 시스템에서 AI 역할의 경계를 어떻게 설계했는지가 핵심이다.

핵심 포인트
  • 현재 지분율을 직접 저장하는 대신 거래 이력을 시간순으로 기록해 현재 값을 계산으로 도출했다. 불일치가 생겨도 어느 거래에서 비롯됐는지 추적 가능하다.
  • 검증을 Rule(규칙 위반), Statistical(이상치 신호), eXternal(외부 공시 차이) 세 층으로 나눠 시스템이 자동 결정할 수 있는 것과 사람이 판단해야 할 것을 구분했다.
  • 월말 보고서를 LLM으로 생성하다가 결정론적 규칙 코드로 전환했다. 같은 입력에서 반드시 같은 숫자가 나와야 하는 공식 보고서는 생성형 AI로 대체할 수 없었다.
  • AI 가드레일을 응답 사후 필터가 아닌 권한 경계로 설계했다. 인증된 사용자의 접근 범위만 AI에 제공하는 구조를 택했다.
  • 해커톤 중 초기화 코드가 공용 DB에 실행되는 사고를 겪으며, AI 작업 도구의 최소 권한 원칙과 환경 분리의 중요성을 재확인했다.
상세 정리
  • 해커톤 구조: 사내 구성원이 실제 업무 문제를 출제하고, 개발·기획·디자인·재무·운영 여러 직군이 혼성 팀으로 6시간 동안 동작하는 프로토타입을 만드는 방식으로 진행됐다.
  • 문제 선택: 17명의 담당자가 각자의 엑셀로 네이버·계열사 출자 현황을 관리하는 구조로, 취합·검증·공시 연계에서 사람 의존 병목이 심각했다.
  • 문제 재정의: 처음엔 "엑셀을 웹 화면으로 대체"였으나, 숫자의 계산 근거를 설명할 수 없다는 본질 문제를 발견해 "거래 이력으로 현재 상태를 설명 가능하게"로 목표를 바꿨다.
  • 거래 이력 모델: 신규 투자·유상증자·구주 양수도·감자 등 거래를 시간순으로 기록해 현재 보유 주식 수와 지분율을 계산으로 도출한다. 지분율이 30%인 이유를 거래 흐름으로 설명할 수 있고, 거래 단위로 불일치를 추적할 수 있다.
  • 검증 3계층: Rule은 지분율 합계·누락 환율·청산 후 신규 거래처럼 규칙으로 확정 가능한 오류, Statistical은 평소보다 큰 금액 등 이상치 신호, eXternal은 내부 값과 외부 공시의 차이로 시스템이 자동 결정하지 않고 담당자 확인을 요구한다.
  • AI 역할 분리: 설계 문서 작성→구현→테스트 증거 수집→문서·코드 일치 검증의 순환에서 AI를 평가자·검증자로 활용했다. "성공 기준을 먼저 정의하고, 그 기준으로 결과를 검증하는 데 AI를 사용"한 것이 핵심이었다.
  • 보고서 전환 이유: LLM으로 보고서를 생성하면 같은 데이터에서도 표현이 달라지고, 모델 연결 장애 시 공식 보고서 생성이 영향받는다. 거래 분류·합계 계산을 결정론적 규칙 코드로 전환하고, AI는 자연어 질의·입력 초안 생성·불일치 설명에만 사용했다.
  • 디자인 결정: AI가 빠르게 만든 캐릭터 중심 UI를 버리고 네이버 디자인 시스템 기반 ERP 스타일로 전환했다. 재무팀 담당자에게 필요한 것은 친근함이 아니라 신뢰감·전문성이었다.
  • AI 가드레일 구조: 사내 SSO 후 AI·MCP 전용 짧은 수명 토큰 별도 발급, 매 요청마다 DB에서 역할·담당 법인 범위 재확인, 조회·LLM 질의·쓰기·관리자 기능 권한 분리, 상태 변경 전 사용자 명시적 확인, append-only 감사 로그 기록.
  • DB 사고 사례: 로컬 전제로 만든 초기화 코드가 공용 개발 DB에 연결된 채 실행돼 데이터 손실이 발생했다. AI 도구에 관리자 권한 기본 부여, 로컬·공용 환경 미분리, 실행 전 대상 환경 미확인이 복합 원인이었다. 복구에 20분이 걸렸다.
  • 원칙 정립: AI 작업 도구에 관리자 권한을 기본으로 주지 않는다, 로컬·개발·운영 환경을 명확히 분리한다, 삭제나 대규모 변경 전 대상 환경을 다시 확인한다.
왜 읽나AI를 업무 시스템에 통합할 때 무엇을 AI에 맡기고 무엇을 결정론적 코드로 남겨야 하는지, 그리고 권한 경계·환경 분리 등 엔지니어링 원칙을 어떻게 설계해야 하는지를 실전 사례로 배울 수 있다.
네이버 D2
네이버 D2 블로그
원문은 여기서 이어서 읽을 수 있어요
원문 읽기
읽음 (0)

이 글과 비슷한

  1. AI / ML·AWS KoreaAWS Korea Tech·

    1시간 대화로 만드는 Amazon Connect Customer AI Agent [AICC Builder 시리즈 #1]

    Amazon Connect Customer AI Agent를 1시간 내에 구축할 수 있게 해주는 오픈소스 샘플 앱 AICC Builder를 다룬다. 요구사항 인터뷰를 통해 Lambda 함수, OpenAPI 명세, AI 프롬프트, Contact Flow JSON, CDK 인프라 코드, FAQ/지식베이스 총 6가지 배포 에셋을 자동 생성한다. 코드 한 줄 없이 전화받는 PoC까지 완성하는 것이 핵심 목표다.

    #mcp#voice-ai#bedrock+2
  2. AI / ML·twilio-engTwilio Engineering·

    PHP에서 Conversation Relay 사용 시 배경 소음 처리 방법

    Twilio Conversation Relay를 PHP로 구현할 때 배경 소음이 STT(음성→텍스트) 정확도를 저하시키는 문제를 다룬다. 음성 AI는 STT → LLM → TTS 순차 파이프라인이라 전사 오류가 전체 응답 품질을 망친다. Nova-3 모델 설정 튜닝과 Flux 모델 전환 두 가지 해결책을 실측 테스트 결과와 함께 제시한다.

    #voice-ai#stt#deepgram+2