YouTubeZeroCho TV·2026년 7월 22일·0

매번 똑같은 대답만 하는 AI는 이제 그만! 기억하는 챗봇 만들기 - 바이브코딩 4편

Quick Summary

매번 똑같은 대답을 되풀이하지 않는 챗봇을 만들려면 고객별로 분리된 장기 기억에 핵심 사실만 저장하고, 인증·검수·호출 제한까지 함께 설계해야 한다.

영상 보기

클릭 전까지는 가벼운 미리보기만 먼저 불러옵니다.

원본 열기

🖼️ 인포그래픽

매번 똑같은 대답만 하는 AI는 이제 그만! 기억하는 챗봇 만들기 - 바이브코딩 4편 내용을 설명하는 본문 이미지

🖼️ 4컷 인포그래픽

매번 똑같은 대답만 하는 AI는 이제 그만! 기억하는 챗봇 만들기 - 바이브코딩 4편 내용을 설명하는 본문 이미지

💡 한 줄 결론

매번 똑같은 대답을 되풀이하지 않는 챗봇을 만들려면 고객별로 분리된 장기 기억에 핵심 사실만 저장하고, 인증·검수·호출 제한까지 함께 설계해야 한다.

📌 핵심 요점

  1. 매장 ID-고객-연락처 조합을 기억 키로 사용하면 동일한 연락처도 매장별로 분리하고 신규 고객은 기존 기억 없이 안전하게 시작할 수 있다.
  2. Mem0 같은 장기 기억 레이어는 대화 원문 대신 이름·예약일·선호·회피 정보 등의 핵심 사실을 저장하고, 모순 수정과 시맨틱 검색을 처리한다.
  3. 기억 검색에 성공해도 시스템 프롬프트가 잘못되면 알레르기 정보가 없다고 답할 수 있으므로, 새 세션 복원과 최종 응답을 함께 반복 검증해야 한다.
  4. 40턴의 전체 대화 대신 핵심 기억 다섯 개를 사용한 비교에서는 토큰 사용량이 약 88% 줄었지만, 기억 수를 제한하면 여섯 번째 이후 정보가 소실될 수 있다.
  5. 실제 서비스에는 고객 간 기억 유출 테스트, SMS OTP를 통한 연락처 소유 인증, 고객 단위 레이트 리밋, 관리자 검수와 개인정보 동의가 필요하다.

🧩 배경과 문제 정의

일반 상담 챗봇은 창을 닫으면 대화 맥락을 잃기 때문에 고객이 예약 정보와 요구 사항을 반복해서 설명해야 한다. 로그인이 없는 예약 서비스에서는 연락처를 기억의 식별자로 활용하면서도 매장과 고객별 데이터를 철저히 분리해야 한다. 전체 대화 원문을 계속 저장하는 대신 핵심 사실의 추출·검색·수정·중복 제거를 담당하는 장기 기억 레이어가 필요한 이유다.

🕒 시간순 섹션별 상세정리

1. 기억 없는 챗봇의 한계와 고객별 키 설계

  • 일반 챗봇은 창을 닫으면 예약 변경이나 알레르기 같은 이전 맥락을 잊어 고객에게 같은 설명을 반복하게 만든다. [00:35]
  • 매장 ID-고객-연락처를 기억 키로 사용하면 동일 연락처도 매장별로 분리되고, 기록이 없는 신규 고객도 오류 없이 상담할 수 있다. [01:19]
  • 핵심 사실의 업데이트와 시맨틱 검색을 장기 기억 레이어에 맡기고 상담봇의 역할은 안내와 요청 접수로 제한하며, 새로 고침 후에도 고객별 기억을 복원해야 한다. [05:07]

2. Mem0 통합과 매장별 기억 분리

  • 장기 기억 레이어를 예약 서비스에 연결하면 세션이 바뀌어도 고객의 취향과 이전 상담 맥락을 이어 갈 수 있다. [06:18]
  • 사용자 식별자는 가게 이름·고객 구분값·전화번호로 구성하고, 노출된 API 키는 제3자가 악용할 수 있으므로 테스트 후 폐기해야 한다. [06:44]
  • 패키지·참고 문서·API 키를 이용해 고객별 기억을 구현하되, 관리자 화면에는 해당 매장 고객의 기억만 노출되도록 제한한다. [07:42]

3. 사실 단위 저장과 새 세션 복원 테스트

  • 이름·방문 희망일·디저트 선호·견과류 회피 정보는 대화 원문이 아니라 예약과 취향을 압축한 사실 단위로 저장된다. [08:19]
  • 새 시크릿 창에서도 알레르기와 화요일 예약 정보는 검색됐지만, 시스템 프롬프트 오류로 최종 답변은 알레르기 정보가 없다고 잘못 말했다. [08:57]
  • 실제 대화와 오류 응답을 다시 입력해 한국어 출력 및 기억 참조 규칙을 고치고, 반복 테스트로 시스템 프롬프트를 보완한다. [09:20]

4. 관리자 검수와 개인정보 위험

  • 관리자는 고객별 상담 맥락과 저장된 기억을 확인해 어떤 정보가 장기 기억으로 축적됐는지 직접 검수할 수 있다. [09:40]
  • 잘못된 사실이 새 기억으로 추가될 수 있으므로 고객별 메모리와 엔티티를 점검하고 부정확한 항목을 수동 삭제해야 한다. [09:59]
  • 단골의 선호와 문의 이력은 상담원이 바뀌어도 유지되는 자산이지만, 개인정보 동의가 필요하고 알레르기 같은 건강 정보는 수집이 제한될 수 있다. [10:43]

5. 사실 압축의 비용 효과와 정보 손실

  • 40턴 전체 대화를 프롬프트에 넣는 방식과 핵심 기억 다섯 개만 사용하는 방식을 비교했을 때 사실 압축 방식의 토큰 사용량이 약 88% 감소했다. [11:22]
  • 기억을 다섯 개로 제한하면 여섯 번째 이후 정보가 사라질 수 있으므로, 서비스 특성과 트래픽 증가에 따른 AI 비용을 함께 고려해 보존량을 정해야 한다. [11:39]

6. 고객 간 정보 유출과 호출 비용 공격

  • A 고객의 기억이 B 고객에게 노출되는 것도 개인정보 유출이므로, 다른 고객을 가장한 예약 및 기억 조회 테스트가 필요하다. [12:34]
  • 전화번호만 입력하면 타인의 기억을 조회할 수 있으므로 비용이 들더라도 SMS OTP 같은 연락처 소유 인증을 적용해야 한다. [12:44]
  • IP 기준 제한은 우회 공격과 공유 IP 오차에 취약하므로, 인증된 고객 단위로 호출 횟수를 제한해야 한다. [13:09]

7. 수정 결과 검증과 남은 운영 한계

  • 기능 추가 후 보안 감사와 후속 수정이 필요하며, 프롬프트 수정으로 알레르기 인식은 해결됐지만 참조 기억의 외국어 노출은 남아 있다. [13:57]
  • 예약 실행 API가 연결되지 않아 실제 예약 생성이나 변경은 수행할 수 없고 별도 기능 개발이 필요하다. [14:26]
  • 테스트용 요청 한도를 넘기면 HTTP 429가 반환되며, 운영 환경에서는 실제 트래픽과 비용 위험에 맞춰 한도를 조정해야 한다. [14:53]

8. 비용 통제와 구현 항목 점검

  • 서비스 호출이 계속 비용을 발생시킬 수 있으므로 레이트 리밋으로 과도한 요청을 막아야 한다. [15:04]
  • 프롬프트 8개와 레이트 리밋 1개로 고객 식별·기억·재방문 인식·관리자 뷰·토큰 실측·보안 점검까지 구현한다. [15:09]

9. 개인 개발자의 구현 가능성과 다음 주제

  • 기억형 서비스는 대기업만의 전유물이 아니며 개인 개발자도 직접 만들어 활용할 수 있다. [15:22]
  • 다음 바이브 코딩 주제는 시청자 추천을 바탕으로 정하고, 구현을 원하는 아이디어를 제안받는다. [15:37]

🧾 결론

  • 기억형 챗봇의 핵심은 대화를 무한히 보관하는 것이 아니라, 고객별 핵심 사실을 정확하게 추출·검색·수정하는 데 있다.
  • 사실 압축은 토큰 비용을 크게 낮출 수 있지만, 보존 개수를 줄일수록 중요한 정보가 사라질 위험이 커지므로 서비스별 균형점이 필요하다.
  • 잘못 저장된 기억은 이후 상담에도 영향을 주므로 관리자 화면에서 고객별 메모리와 엔티티를 검수하고 부정확한 항목을 삭제할 수 있어야 한다.
  • 현재 구현 범위는 예약 안내와 요청 접수까지이며, 실제 예약 생성·변경·취소를 수행하려면 별도의 실행 API를 연결해야 한다.

📈 투자·시사 포인트

  • AI 서비스의 비용 경쟁력은 모델 가격뿐 아니라 전체 대화 대신 필요한 사실만 불러오는 메모리 구조와 레이트 리밋 설계에서도 결정될 수 있다.
  • 고객 기억을 활용하는 서비스는 재방문 경험을 개선할 수 있지만, 고객·매장 간 데이터 격리와 연락처 소유 인증이 제품 신뢰의 전제 조건이다.
  • 관리자 검수·수정·삭제 기능과 보안 감사 절차는 기억 기능을 실제 고객 관리 자산으로 전환하는 운영 역량에 해당한다.
  • 상담 기능과 예약 실행 API의 연결 여부는 시연 가능한 챗봇과 실제 업무를 완결하는 서비스의 중요한 차이를 만든다.

⚠️ 불확실하거나 확인이 필요한 부분

  • 약 88%의 토큰 절감은 40턴 전체 대화와 핵심 기억 다섯 개를 비교한 결과이므로, 다른 대화 길이와 서비스에서도 같은 비율이 유지되는지는 확인되지 않았다.
  • 기억을 다섯 개로 제한하면 여섯 번째 이후 정보가 소실될 수 있지만, 서비스별 적정 보존량과 우선순위 기준은 제시되지 않았다.
  • 시스템 프롬프트 수정 후 알레르기 기억은 정상 인식했지만 참조 기억이 외국어로 노출되는 문제는 남아 있다.
  • 자막 기반 정리: 타임스탬프가 있는 자막을 기준으로 정리했으며, 고유명사·수치·인용은 원문 확인 필요 시 별도 검증한다.
  • 영상 속 주장: 발표자의 해석·전망·비교는 확인된 외부 사실이 아니라 영상 속 주장으로 분리해 읽는다.
  • 검증 필요: 수치, 기업 실적, 정책·시장 전망은 발행 전 최신 자료로 별도 검증이 필요하다.

✅ 액션 아이템

  • 기억 식별자를 매장 ID-고객-연락처 구조로 만들고 매장·고객 간 데이터가 섞이지 않는지 테스트한다.
  • 테스트 과정에서 노출된 API 키를 폐기하고 새로운 키로 교체한다.
  • 새 시크릿 세션에서 동일 연락처의 기억 복원, 신규 고객 처리, 다른 고객을 가장한 기억 조회를 각각 검증한다.
  • 전화번호 입력만으로 본인 확인을 끝내지 말고 SMS OTP 등 연락처 소유 인증을 적용한다.

❓ 열린 질문

  • 예약 정보·취향·알레르기 가운데 어떤 사실을 우선 보존하고, 고객별 기억 개수는 얼마로 설정해야 하는가?
  • 개인정보 동의가 필요한 항목과 수집 자체를 제한해야 할 건강 정보의 경계는 어디까지인가?
  • 참조 기억이 외국어로 노출되지 않도록 저장 언어와 응답 언어를 어떤 규칙으로 통제할 것인가?

관련 문서

공통 태그와 주제 흐름을 기준으로 같이 보면 좋은 문서를 이어서 제안합니다.