一、概述
在使用大模型(LLM)做应用开发时,LangChain是一个主流的开发框架,通过它来构建Agent,根据用户查询访问企业私有数据,调用自定义或者第三方工具库,然后再调用LLM,利用其推理能力以自然语言的方式返回查询结果给用户。本文使用ChatGLM系列的最新开源模型chatglm3-6b,通过LangChain来访问基于Notion存储的私有数据,最后让chatglm3-6b返回查询结果。
二、关于模型的准备
通过访问huggingface.co可以获取开源模型chatglm3-6b,在使用前需要安装依赖库:
pip install protobuf transformers==4.30.2 cpm_kernels torch>=2.0 gradio mdtex2html sentencepiece accelerate
可以利用transformers库直接下载模型:
接下来测试一下模型加载后是否能被正常调用:
打印结果如下:
继续输入问题,这次对话调用加入了参数history:
打印结果如下:
晚上睡不着时,你可以尝试以下几种方法: 1. 保持冷静:尽量放松,不要焦虑或担心失眠问题。 2. 改变环境:确保你的卧室环境安静、舒适、黑暗。关闭电子设备,降低光线,使用舒适的床垫和枕头。 3. 规律作息:每天尽量在相同的时间入睡和起床,以调整你的生物钟。 4. 放松技巧:尝试一些放松技巧,如深呼吸、冥想、渐进性肌肉松弛等。 5. 避免刺激性活动:晚上避免喝咖啡、茶、可乐等含咖啡因的饮料,避免过于油腻的食物,这些都可能导致失眠。 6. 睡前活动:睡前适度活动,如散步、瑜伽等,有助于放松身心。 7. 睡前限制使用电子设备:过度使用电子设备会影响睡眠质量,建议睡前一小时不再使用电子设备。 8. 睡前故事或阅读:睡前听一些轻柔的音乐或者读一些轻松的书籍,有助于入睡。 如果以上方法不能解决你的失眠问题,建议咨询专业医生或睡眠专家,以获得更好的建议和治疗。
以上测试表明模型调用成功。
三、关于私有数据的准备
为了方便演示,这里使用了从notion网站(https://www.notion.so)导出的一些样例数据来作为私有数据,供大模型框架LangChain来访问。下面展示的是样例数据片段:
如果基于传统项目开发来访问notion的数据,随着数据的增多,这会让访问变得困难,并且效率低下,从另一方面来说,现在的LLM通常是基于公开的通用数据集来进行训练的,如果企业用户提交的查询是跟私有数据相关的,那么直接与LLM交互往往得不到期望的结果,譬如下面提交一个问题让模型回答(用户问题跟私有数据相关):
问题:what's the probation period?
以下是模型给出的回答:
接下来会根据以上提到的notion样例数据,通过使用LangChain构建Agent来访问这些数据,从而让LLM的回答更有针对性,更符合用户期望的查询结果。