← 포트폴리오 목록

챗봇 검수·운영 콘솔

MVP 챗봇 이후 확장 범위로 검증 시나리오 합격률, 환각 차단 로그, 질환 사전 관리, LLM 사용량, 가명처리 대화 로그를 한 화면 허브에서 확인하는 검수·운영 콘솔을 설계합니다.

프로젝트 납품 요약

아래 프로젝트 개요와 핵심 기능에서 구현 화면을 확인할 수 있습니다.

서비스 타입Web
업종헬스케어
기술 스택
ReactTypeScriptTailwind CSSNode.js + ExpressPostgreSQL + PrismapgvectorRedisBull Queue
주요 기능
  • 검수 시나리오 합격률 보드
  • 환각 차단 검증 로그
  • 질환 사전·동의어 관리
  • LLM 사용량·대화 로그 가명처리

프로젝트 개요

범위: 개발, 디자인, 기획

MVP 챗봇 이후 확장 범위로 검증 시나리오 합격률, 환각 차단 로그, 질환 사전 관리, LLM 사용량, 가명처리 대화 로그를 한 화면 허브에서 확인하는 검수·운영 콘솔을 설계합니다. P1 스택 위에 Redis와 Bull Queue를 더해 구현합니다.

작업 범위

  • 검수 시나리오 합격률 보드: 단일·복합 조건, 연속 대화, 비교, 예외 시나리오를 묶음 단위로 실행하고 합격률과 중대 결함을 한눈에 보여줍니다
  • 환각 차단 검증 로그: 답변의 의사·병원·평가 정보를 DB 레코드와 대조한 결과와 차단된 문장을 로그로 보여줍니다
  • 질환 사전·동의어 관리: 표준질환과 동의어·증상 연관을 관리하고 검색 결과 변화를 미리 확인합니다
  • LLM 사용량·대화 로그 가명처리: LLM 호출 사용량을 모델·기능별로 집계하고 대화 로그를 가명처리한 상태로 열람하며 보관기간 파기 일정을 관리합니다

주요 업무

  • 검수 시나리오 합격률 보드 화면: 중대 결함이 1건이라도 있으면 합격률과 무관하게 불합격으로 판정하는 하니스 구조
  • 환각 차단 검증 로그 화면: 답변 문장을 엔티티 단위로 추출해 DB 레코드와 대조하고 불일치 시 차단·재생성하는 구조
  • 질환 사전·동의어 관리 화면: 사전 변경 시 임베딩을 재계산하는 Bull 작업과 변경 이력 구조
  • LLM 사용량·대화 로그 가명처리 화면: 저장 시 가명처리와 필드 암호화를 적용하고 보관기간 경과 건을 스케줄러로 파기하는 구조
챗봇 검수·운영 콘솔
요구사항 정의

프로젝트 핵심 과제

프로젝트 진행 시 해결한 핵심 기술 과제입니다.

답변 문장에서 의사·병원 엔티티를 안정적으로 추출해 DB 레코드와 대조하는 검증 정확도 설계가 필요합니다

검수 시나리오 기대 결과를 DB 갱신에도 깨지지 않게 유지하는 기대값 관리 방식 설계가 필요합니다

건강 정보 대화 로그의 가명처리와 검수 시 원문 대조 필요성 사이의 열람 권한 경계 설계가 필요합니다

동의어 변경 시 임베딩 재생성 중에도 검색이 일관되

색인 전환 전략 설계가 필요합니다

구현 내용

핵심 기능 상세

핵심 기능 1

검수 시나리오 합격률 보드

단일·복합 조건, 연속 대화, 비교, 예외 시나리오를 묶음 단위로 실행하고 합격률과 중대 결함을 한눈에 보여줍니다. 중대 결함이 1건이라도 있으면 합격률과 무관하게 불합격으로 판정하는 하니스 구조.

  • Vitest 기반 시나리오 러너와 기대·실제 결과 대조 리포트 생성
  • Bull Queue로 시나리오 묶음을 병렬 실행하고 진행률 집계
  • 중대 결함 우선 판정 규칙을 합격률 계산식에 분리 적용

시나리오 단위 합격 판정과 중대 결함 즉시 불합격 규칙을 분리해 검수 합격 기준을 코드로 고정하는 구조를 구현합니다.

검수 시나리오 합격률 보드
검수 시나리오 합격률 보드 실제 화면
핵심 기능 2

환각 차단 검증 로그

답변의 의사·병원·평가 정보를 DB 레코드와 대조한 결과와 차단된 문장을 로그로 보여줍니다. 답변 문장을 엔티티 단위로 추출해 DB 레코드와 대조하고 불일치 시 차단·재생성하는 구조.

  • 답변 엔티티 추출 후 레코드 ID 대조 검증 레이어 설계
  • 불일치 유형별(없는 의사·잘못된 진료과·평가 조작) 차단 사유 분류
  • 차단 이력 테이블과 필터 조회 API 구현

DB에 없는 정보가 포함된 답변을 사용자에게 내보내지 않고 차단 사유와 함께 로그로 남기는 검증 레이어를 설계합니다.

환각 차단 검증 로그
환각 차단 검증 로그 실제 화면
핵심 기능 3

질환 사전·동의어 관리

표준질환과 동의어·증상 연관을 관리하고 검색 결과 변화를 미리 확인합니다. 사전 변경 시 임베딩을 재계산하는 Bull 작업과 변경 이력 구조.

  • 표준질환·동의어 테이블과 변경 이력 감사 테이블 설계
  • 동의어 추가 시 임베딩 재생성 작업을 큐로 비동기 처리
  • 사전 변경 전후 검색 결과 비교 미리보기 API 구현

사전 편집이 하이브리드 검색에 반영되는 과정을 큐 작업과 미리보기로 검증할 수 있는 관리 화면을 구현합니다.

질환 사전·동의어 관리
질환 사전·동의어 관리 실제 화면
핵심 기능 4

LLM 사용량·대화 로그 가명처리

LLM 호출 사용량을 모델·기능별로 집계하고 대화 로그를 가명처리한 상태로 열람하며 보관기간 파기 일정을 관리합니다. 저장 시 가명처리와 필드 암호화를 적용하고 보관기간 경과 건을 스케줄러로 파기하는 구조.

  • 호출 단위 토큰 사용 기록 테이블과 일별 집계 Materialized View
  • 대화 로그 저장 전 개인식별 정보 마스킹과 AES 필드 암호화 적용
  • 보관기간 경과 로그를 파기하는 Cron 작업과 파기 이력 기록

건강 정보가 담긴 대화 기록을 가명처리·암호화해 저장하고 보관기간 경과 시 파기하는 흐름을 콘솔에서 확인하도록 설계합니다.

LLM 사용량·대화 로그 가명처리
LLM 사용량·대화 로그 가명처리 실제 화면
구현 과정

프로젝트 진행 단계

STEP 1

검수 시나리오 데이터셋·하니스 설계 · 2026.10

시나리오 스키마, 기대 결과 정의, 합격·중대 결함 판정 규칙 설계

STEP 2

검증 레이어·차단 로그 API 개발 · 2026.10

답변 엔티티 대조 검증과 차단 이력 저장·조회 API 구현

STEP 3

사전 관리·큐 작업 구축 · 2026.10

동의어 사전 CRUD와 임베딩 재생성 Bull 작업 구축

STEP 4

사용량 집계·가명처리 콘솔 개발 · 2026.10

토큰 집계 뷰, 로그 마스킹·암호화, 파기 스케줄러와 콘솔 화면 구현

개발 결과

중대 결함 우선 합격 판정 하니스 구현시나리오 합격률과 중대 결함을 분리 집계해 중대 결함 1건이면 불합격으로 판정하는 하니스를 구현합니다.
답변 엔티티 대조 차단 로그 설계답변 문장에서 의사·병원 엔티티를 추출해 레코드 ID와 대조하고 차단 사유를 유형별로 기록하도록 설계합니다.
사전 변경 임베딩 재계산 큐 구축동의어 변경을 Bull Queue 작업으로 처리해 임베딩을 재생성하고 변경 전후 검색 결과를 비교하도록 구축합니다.
가명처리·암호화·파기 파이프라인 설계저장 시 마스킹과 AES 필드 암호화를 적용하고 Cron으로 보관기간 경과 로그를 파기하는 흐름을 설계합니다.

기술적 주안점

  • 시나리오 단위 합격 판정과 중대 결함 즉시 불합격 규칙을 분리해 검수 합격 기준을 코드로 고정하는 구조를 구현합니다
  • DB에 없는 정보가 포함된 답변을 사용자에게 내보내지 않고 차단 사유와 함께 로그로 남기는 검증 레이어를 설계합니다
  • 사전 편집이 하이브리드 검색에 반영되는 과정을 큐 작업과 미리보기로 검증할 수 있는 관리 화면을 구현합니다

유사한 프로젝트를 기획하고 계신가요?

필요한 기능과 일정을 알려주시면 개발 범위를 함께 정리하겠습니다.

프로젝트 문의