정치 토론용 '오메글'을 만들었습니다: 반대 의견을 가진 사람과 매칭되고, Claude Haiku가 실시간으로 토론을 심사합니다.
I built "Omegle for political debates": you get matched with a person who disagrees, and Claude Haiku judges the debate live.
핵심 요약
Claude Haiku를 활용해 정치적 성향이 정반대인 사람과 토론을 붙여주고 실시간으로 논리적 오류를 판정하는 웹 서비스를 개발했습니다.
- 실시간 토론 심사 — Claude Haiku가 논리적 오류와 토론 흐름을 실시간으로 분석함
- 정치적 매칭 — 사용자와 정치적 성향이 가장 먼 상대를 자동으로 연결함
- 경쟁 요소 도입 — 체스 스타일의 레이팅 시스템과 리그를 통해 토론 실력을 겨룸
- 기술 스택 — WebRTC와 mediasoup SFU를 사용하여 다자간 영상 통화 구현
Claude API 써서 뭐 하나 만들어보고 싶어서 드디어 하나 뽑아냈다! 다들 그렇듯 나도 Omegle 그리웠고, 댓글창에서 서로 소리 지르며 싸우는 꼴 보는 것도 지겨웠거든. 그래서 지난 몇 달 동안 Policon(policon.net)을 만들었어. 랜덤 화상 채팅 매칭인데, 그냥 아무나 붙여주는 게 아니라 정치 성향이 너랑 제일 반대인 놈이랑 강제로 매칭시켜줌. 여기서 핵심은 '심판'이야. 가벼운 LLM(Claude Haiku)이 실시간으로 토론을 듣고 점수를 매기는데, 모멘텀 차트도 보여주고, 논리적 오류가 나오면 실시간으로 팝업도 띄워줌. 끝나면 전체 매칭 리포트까지 뽑아준다.
-
실시간으로 "모멘트"가 뜸. 논리적인 팩트 꽂으면 great argument, 인신공격하면 ad hominem이라고 뜸. 열변 토하다가 상대방이 지켜보는 앞에서 팩트 폭격 맞으면 진짜 쥐구멍에 숨고 싶어짐.
-
모멘텀 그래프가 있어서 통화 내내 누가 "이기고 있는지" 보여줌.
-
끝나면 매칭 리포트가 나오고, 체스처럼 Glicko 레이팅이 오르락내리락함. 래더랑 리그도 있어서 정치 토론을 무슨 랭크 게임 돌리듯이 빡세게 할 수 있음.
-
팀 토론도 가능함. 친구들 데려와서 최대 7명까지 통화할 수 있고, 질문에 동의하냐 반대하냐에 따라 라운드마다 팀이 바뀜.
기술적인 거 궁금한 놈들을 위해 적자면: 다자간 통화를 위해 mediasoup SFU를 쓴 WebRTC를 사용했고, 심판은 작고 빠른 모델(Claude Haiku)을 돌려서 비용 폭탄 안 맞으면서 실시간 음성 분석이 가능하게 함. 배포는 두 군데에 해뒀는데, 하나는 AWS고 하나는 내 홈랩에 있는 Debian VM임. 스택을 이식 가능하게 유지하려고 억지로라도 이렇게 돌리는 중.


