p10node/docflare-ai는 문서 사이트에 스크립트 태그 하나만 붙이면 질문에 답하고 근거 문서를 함께 보여 주는 오픈소스 챗봇 위젯 프로젝트다. 2026-10-08 커밋 6c00950c가 Workers 백엔드, 크롤러, 벡터 검색, RAG, 관리자 UI를 한 번에 추가했다. 변경 파일 29개가 모두 신규 추가이며, 추가된 줄은 4501줄, 삭제된 줄은 0줄이다.
답변 방식은 검색 증강 생성(RAG, 검색해 온 문서를 근거로 모델이 답을 만드는 구조)이다. README는 Workers에 Hono 라우터를 얹고 Workers AI에서 bge-small-en-v1.5로 질문을 임베딩하고, Vectorize에서 384차원 코사인 거리로 상위 20개를 찾은 뒤 bge-reranker-base라는 교차 인코더로 순위를 다시 매기고, 최종 상위 문단만 llama-3.1-8b-instruct-fp8에 넘겨 답을 만든다고 설명한다. 검색 결과는 사이트별 namespace로 나뉘고, 사이트·페이지·질문 기록은 D1(SQLite)에 저장된다. 위젯은 Shadow DOM을 쓰는 순수 JavaScript로 10KB 미만이고, /admin 경로의 관리 화면은 빌드 단계 없는 정적 HTML 한 파일이다. 라이선스는 MIT다.
README는 구성 요소를 모두 Cloudflare 무료 티어 안에서 돌린다고 밝히며 한도도 표로 적었다. Workers 10만 요청/일, Workers AI 1만 뉴런/일, Vectorize 저장 500만 차원과 월 3000만 차원 질의, D1 5GB와 일 500만 읽기다. 크롤러는 사이트맵 인덱스와 gzip 사이트맵을 처리하고 HTMLRewriter로 내비·헤더·푸터 같은 공통 요소를 벗겨 낸다.
다만 이 수치는 저장소 문서에 적힌 값이지 외부에서 확인한 측정이 아니다. 8B 모델을 이 한도로 어느 정도 처리할 수 있는지는 README가 밝히지 않는다. 이 커밋은 기능 수정이 아니라 전체 소스 추가이고, 별도 버전 릴리스 표기는 없다. 단위 테스트 파일 test/unit.test.ts도 함께 들어왔지만 실행 결과는 이 커밋 정보에 남아 있지 않다. 배포 전에는 .dev.vars.example의 ADMIN_TOKEN 자리표시자를 실제 값으로 바꿔야 한다. 검색 정확도나 응답 품질에 대한 공개 벤치마크는 제공되지 않아, 문서 사이트에 붙여 볼 만한 초기 구현이라는 정도까지가 확인 가능한 범위에 가깝다.