无坑!部署langchain-chatchat + glm4-9b-chat,轻松实现知识库智能问答!

Langchain-chatchat 最新版本0.3.0地址 谢谢你的点赞/关注支持

通过该项目可以轻松实现智能问答,由于chatglm4的开源,该项目最新版本0.3.0与0.2.0版本部署有所不同。

这里 llm 模型使用 glm4-9b-chat
embedding 模型使用 bge-large-zh-v1.5

配置虚拟环境

  1. 创建虚拟环境
    conda create --name chat3 python=3.10.9
  2. 激活虚拟环境
    conda activate chat3

安装项目库

从 0.3.0 版本起,Langchain-Chatchat 提供以 Python 库形式的安装方式

为确保所使用的 Python 库为最新版,建议使用官方 Pypi 源或清华源。

因模型部署框架 Xinference 接入 Langchain-Chatchat 时需要额外安装对应的 Python 依赖库,因此如需搭配 Xinference 框架使用时,建议使用如下安装方式:

pip install "langchain-chatchat[xinference]" -U

模型推理框架并加载模型

从 0.3.0 版本起,Langchain-Chatchat 不再根据用户输入的本地模型路径直接进行模型加载ÿ

### 对 ChatGLM4-9B 模型进行微调 对于希望对 `ChatGLM4-9B` 进行微调的操作者来说,可以采用特定工具简化这一过程。例如,在实践中选择了 `llama_factory` 来完成这项工作[^2]。 #### 准备环境与资源 确保已经安装并配置好了必要的依赖库以及准备好了训练数据集。这通常涉及到创建虚拟环境、安装Python包管理器pip中的依赖项等操作。 #### 下载基础模型 首先需要获取 `ChatGLM4-9B` 的基础版本作为起点: ```bash git clone https://www.modelscope.cn/ZhipuAI/chatglm3-6b-base.git ``` 此命令会克隆指定仓库至本地文件系统中[^1]。 #### 微调流程概述 利用 `llama_factory` 工具来进行实际的微调处理。该工具提供了便捷的方法来调整大型预训练语言模型以适应特定应用场景的需求。具体步骤包括但不限于定义目标任务、设置超参数、加载数据集、执行训练循环等内容。 #### 实施微调 进入项目目录后运行如下脚本启动微调进程(假设已经在上述路径下完成了clone操作): ```python from llama_factory import FineTuner # 初始化FineTuner对象, 并传入相应的参数. ft = FineTuner( model_name="path_to_your_chatglm4_9b", # 替换为实际的基础模型位置 dataset_path="./data/", # 数据集所在的位置 ) # 开始微调过程 ft.fine_tune() ``` 这段代码展示了如何通过 Python 脚本来实现自动化地对选定的数据集上应用 LLM (Large Language Model) 的微调功能。 #### 验证效果 当微调完成后,可以通过评估指标对比原始性能差异;也可以尝试将新获得的知识迁移到其他相似的任务上去验证改进的有效性。 #### 合并增量更新 如果想要保存经过优化之后的状态,则需考虑把基座模型同LoRA(Low-Rank Adaptation)方式产生的增量部分结合起来形成最终版的大规模预训练模型实例: ```bash cd /home/data/chatglm4-finetune python merge_hf2.py \ /home/data/chatglm4-finetune/GLM-4/finetune_demo/output/checkpoint-16000/ \ --out-dir ./merge_model ``` 这条指令说明了怎样使用自定义脚本 `merge_hf2.py` 完成两个不同阶段成果之间的融合工作[^3]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zbc-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值