Build Real-Time AI Chatbot for Websites Without Vector Datab
AI Store에서 AI코딩으로 만들어진 앱을 만나보세요!
지금 바로 방문하기

웹사이트에 실시간 AI 챗봇 구축: 간단한 방법

카테고리

프로그래밍/소프트웨어 개발

서브카테고리

인공지능

대상자

  • 웹 개발자 및 AI 엔지니어
  • 복잡한 데이터 파이프라인을 피하고자 하는 실무자
  • 실시간 정보 업데이트가 필요한 챗봇 프로젝트 담당자
  • 난이도: 중급~고급 (AI 프레임워크 활용, 웹 크롤링 기술 필요)

핵심 요약

  • PocketFlow 프레임워크를 사용해 벡터 데이터베이스 없이 실시간 웹사이트 정보를 기반으로 챗봇 구축
  • "Node" 기반 아키텍처로 복잡한 파이프라인 대신 단순한 웹 크롤링을 통해 데이터 수집
  • 자체적인 웹사이트 업데이트로 인해 데이터 동기화 없이 실시간 정확한 답변 제공

섹션별 세부 요약

1. 전통적인 챗봇 개발의 한계

  • 문서 수집-정리-데이터베이스 구축 3단계를 거쳐야 함
  • 수동 업데이트 필요로 인해 실시간성 부족 및 오류 발생 가능성
  • 예: 가격/정책 변경 시 챗봇 정보가 뒤처짐

2. 실시간 웹사이트 기반 챗봇 구조

  • 웹사이트 자체를 지식원으로 활용해 실시간 정보 수집
  • 예: "Product A 환불 절차" 질문 시 홈페이지 → 상품 페이지 → 지원 섹션 순서로 정보 탐색
  • 사전 승인된 도메인 제한으로 인터넷 전체 크롤링 방지

3. PocketFlow 프레임워크 소개

  • 100줄의 코드로 구성된 무중간 라이브러리
  • 3가지 핵심 원칙:

- Node 기반 작업 분할 (예: BaseNode 클래스)

- 공유 데이터 딕셔너리(shared)를 통한 정보 전달

- Flow 관리자로 노드 연결 및 신호 처리

4. Node 기반 워크플로우 예시

  • AddFive Node:

```python

class AddFive(BaseNode):

def exec(self, current_number):

return current_number + 5

```

  • MultiplyByTwo Node:

```python

class MultiplyByTwo(BaseNode):

def exec(self, current_number):

return current_number * 2

```

  • Flow 관리자:

```python

class Flow(BaseNode):

def orch(self, shared):

curr = self.start

while curr:

signal = curr.run(shared)

curr = curr.successors.get(signal or "default")

```

결론

  • PocketFlow를 활용해 복잡한 데이터베이스 없이 웹사이트 자체를 지식원으로 사용함으로써 0 유지보수실시간 업데이트 가능
  • Node 기반 아키텍처를 통해 간단한 로직으로도 복잡한 작업 흐름 구현 가능
  • 실무 적용 시 PocketFlow를 사용하고, 사전 승인된 도메인 목록을 명시적으로 설정해 보안 강화 추천