ChatGLM3-6B本地部署教程

composite_demo的部署和使用

安装

大多数情况下,我们使用的都是composite_demo,下面是composite_demo环境安装的方法:

建议通过 Conda 进行环境管理。

进入到项目根目录下的“\composite_demo”文件夹,在路径栏输入“cmd”打开命令终端,分别执行以下命令新建一个 conda 环境并安装所需依赖:

conda create -n chatglm3-demo python=3.10
conda activate chatglm3-demo
pip install -r requirements.txt

请注意,本项目需要 Python 3.10 或更高版本。

这一步相当于是在conda中新建了一个名为“chatglm3-demo”的独立的虚拟环境,并且将项目所有的依赖都安装在这个独立的虚拟环境中!

ChatGLM3-6B本地部署教程

此外,使用 Code Interpreter 还需要安装 Jupyter 内核:

ipython kernel install --name chatglm3-demo --user

运行

方法一:

运行以下命令在本地加载模型并启动 demo:

streamlit run main.py

之后即可从命令行中看到 demo 的地址,点击即可访问。初次访问需要下载并加载模型,可能需要花费一定时间。

如果已经在本地下载了模型,可以通过 export MODEL_PATH=/path/to/model 来指定从本地加载模型。如果需要自定义 Jupyter 内核,可以通过 export IPYKERNEL=<kernel_name> 来指定。

在环境变量中添加“MODEL_PATH”和“IPYKERNEL”两个项目,“MODEL_PATH”的值为模型的路径,“IPYKERNEL”的值为“chatglm3-demo”;

方法二:

为了启动方便,你也可以在“\ChatGLM3\composite_demo”文件夹中新建一个.bat文件,用记事本打开该文件,输入如下的内容(其中模型的路径要修改为你自己的内容)保存即可:
@echo off
call conda activate chatglm3-demo
set MODEL_PATH=D:\text-generation-webui\models\THUDM_chatglm3-6b
set IPYKERNEL=chatglm3-demo
streamlit run main.py

双击该bat文件同样可以启动demo!

使用

ChatGLM3 Demo 拥有三种模式:

  • Chat: 对话模式,在此模式下可以与模型进行对话。
  • Tool: 工具模式,模型除了对话外,还可以通过工具进行其他操作。
  • Code Interpreter: 代码解释器模式,模型可以在一个 Jupyter 环境中执行代码并获取结果,以完成复杂任务。

对话模式

对话模式下,用户可以直接在侧边栏修改 top_p, temperature, System Prompt 等参数来调整模型的行为。例如

ChatGLM3-6B本地部署教程

工具模式

可以通过在 tool_registry.py 中注册新的工具来增强模型的能力。只需要使用 @register_tool 装饰函数即可完成注册。对于工具声明,函数名称即为工具的名称,函数 docstring 即为工具的说明;对于工具的参数,使用 Annotated[typ: type, description: str, required: bool] 标注参数的类型、描述和是否必须。

例如,get_weather 工具的注册如下:

@register_tool
def get_weather(
    city_name: Annotated[str, 'The name of the city to be queried', True],
) -> str:
    """
    Get the weather for `city_name` in the following week
    """
    ...
ChatGLM3-6B本地部署教程
此外,你也可以在页面中通过 Manual mode 进入手动模式,在这一模式下你可以通过 YAML 来直接指定工具列表,但你需要手动将工具的输出反馈给模型。

代码解释器模式

由于拥有代码执行环境,此模式下的模型能够执行更为复杂的任务,例如绘制图表、执行符号运算等等。模型会根据对任务完成情况的理解自动地连续执行多个代码块,直到任务完成。因此,在这一模式下,你只需要指明希望模型执行的任务即可。

例如,我们可以让 ChatGLM3 画一个爱心:

ChatGLM3-6B本地部署教程

额外技巧

  • 在模型生成文本时,可以通过页面右上角的 Stop 按钮进行打断。
  • 刷新页面即可清空对话记录。

原创文章,作者:朋远方,如若转载,请注明出处:https://caovan.com/chatglm3-6bbendebushujiaocheng/.html

(0)
打赏 微信扫一扫 微信扫一扫
朋远方的头像朋远方
上一篇 2023年11月16日 下午4:13
下一篇 2023年12月1日 下午12:01

相关推荐

发表回复

登录后才能评论