안녕하세요! 퇴근 후 "되묻고 깊어지는 상담 대화"를 목표로 주역 상담 AI를 개발 중인 직장인 바이브코더입니다.
지난 7일 차 작업에 대한 정밀 검증을 진행하며, 겉으로는 돌아가는 것처럼 보였으나 실제 서비스 흐름에서 삐걱거리던 크리티컬한 문제 두 가지를 잡고 세부 설정을 변경했습니다.
단순히 기능이 추가되는 것보다, 배포 전에 사용자 관점의 에러 경로를 촘촘하게 벼리는 과정이 더 짜릿하네요. 오늘의 치열한 디버깅 기록과 설계에 관한 고민을 공유합니다.
🛠️ My Vibe Coding Stack
Local Dev: Mac Mini M4 Pro + Ollama + Docker Compose
Database: PostgreSQL 16 + pgvector (iching-db, RAG 인덱스 2,536건)
Model (이원화): gemma4:latest (개발용) vs Gemini 2.5 Flash (배포용)
Architecture Framework: Google ADK (google/adk-python)
1. 문제상황
1.1. 괘사를 적용하지 않는 상담 : 아래는 7일차 작업의 동기가 된 두가지 사례의 검증 예시입니다.


서로 다른 고민에 대해 완전히 다른 괘가 도출되었음에도 불구하고, AI 상담 답변의 최종 뉘앙스가 똑같이 "자신을 되돌아보라"는 상투적인 방향으로 수렴하는 현상을 포착했습니다. 원인을 파악해 보니 상담 프롬프트와 코드 엔진이 DB 상의 '주역 괘사'를 제대로 참고하지 않고, RAG 청크 해설의 거시적인 조언에만 강하게 매몰되는 버그였습니다.
1.1.1. 개선사항
이틀 동안 상담 에이전트 프롬프트와 컨텍스트 주입 아키텍처를 전면적으로 교정했습니다. 개선 이후에는 실제 도출된 주역 괘사(본의, 정전)에 정밀하게 근거한 고전 해석이 녹아든 개성 넘치는 답변이 정상 출력됩니다. 대화의 깊이가 완전히 달라졌습니다. (꼬리물기식 대화 유도가 살짝 과하다는 느낌이 들지만, 이는 실제 베타 테스트 배포 후 파라미터 튜닝을 통해 다듬어 나갈 예정입니다.)



1.2. 과도한 안전 가이드라인
주역이라는 텍스트가 가진 동양철학적 권위 때문에 자칫 극단적인 선택을 암시하는 발화가 있을 경우 오동작하는 것을 막기 위해 강력한 안전 필터를 구현해 두었습니다. 하지만 이 가이드라인이 너무나도 민감하게 세팅되어 있어, 상담 끝 무렵 사용자가 보낸 단순 일상어인 "생각 정리"의 '정리'라는 단어까지 자해/자살 징후로 오탐지하여 서비스를 강제로 차단해 버리는 심각한 버그가 있었습니다.

상담 마무리 멘트에 기재된 '정리' 란 단어에 대해 안전 가이드라인이 작동한 사례입니다.
1.2.1. 개선사항
깃허브에서 검증된 자살 예방 안전 모델 및 유사한 예외 처리 오픈소스 (해당 깃허브 레포 : https://github.com/806hyogi/Suicide_prevention_app.git)
를 참고하여 안전 스크리너의 분류 조건과 맥락 가이드라인을 리팩토링했습니다. 정교하게 리팩토링한 결과 오탐율이 드라마틱하게 감소하여 "정리" 같은 일반 명사에는 정상적으로 반응하되, 위기 신호가 담긴 대화에만 24시간 래치가 정상 작동함을 검증했습니다. 이 영역은 앞으로 서비스 운영 피드백을 보며 미세 튜닝만 할 예정입니다.

2. 크루님들께 드리고 싶은 말씀 (스콥 크립의 경계에서)
주역 원문에는 몇 가지 엄격한 점법 금기 사항이 명시되어 있습니다:
- 동일한 질문으로 두세 번 점치지 말 것 (재삼독) -> [정리 에이전트 회고 분기로 정상 구현 완료]
- 가벼운 호기심이나 장난으로 점치지 말 것 -> [B2C 앱의 특성상 허용]
- 부도덕한 비윤리적인 일에 대해 점치지 말 것 -> [현재 고민 중인 스콥]
- 마음이 혼란하거나 욕망을 품고 치지 말 것 -> [B2C 특성상 허용]
- 50개 산가지 중 49개만 쓸 것 -> [엔진 로직상 적용 완료]
여기서 가장 고민이 되는 부분이 바로 3번 '부도덕한 일에 대한 필터링'입니다. 현재는 별도의 비도덕적 스크리닝 필터가 없어서, 테스트 중 "산업 스파이 행위가 성공할지" 같은 비윤리적인 질문을 던져도 AI가 순진하게 주역 괘사 해석을 해주는 상황입니다.

Q. 여러분이라면 이 '비도덕적 질문 필터링'을 구현하시겠습니까?
- 구현한다: 주역 상담 서비스의 신뢰도와 브랜딩을 위해 꼭 차단해야 한다.
- 안 한다: 과도한 스코프 크립(Scope Creep)이며, 일반적인 안전 필터(폭력, 자해 등) 선에서만 끊고 넘어가는 것이 스타트업/인디 씬에선 맞다.
바이브코더 크루분들의 생생한 의견과 훈수를 기다립니다! 👇
이번 글은 진짜 서비스 만들면서만 발견할 수 있는 문제들이네요 ㅋㅋ
특히 서로 다른 괘가 나왔는데 결국 답변은 전부 비슷하게 흘러가는 문제는 AI 서비스 만들다 보면 은근 자주 만나는 것 같습니다. 겉으로는 그럴듯해서 더 찾기 어려운 버그 같아요. 하네스를 씌울수록 더 삐뚫어지는...
저는 사실 비도덕적 질문 필터는 저는 너무 깊게 들어가지 않는 쪽에 한표입니다.
폭력, 자해처럼 명확하게 위험한 영역은 당연히 막아야겠지만, '비도덕적'이라는 기준 자체가 사람마다 다르고 애매해서 이걸 완벽하게 분류하려다 보면 또 다른 오탐과 예외처리가 계속 생길 것 같아요. (지난번 AI를 너무 깎으면 오히려 오동작한다 글과 같은 취지)
차라리 명백하게 불법 행위를 돕는 질문 정도만 차단하고, 나머지는 "판단이나 행동을 권유하는 것이 아니라 주역을 해석해주는 서비스"라는 선을 명확하게 잡는 게 현실적이지 않을까 싶습니다.
조심스럽지만 개인적으로 지금은 필터를 하나 더 만드는 것보다 일단 베타에 빨리 내놓고 실제 사용자들이 어떤 질문을 하는지 데이터부터 보는 게 더 값질 것 같아요. (전설처럼 내려오는 MVP로 빠르게 출시해서 반응을 보라. 많이 고민한건 실제 출시하면 발생 안할 가능성이 높고 발생할때 실 사례를 대처해도 늦지 않다는 말 참고 ㅎㅎ)
그나저나 8일차까지 오니 진짜 제품 냄새가 나기 시작하네요 ㅋㅋ 고생 정말 많으세요!
계속 빌드인 퍼블릭 해주시는것도 넘나 감사드립니다 😄