Contbot
메뉴를 찾는 대신
질문하는 홈페이지
Contbot은 대학·공공기관 대표 홈페이지에 두 번째 메인으로 붙는 설치형 질문형 홈페이지(Bot + CMS)입니다. 방문자가 질문하면 텍스트 대신 일정 카드·체크리스트·판정 도구·지도처럼 컴포넌트로 조합된 답변 페이지를 보여 주고, 운영자는 페이지가 아닌 답변 단위로 콘텐츠를 관리합니다.
- 컴포넌트로 조합된 답변 페이지
- 모든 답변 카드에 출처·최종 수정일
- 날짜·금액 등 숫자는 원본 데이터에서만 표시
- 내부망 설치·개인정보 마스킹
- AI 장애 시 규칙 기반 답변으로 자동 전환
- 웹·임베드·텍스트로 동시 제공
메뉴형 홈페이지의 한계
메뉴 구조를 알아야 찾을 수 있습니다
기관 홈페이지는 메뉴 단계가 깊고 부서별로 나뉘어 있어, 일정·절차·담당자 하나를 찾으려 해도 사이트 구조를 알아야 합니다.
긴 텍스트 답변은 행동으로 이어지지 않습니다
챗봇이 날짜·장소·서식을 문장으로만 알려 주면 방문자는 다시 원문을 찾아야 하고, 신청·일정 등록 같은 다음 행동이 끊깁니다.
숫자 하나의 오류가 신뢰를 무너뜨립니다
마감일·금액·학점처럼 정확해야 하는 값을 AI가 잘못 쓰면 기관의 공식 안내로서 신뢰를 잃습니다.
Contbot의 핵심 기능
컴포넌트 답변 페이지
질문 의도 14종에 맞춰 골격 8종·콘텐츠 42종의 답변 블록을 조합합니다. 일정은 D-day 카드로, 절차는 체크리스트로, 위치는 지도로 보여 줍니다.
숫자는 원본에서만
LLM은 날짜·시간·금액·전화번호·학점 같은 값을 직접 쓰지 않고 레코드를 참조합니다. 화면의 숫자는 항상 등록된 원본 데이터에서 옵니다.
출처와 최종 수정일
모든 답변 카드에 근거 자료와 최종 수정일을 표시하고, 유효기간이 지난 콘텐츠는 답변에서 자동으로 빠집니다.
답변 단위 콘텐츠 관리
일정·공지·부서·규정·절차·판정 규칙·졸업 요건·시설·서식 등 타입별로 콘텐츠를 관리하고, 등록하면 자동으로 청킹·임베딩합니다.
기존 CMS 연동
범용 JDBC·CMS 게시판(K2 등)·RSS·공개 웹 페이지에서 읽기 전용 배치로 수집합니다. 기존 CMS의 화면과 DB 스키마는 수정하지 않습니다.
한 번 만든 답을 여러 곳에
같은 답변을 웹 답변 페이지, 공유 화면, 컴팩트 임베드, 텍스트(Markdown)로 제공합니다.
답변이 만들어지는 과정
콘텐츠 연결
기존 CMS에서 읽기 전용으로 수집하거나 답변 단위로 등록합니다. 등록 즉시 검색 가능한 형태로 색인됩니다.
의도 파악
질문을 14개 의도로 분류하고 벡터 + 키워드 하이브리드 검색으로 근거 후보를 찾습니다.
답변 조합·검증
의도에 맞는 블록으로 답변 페이지를 구성하고, 값은 레코드 참조로 채운 뒤 검증 규칙을 통과한 답만 보여 줍니다.
제공·개선
웹·임베드·텍스트로 제공하고, 질문 로그와 미응답 리포트로 부족한 콘텐츠를 보강합니다.
도입 환경과 기술 사양
- 설치 형태
- 기관 서버·내부망 설치 — 임베딩은 서버 안에서 실행하고, 외부 AI에는 지정한 LLM API로만 보냄 (LLM을 설정하지 않으면 규칙 기반으로만 동작)
- 기반 기술
- 전자정부 표준프레임워크 5.0 · JDK 17 · Spring Framework 6.2
- AI 모델
- OpenAI 호환 API 방식 (Gemini·OpenAI·기관 자체 모델(vLLM·Ollama) 등, 설정하지 않으면 규칙 기반 생성기만 사용)
- 벡터 저장소
- PostgreSQL + pgvector
- CMS 연동
- 범용 JDBC · CMS 게시판(K2 등) · RSS · 공개 웹 페이지 읽기 전용 수집
- 개인정보 보호
- 외부 LLM 전송 전 이름·학번·주민번호·전화·이메일·계좌 마스킹, 질문 로그도 마스킹 후 저장
- 장애 대응
- LLM 장애 시 같은 데이터로 규칙 기반 답변을 만들어 자동 전환
- 보안
- 질문 원문 미저장, IP별 요청 횟수 제한, 콘텐츠 보안 정책(CSP), 관리자 IP 제한·로그인 실패 잠금



