인턴일기 - 35일차(DeepSeek 기반 RAG챗봇 스트리밍 구현)

2025. 6. 24. 22:54데이터분석 인턴일기

오늘의 업무

DeepSeek 기반 스트리밍 챗봇구현

콘솔 어플리케이션 형태로 실시간 대화 구현

 

오늘은 RAG 기반 문서 검색 시스템과 DeepSeek LLM을 결합해
실제 사용자와 대화가 가능한 콘솔 챗봇 형태로 구현하는 작업을 진행했다.
특히 스트리밍 방식으로 구현함으로써, 대화가 입력되자마자 응답이 조금씩 출력되는 자연스러운 대화 흐름을 실현하고자 했다.

 

💬 1. 스트리밍 챗봇 구현 (콘솔 기반)

DeepSeek API의 스트리밍 응답 기능을 활용하여,
콘솔 화면에서 질문을 입력하면 실시간으로 모델의 응답을 받아 출력되도록 구성했다.

🔧 주요 구현 포인트:

  • DeepSeek API의 stream=True 옵션 활용
  • chunk 단위로 응답을 받아서 출력 → 대기 시간 최소화
  • 사용자 입력 → 검색 → 응답 생성을 하나의 루프 안에서 반복 처리

 

 

오늘은 생각보다 어려운 하루였다.
홈페이지에 나와 있는 예시 코드를 참고해 스트리밍 챗봇을 만들었지만,
실제 구현 시에는 비동기 흐름 처리, API 응답 형식 파악, 콘솔 출력 타이밍 문제 등 여러 부분에서 막혔다.

예시 코드만 믿고 그대로 따라 하면 쉽게 구현될 줄 알았는데,
직접 적용해보니 이해하지 못한 부분에서 오류가 계속 발생해 시간이 많이 소요됐다.
결국 코드를 한 줄씩 뜯어보며 구조를 파악하고, DeepSeek API 문서를 다시 보면서
스트리밍 응답의 동작 원리부터 다시 정리해야만 제대로 작동시킬 수 있었다.

하지만 어려운 만큼, 실제로 구현된 챗봇이 실시간으로 응답을 출력하는 모습을 보니 매우 뿌듯했다.
단순하게 메시지를 주고받는 것이 아닌, “진짜 챗봇처럼 대화한다”는 느낌을 받을 수 있었다.