2024山东大学创新项目实训_11

知识库后端功能的设计

1. 

  • clear_history 方法定义在一个类中,用于清除所有 chat_qa_chain_self 中问答链的历史记录。
  • 如果 self.chat_qa_chain_self 字典非空,它会迭代字典中的每个问答链实例 (chain),并调用其 clear_history() 方法来清空历史记录。

2. 

  • format_chat_prompt 函数接收用户的消息 message 和当前的聊天历史记录 chat_history
  • 它将历史记录中的每一轮对话(用户消息和助手消息)格式化成一段提示文本 prompt
  • 最后,将用户最新的消息添加到 prompt 的末尾,并返回完整的提示文本 prompt

3. 

  • respond 函数用于生成助手的回复,并更新聊天历史记录。
  • 接收参数包括 message(用户的消息)、chat_history(当前的聊天历史记录)、llm(语言模型实例)、history_len(历史记录的长度限制,默认为3)、temperature(生成文本时的温度参数,默认为0.1)、max_tokens(生成文本的最大标记数,默认为2048)。
  • 如果 message 为空或长度小于1,则返回空字符串和原始的 chat_history
  • 将根据 history_len 来截取聊天历史记录的最后几轮。
  • 使用 format_chat_prompt 函数将 message 和截取后的 chat_history 格式化成一个提示文本 formatted_prompt
  • 调用 get_completion 函数(未提供具体实现,但用于生成助手的回复)获取助手的回复 bot_message
  • 将用户的消息和助手的回复作为元组 (message, bot_message) 添加到 chat_history 中。
  • 调用 text_to_speech_pyttsx3 函数将 bot_message 转换成音频文件 audio_file
  • 最后返回空字符串(表示没有错误)、更新后的 chat_history 和生成的 audio_file

4. 总结:

  • clear_history 用于清空问答链的历史记录。
  • format_chat_prompt 用于将用户消息和历史对话格式化成一个提示文本。
  • respond 用于生成助手的回复,并更新聊天历史记录,同时支持将助手回复转换成音频文件。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值