챗봇 엔드포인트

프런트엔드에 질문을 입력하면 POST 요청이 /api/chat 엔드포인트로 전송됩니다. 요청 본문에는 다음 형식의 사용자 질문이 포함되어야 합니다:

애플리케이션의 응답은 서버 전송 이벤트(SSE) 사양에 정의된 대로 이벤트 스트림입니다. 서버가 클라이언트에 반환하는 이벤트는 다음과 같은 순서로 진행됩니다:

  • data: [SESSION_ID] session-id-assigned-to-this-chat-session
  • data: [SOURCE] json-formatted-document (식별된 각 관련 문서 소스에 대해 반복됨)
  • data: response chunk (LLM이 반환하는 각 응답 청크에 대해 반복됨)
  • data: [DONE]

클라이언트는 요청 URL에 session_id 쿼리 문자열 인수를 추가하여 후속 질문을 하도록 선택할 수 있습니다.

챗봇 엔드포인트의 하이레벨 로직은 Flask 애플리케이션의 api_chat() 함수인 api/app.py 파일에 있습니다:

api/chat.py 파일의 ask_question() 함수는 yield 키워드를 기반으로 하는 Flask의 응답 스트리밍 기능을 사용하여 위에서 설명한 이벤트를 스트리밍하는 제너레이터 함수입니다:

이전 버전

인제스트

최첨단 검색 환경을 구축할 준비가 되셨나요?

충분히 고급화된 검색은 한 사람의 노력만으로는 달성할 수 없습니다. Elasticsearch는 여러분과 마찬가지로 검색에 대한 열정을 가진 데이터 과학자, ML 운영팀, 엔지니어 등 많은 사람들이 지원합니다. 서로 연결하고 협력하여 원하는 결과를 얻을 수 있는 마법 같은 검색 환경을 구축해 보세요.

직접 사용해 보세요