SmartBot KR 무료 공개:
코딩 몰라도 되는
AI 챗봇 플랫폼
지자체·소상공인·병원·학원·쇼핑몰 — 어떤 조직이든 5분 안에 AI 챗봇을 카카오톡과 홈페이지에 동시에 연결할 수 있습니다. 개인정보 자동 마스킹, 문서 학습, 관리 대시보드까지 완성된 오픈소스를 MIT 라이선스로 공개합니다.
왜 만들었나: 취지
챗봇을 도입하고 싶어도 못 하는 조직이 너무 많다. 지자체 민원실, 동네 음식점, 소규모 쇼핑몰 — 반복되는 문의에 지쳐 있지만 기술 장벽과 비용 앞에서 포기한다. 상용 솔루션은 월 수십만 원이고, 직접 개발은 개발자가 필요하다.
이 프로젝트는 그 간격을 없애기 위해 만들었다. 코딩을 전혀 몰라도 5분 안에 AI 챗봇을 설치하고, 카카오톡과 홈페이지에 동시에 연결할 수 있도록. 이후 FAQ를 등록하고, 문서를 올리면 AI가 알아서 학습하고 답변한다.
"매일 같은 질문에 지쳐 있는 담당자, 전화 받을 시간이 없는 소상공인, 민원 대응에 한계를 느끼는 공무원 — 이 도구가 그분들의 시간을 돌려드리길 바랍니다."
— 22B Labs, SmartBot KR 개발 노트처음에는 공공기관 민원 응대 자동화를 목표로 개발을 시작했다. 개발하면서 구조가 보편적이라는 것을 알게 됐다 — 음식점이든 학원이든 병원이든 "자주 묻는 것에 정확하게 답하고, 모르는 것은 담당자에게 연결"하는 구조는 동일하다. 그래서 처음부터 어떤 조직에도 맞는 범용 플랫폼으로 설계했다.
누구를 위한 도구인가
- 민원 안내 자동화
- 서류 발급 절차 안내
- 담당 부서 연결
- 이용 시간·휴관일 문의
- 영업시간 (요일·공휴일)
- 메뉴·가격 문의
- 예약·포장·배달 안내
- 주차·위치 안내
- 배송 기간·방법
- 교환·환불 정책
- 결제·적립 문의
- AS 접수 방법
- 진료 시간 안내
- 예약 방법
- 보험 적용 여부
- 주차·대중교통
- 수업 시간표
- 수강료·납부 방법
- 등록·상담 방법
- 환불 규정 안내
- 고객 CS 자동화
- 사내 FAQ 봇
- 제품·서비스 문의
- 다지점 통합 관리
주요 기능 한눈에
| 기능 | 설명 | LLM 필요? |
|---|---|---|
| 💬 카카오톡 연동 | 카카오 i 오픈빌더 스킬 서버로 바로 연결. 코드 입력 없이 URL 하나로 완료 | 불필요 |
| 🌐 홈페이지 위젯 | script 태그 한 줄로 어떤 홈페이지에나 채팅창 삽입 | 불필요 |
| ❓ FAQ 자동 답변 | 등록한 FAQ를 한국어 임베딩으로 유사도 매칭해 즉시 답변 | 불필요 |
| 📄 문서 학습 | PDF·Word 업로드 → 자동 파싱 → 벡터DB 저장 → 관련 질문 시 추출 | 불필요 |
| 🤖 LLM 연동 | Claude·GPT 연결 시 문서 내용을 자연스럽게 재서술해 답변 품질 향상 | 선택 |
| 📊 관리 대시보드 | 대화 통계, FAQ 관리, 문서 관리, 불만 이력, 악성 이용 감지 한 화면에서 | 불필요 |
| 🔒 개인정보 마스킹 | 주민번호·전화·이메일·카드번호 자동 감지 후 마스킹, 원문 미저장 | 불필요 |
| 🏢 멀티 조직 | 서버 하나로 여러 매장·지점을 조직 ID로 완전히 분리해 운영 | 불필요 |
| 🕷️ 웹 크롤러 | URL 입력 시 홈페이지 내용을 자동으로 읽어 학습 | 불필요 |
| 🛡️ 악성 감지 | 반복 악성 이용자 자동 차단 및 관리자 알림 | 불필요 |
동작 원리: 3단계 자동 라우팅
고객이 질문하면 시스템이 아래 순서로 가장 정확한 답변을 찾는다. 각 단계에서 답을 못 찾으면 다음 단계로 넘어가고, 모든 단계가 실패하면 담당자 연락처를 안내한다.
카카오톡 5초 응답 제한에 맞춰 전체 타임아웃을 4.5초로 설계했다. 시간 초과 시 자동으로 Tier D로 폴백해 고객에게 빈 답변이 가지 않는다.
한국어 임베딩에는 jhgan/ko-sroberta-multitask 모델을 사용한다. 첫 실행 시 자동 다운로드되며 이후에는 로컬에서만 돌아가 외부 API 비용이 전혀 없다.
"FAQ만 잘 등록해도 대부분의 문의를 Tier A에서 해결할 수 있습니다. LLM 없이도 충분히 잘 동작하는 이유입니다."
설치 방법
Docker만 설치되어 있으면 된다. 나머지는 스크립트가 전부 처리한다.
docs/WSL2_가이드.md를 먼저 확인하세요.사용법: 설치 후 5단계
city-hall · my-restaurant · branch-2http://내서버주소/skill/내조직ID로 설정하면 됩니다.개인정보 보호 — 설계 원칙
공공기관과 의료기관을 대상으로 설계를 시작했기 때문에 개인정보 보호는 선택이 아닌 기본값이다. 모든 보호 기능이 별도 설정 없이 자동으로 작동한다.
🔒 자동 마스킹
고객 발화에서 주민번호·전화번호·이메일·카드번호를 실시간으로 감지해 ***-****-**** 형태로 즉시 마스킹한다. 원문은 서버에 절대 저장되지 않는다.
🔑 복원 불가 해시
카카오 사용자 ID는 SHA-256 앞 16자리로 변환해 저장한다. 관리자도 원래 ID를 알 수 없다. 통계와 이력 추적은 가능하지만 특정인 식별은 불가능하다.
🌐 외부 전송 없음
LLM을 사용하지 않으면 고객 대화 데이터가 외부 서버로 나가지 않는다. 한국어 임베딩 모델도 최초 다운로드 후 로컬에서만 실행된다.
📋 이력 자동 삭제
대화 이력 보관 기간을 .env에서 설정할 수 있다. 기본값 30일이며, 기간 초과 이력은 자동으로 삭제된다.
- SECRET_KEY 변경은 필수: 기본값 그대로 운영하면 JWT 토큰 위조 취약점이 생긴다. 설치 직후 반드시 변경해야 한다. 생성 명령어:
python -c "import secrets; print(secrets.token_hex(32))" - 외부 접근에는 공인 IP 또는 클라우드 서버 필요: 사무실 PC에서 로컬 테스트는 바로 가능하지만, 실제 고객이 외부에서 접속하려면 공인 IP가 있는 서버가 필요하다.
- 의료 정보 답변은 등록하지 말 것: 병원·약국에서 사용 시 구체적인 의학 상담 답변은 절대 등록하면 안 된다. 진료 예약·시간·위치 안내만 다뤄야 한다.
- FAQ 품질이 전부: 질문 표현을 다양하게 등록하지 않으면 같은 내용을 다르게 물어봤을 때 못 찾는다. "영업시간이요?" 하나만 등록하지 말고 10가지 다른 표현으로 등록하는 것이 좋다.
- LLM 비용은 별도: Claude나 GPT API를 연결하면 호출 비용이 발생한다. FAQ와 문서 검색(Tier A·B)은 LLM을 쓰지 않으므로 비용 없이 운영 가능하다. LLM은 정말 필요할 때만 켜도 된다.
- 카카오 i 오픈빌더 계정 필요: 카카오톡 채널 연동은 카카오 비즈니스 계정과 오픈빌더 심사가 필요하다. 홈페이지 위젯만 써도 충분하다.
- 1일차: 설치 → SECRET_KEY 변경 → 관리자 계정 생성 → FAQ 10개 등록 → 시뮬레이터 테스트
- 1주차: FAQ를 30개 이상으로 늘리고, 주요 문서(PDF) 1~2개 업로드 → 다시 시뮬레이터로 품질 확인
- 이후: 대시보드에서 답변 못 한 질문 패턴을 확인하고 FAQ 보완 → 만족스러우면 홈페이지 위젯 적용
- 고급: LLM 연결, 카카오톡 채널 연동, 멀티 지점 추가
직접 쓰면서 만든 도구, 그대로 공개합니다
이 프로젝트는 상용 솔루션을 구매할 여력이 없는 조직들을 위해 만들었습니다. 공공기관, 소상공인, 학원, 병원 — 기술 장벽 때문에 포기하지 않아도 됩니다.
MIT 라이선스로 완전 공개합니다. 사용, 수정, 재배포, 상업적 이용 모두 자유입니다. 브랜드명 "The 4th Path"와 "22B Labs"만 제거해 주세요. 버그나 개선 아이디어는 GitHub Issues로 남겨주시면 함께 만들어가겠습니다.
- sinmb79/Gov-chat-bot — README.md, 운영가이드.md, WSL2_가이드.md · github.com/sinmb79/Gov-chat-bot
- SmartBot KR 백엔드 소스 — routing.py, masking.py, document_processor.py, faq_search.py
- 22B Labs 개발 노트 (내부 문서)