핀익의 오픈소스 Kairos가 코딩 에이전트로 사기 탐지 모델을 스스로 튜닝한다

Hacker News2026-11-04조회 1

핀익(Finic)이 실시간 사기·리스크 의사결정 플랫폼 Kairos를 오픈소스로 공개했다. 회원가입, 로그인, 주문, 결제, 정산 같은 이벤트가 발생하는 순간 승인·추가인증·검토·차단 중 하나를 돌려주고, 그 판단에 쓰인 신호까지 함께 남기는 것이 핵심이다. 라이선스는 아파치 2.0이고, 상용 서비스인 Sardine·Sift·Riskified·SEON을 겨냥한 대안을 표방한다.

판정은 한 번의 호출로 끝난다. 위험 점수와 판정 사유가 같이 돌아오며, 근거가 되는 데이터는 해당 사용자의 과거 이력뿐 아니라 그가 공유하는 기기·카드·주소, 그리고 현재 세션 정보다. 여기에 조건 분기, 웹훅 호출, 케이스 생성 같은 단계를 묶은 워크플로를 얹을 수 있고, 사람이 처리하는 검토 큐에 쌓인 케이스의 결론은 다시 학습용 레이블로 환류된다.

가장 눈에 띄는 부분은 모델을 누가 손보느냐다. Claude Code, Cursor, Codex, VS Code 같은 도구를 MCP 서버로 연결하면 에이전트가 사기 ML 엔지니어의 역할을 대신한다. 어떤 요청을 판정할지, 결정 모델에 어떤 질문을 던질지, 어떤 필드를 점수화할지 정의하고, 실험 변형을 설계한 뒤 결과를 읽고 우승 모델을 워크플로의 다음 버전으로 배포한다. 에이전트가 수행한 모든 동작은 발급된 키 단위로 기록된다.

실험은 시계열 분할로 돌아간다. 가장 오래된 레이블 데이터로 학습하고 그다음 구간에서 후보를 고르며 마지막 최신 구간에서 성능을 검증한다. 보고되는 지표는 ROC-AUC, PR-AUC, 기준선 대비 개선폭과 그 95% 구간, 지정 임계값에서의 정밀도와 재현율이다. 원문에 소개된 예시에서는 결제 거절이 늘어난 상황에서 에이전트가 여섯 가지 변형을 만들어 돌린 끝에, 주문 수치와 결정 모델의 답변을 함께 넣은 로지스틱 회귀가 검증 ROC-AUC 0.949, 테스트 0.930으로 이겨 v6로 배포됐다.

모델은 두 갈래를 함께 쓴다. 하나는 핀익의 결정 모델인 Grayson으로, "배송지가 재배송 업체처럼 보이는가" 같은 질문을 자연어로 던지면 보정된 확률로 답한다. 레이블이 거의 없고 설명이 필요한 비정형 데이터에 강하다. 다른 하나는 로지스틱 회귀와 XGBoost 호환 그래디언트 부스팅 트리로, 자사 수치에서 정밀하게 학습하고 판정당 비용이 들지 않는다. Kairos는 Grayson의 답변을 피처로 삼아 전통 모델에 합치는 구성을 지원하고, 어느 조합이 자사 데이터에서 이기는지는 실험이 알려주는 식이다.

개발자 진입 경로는 여러 가지다. TypeScript 클라이언트 @finic-ai/kairos와 Python 패키지 finic-kairos, CLI, HTTP API를 제공하고 Docker로 셀프 호스팅할 수 있다. MCP 서버는 HTTP 전송을 지원해 Authorization 헤더에 비밀 키를 넣는 방식으로 붙는다. 로컬 구동에는 Node.js 22와 pnpm 10, portal.finic.ai에서 받은 Grayson API 키가 필요하며, 별도 데이터베이스 설치 없이 서버가 자체 Postgres를 띄운다. 스타트업 단계에서는 샌드박스 환경과 비밀 키를 만든 뒤 이벤트를 보내면 된다.

배경에는 사기 탐지 모델의 전형적인 병목이 있다. 정확한 모델을 만들려면 수천 건의 차지백 같은 레이블이 필요한데, 그런 데이터는 사고가 난 뒤에야 쌓인다. 결정 모델을 먼저 붙여 초기 공백을 메우고, 레이블이 쌓이는 대로 전통 모델과 조합해 성능을 끌어올리는 구성이 여기서 나온다. Shopify 스토어용 앱과 Stripe 같은 외부 제공자 이벤트를 받는 인바운드 웹훅 경로도 같은 맥락이다.

실무에서는 사기 판정 인프라를 처음부터 설계하는 대신 판정 정의와 워크플로 구성에 집중할 수 있다는 뜻이 된다. 에이전트가 실험 설계와 모델 선택, 버전 배포를 반복하고 새 레이블이 들어올 때 다시 돌아오는 루프를 만들 수 있다는 점은 사기 탐지 외의 위험 점수화 문제에도 응용 여지가 있다. 다만 결정 모델인 Grayson은 핀익의 별도 API 키가 있어야 동작하며, 셀프 호스팅이라도 그 부분은 외부 서비스에 의존한다는 전제를 감안해야 한다.