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

知识库功能后端的设计

_ = load_dotenv(find_dotenv())
用于加载环境变量,使用 dotenv 库加载环境变量文件 (.env) 中的配置,并将其设置为当前环境变量。

  • LLM_MODEL_DICT 是一个字典,键为不同的模型平台,值为该平台支持的语言模型列表。
  • LLM_MODEL_LIST 是所有语言模型的列表,通过将 LLM_MODEL_DICT 的值展平而得到。
  • INIT_LLMINIT_EMBEDDING_MODEL 是初始的语言模型和嵌入模型名称。
  • EMBEDDING_MODEL_LIST 包含了可用的嵌入模型列表。
  • DEFAULT_DB_PATHDEFAULT_PERSIST_PATH 是默认的数据库和持久化数据路径。

get_model_by_platform 函数:这个函数根据给定的平台名称返回对应的语言模型列表,如果平台不存在,则返回空字符串。

Model_center 类的设计:

  • Model_center 类是一个模型中心,用于管理多个问答链(Chat_QA_chain_selfQA_chain_self)的实例。
  • __init__ 方法初始化了两个空字典 chat_qa_chain_selfqa_chain_self,用于存储不同模型和嵌入模型组合的问答链实例。
chat_qa_chain_self_answer 方法:
  • 接收参数 questionchat_historymodelembeddingtemperaturetop_khistory_lenfile_pathpersist_path
  • 根据 (model, embedding) 组合查找或创建对应的 Chat_QA_chain_self 实例,并调用其 answer 方法回答问题。
  • 将问题和回答添加到 chat_history 中,并返回空字符串和更新后的 chat_history
qa_chain_self_answer 方法:
  • 接收参数 questionchat_historymodelembeddingtemperaturetop_kfile_pathpersist_path
  • 根据 (model, embedding) 组合查找或创建对应的 QA_chain_self 实例,并调用其 answer 方法回答问题。
  • 将问题和回答以元组形式添加到 chat_history 中,并返回空字符串和更新后的 chat_history
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值