聊天机器人终端

在前端输入问题时,会向/api/chat端点发送POST 请求。请求正文必须包括用户的问题,格式如下:

根据服务器发送事件(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 查询字符串参数,选择提出后续问题。

聊天机器人终端的高级逻辑在文件api/app.py 中 Flask 应用程序的api_chat() 函数中:

文件api/chat.py中的ask_question() 函数是一个生成器函数,它使用 Flask 的响应流功能(基于yield 关键字)对上述事件进行流式处理:

此前

摄取

下一个

检索阶段

准备好打造最先进的搜索体验了吗?

足够先进的搜索不是一个人的努力就能实现的。Elasticsearch 由数据科学家、ML 操作员、工程师以及更多和您一样对搜索充满热情的人提供支持。让我们联系起来,共同打造神奇的搜索体验,让您获得想要的结果。

亲自试用