赞
踩
1.使用 FastChat 提供开源 LLM 模型的 API,以 OpenAI API 接口形式接入,提升 LLM 模型加载效果;
2.使用 langchain 中已有 Chain 的实现,便于后续接入不同类型 Chain,并将对 Agent 接入开展测试;
3.使用 FastAPI 提供 API 服务,全部接口可在 FastAPI 自动生成的 docs 中开展测试,且所有对话接口支持通过参数设置流式或非流式输出;
4.使用 Streamlit 提供 WebUI 服务,可选是否基于 API 服务启动 WebUI,增加会话管理,可以自定义会话主题并切换,且后续可支持不同形式输出内容的显示;
5.项目中默认 LLM 模型改为 THUDM/chatglm2-6b,默认 Embedding 模型改为 moka-ai/m3e-base,文件加载方式与文段划分方式也有调整,后续将重新实现上下文扩充,并增加可选设置;
6.项目中扩充了对不同类型向量库的支持,除支持 FAISS 向量库外,还提供 Milvus, PGVector 向量库的接入;
7.项目中搜索引擎对话,除 Bing 搜索外,增加 DuckDuckGo 搜索选项,DuckDuckGo 搜索无需配置 API Key,在可访问国外服务环境下可直接使用。
其他详见项目地址说明
国外github地址
国内 gitcode地址
本文基于windows10系统,IDE为VS code。
1.下载zip源码到本地
2.解压,并用VS code编辑器打开。
3.修改configs\model_config.py.example 将其重命名为configs\model_config.py
4.修改configs\model_config.py文件中embedding_model_dict配置
ps:0.2.0版本已将默认Embedding 更换为moka-ai/m3e-base ,为了方便这里我我们还使用之前版本的GanymedeNil/text2vec-large-chinese
将embedding_model_dict中text2vec修改为本地路径
注意windows系统下路径中的\转义。
将EMBEDDING_MODEL配置修改为text2vec
5.修改configs\model_config.py文件中llm_model_dict配置
ps:0.2.0版本默认的 LLM 模型为 THUDM/chatglm2-6b,同时本次0.2.0升级fastchat全部支持流式输出。
我们将llm_model_dict配置中chatglm2-6b的api_base_url修改自己的API地址
将LLM_MODEL修改为chatglm2-6b(默认是这个,不用修改)
请注意: 0.2.0及更新版本的依赖包与0.1.x版本依赖包可能发生冲突,强烈建议新建环境后重新安装依赖包。
1.新建终端执行 (使用清华源加速)
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/
2.使用本地模型权重需要加载
在项目根目录下,执行 server/llm_api.py 脚本启动 LLM 模型服务:
python server/llm_api.py
以如上方式启动LLM服务会以nohup命令在后台运行 fastchat 服务,如需停止服务,可以运行如下命令:
python server/llm_api_shutdown.py --serve all
亦可单独停止一个 fastchat 服务模块,可选 [all, controller, model_worker, openai_api_server]
3.我们使用云端的fastchat接口直接运行如下命令即可
python server/api.py
启动成功
启动 API 服务后,可访问 localhost:7861 或 {API 所在服务器 IP}:7861 FastAPI 自动生成的 docs 进行接口查看与测试。
FastAPI docs 界面
4.启动 Web UI 服务
执行 webui.py 启动 Web UI 服务(默认使用端口8501)
python -m streamlit run webui.py --server.port 8808
5.打开浏览器http://localhost:8808/
1.LLM对话(直接与模型对话)
2.知识库管理(新建一个名为test的知识库)
上传一份txt文件
ps:第一次上传文件会自动创建向量库,若更换Embedding或其他向量库(如Milvus, PGVector )等。可以重新生成向量库
3.知识库问答
部署并测试完成功能
感谢langchain-chatGLM作者 @imClumsyPanda以及其团队成员
下面是langchain-chatGLM项目的初期视频介绍BliBli
到这写完了,又回去看了眼项目,发现改名了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。