ChatGLM-6B 部署与使用——打造你的专属GLM

news2024/9/23 17:27:34

ChatGLM-6B 部署与使用指南

ChatGLM-6B 是清华大学与智谱 AI 开源的一款对话语言模型,基于 General Language Model (GLM) 架构,参数达到 62 亿,因其卓越的语言理解与生成能力,受到广泛关注。

一、在 DAMODEL 上部署 ChatGLM-6B

DAMODEL(丹摩智算)为 AI 提供强大的算力和基础设施支持。

1.1 实例创建

进入 DAMODEL 控制台,选择资源中的 GPU 云实例,然后点击“创建实例”。

image-20240923131320316

配置付费模式为按量付费,选择 NVIDIA GeForce RTX 4090 GPU,具有 60GB 内存和 24GB 显存。继续配置 50GB 的数据硬盘,选择 PyTorch 1.13.1 镜像启动。创建密钥对,完成实例创建。

image-20240923131454352

image-20240923131510147

1.2 模型准备

启动实例后,打开终端,使用 git 克隆 ChatGLM-6B 项目。如果 GitHub 连接不畅,

image-20240923132251865可选择其他站点或离线下载。

git clone https://gitcode.com/applib/ChatGLM-6B.git

image-20240923131706951

安装完成后,

image-20240923132855653

进入项目目录后,使用以下命令安装依赖:

pip install -r requirements.txt

利用 DAMODEL 提供的上传功能,将 Hugging Face 上的 ChatGLM-6B 预训练模型文件上传至 /root/shared-storage 目录。方法:

image-20240923134832043

我们可以通过魔塔社区进行下载

image-20240923135225318

下载完成后进行上传和解压即可。

1.3 模型启动

上传并解压模型后,通过 cli_demo.pyweb_demo.py 启动模型。将模型加载路径修改为本地路径,使用命令:

python cli_demo.py

在终端中进行交互,或通过 Web 接口与模型进行对话。

python web_demo.py

二、通过 Web API 实现本地调用

2.1 启动 API 服务

运行 api.py 文件,启动 FastAPI 服务,接受 HTTP POST 请求。此请求体包括生成文本所需的各项参数(如 prompt、history 等)。启动成功后,服务器将准备好响应请求。

cd ChatGLM-6B
python api.py

2.2 开放端口

在访问控制中,添加需要开放的端口,并复制生成的访问链接,以便后续使用。

image-20240923135445156

然后点击添加端口,输入端口号并确定开放。

2.3 使用 PostMan 测试功能

通过 PostMan 发送 POST 请求,测试 API 是否正常工作。示例请求体如下:

{
  "prompt": "你好,你是谁?",
  "max_length": 512,
  "top_p": 0.9,
  "temperature": 0.7
}

若返回状态码为 200,则表示请求成功。

2.4 本地代码使用示例

以下是一个基础的单轮对话代码示例:

import requests
import json

api_url = "http://your-api-url"

data = {
    "prompt": "你好,你是谁?",
    "max_length": 500,
    "top_p": 0.9,
    "temperature": 1.0
}

response = requests.post(api_url, json=data)

if response.status_code == 200:
    result = response.json()
    print("Response:", result['response'])
else:
    print("Error:", response.status_code)

多轮对话示例

以下是支持多轮对话的示例代码:

import requests
import json

api_url = "http://your-api-url"
conversation_history = []

while True:
    query = input("用户:")
    if query.strip().lower() == "stop":
        break
    prompt = query
    data = {
        "prompt": prompt,
        "history": conversation_history,
        "max_length": 5000,
        "top_p": 0.9,
        "temperature": 0.9
    }
    response = requests.post(api_url, json=data)
    if response.status_code == 200:
        result = response.json()
        print("Response:", result['response'])
        conversation_history = result['history']
    else:
        print("Error:", response.status_code)

通过这些步骤,您可以在本地实现与 ChatGLM-6B 模型的对话。无论是技术开发还是日常应用,这一过程都能有效支持您的需求。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2158077.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

AD层次化设计中的常见错误

Duplicate Net Names Wire 仔细检查是不是网络标签没有标上 网络标签是否一致 Nets Wire has multiple names 上面的步骤也要检查 然后设置如下:

基于丹摩智算平台-手把手拿下经典目标检测模型 Faster-Rcnn

文章目录 1. 前言1. 1 丹摩智算平台1.2 经典目标检测模型 Faster-Rcnn 2. 前置准备2.1 WindTerm(远程连接服务器)2.2 项目源码 3. 服务器平台配置3.1 创建实例3.2 远程链接 4. Faster-rcnn 的环境配置4.1 上传文件,解压4.2 安装所需环境 5. 数…

在Windows系统上安装的 zstd C++ 库

在Windows系统上安装的 zstd C 库 项目地址:安装步骤步骤一步骤二 效果 项目地址: https://github.com/facebook/zstd 经过观察发现,这个项目没有CMakeLists.txt,只有Makefile,但是Makefile在windows系统下没有什么用, 所以说,常规的方式安装不可取了 安装步骤 步骤一 往下…

idea上使用tomcat运行web项目

idea上使用tomcat运行web项目 首先需要安装tomcat,可以查看我上一篇文章 如果你已经配置tomcat,这里不需要改动。如果未配置,需要在这里选择你tomcat目录 修改下面的上下文,也就是网页上访问时http://localhost:8080/后面拼…

算数运算之短路

c语言的表达式是从左往右求值的,我们在面对&&(按位与)和||(按位或)我们要根据与还有或的特性在判断是否能够使句子能够运行下去,就举个简单的例子 if(month 12 || month1 || month 2) { printf…

LeetCode 2374.边积分最高的节点:模拟

【LetMeFly】2374.边积分最高的节点:模拟 力扣题目链接:https://leetcode.cn/problems/node-with-highest-edge-score/ 给你一个有向图,图中有 n 个节点,节点编号从 0 到 n - 1 ,其中每个节点都 恰有一条 出边。 图…

英伟达开源 NVLM 1.0 引领多模态 AI 变革

新闻 NVLM 1.0 是由英伟达(Nvidia)最新推出的一系列前沿级别的多模态大型语言模型(MLLM),这些模型在视觉-语言任务上取得了与领先专有模型(例如 GPT-4o)和开放访问模型(例如 Llama 3…

[干货] [非基础警告] Unity 发布-订阅模式下的事件中心设计

本文师承于唐老师,但是修改了一些代码,采用更加方便理解的方式设计 1.什么是事件中心 2.可以比喻成冒险者工会的任务板子 任务板子上面有发布任务和任务完成两种基础情况 2.1 发布任务 来个冒险者发布一个任务,就执行Pulishtask方法 这…

【软件工程】状态转换图 其他图形工具

状态转换图 一、定义 二、符号表示 其他图形工具 一、层次方框图 二、Warmer图 三、IPO图 例题 选择题

【k8s】:DevOps 模式详解

1.什么是DevOps模式? DevOps 是当下非常火爆的一个概念,受到了很多互联网巨头的推崇。那么什么是 DevOps?它的全称是:集成开发与运维。至于它到底是干什么用的,为什么现在这么火爆,还得从源头说起。 1.1 …

无线感知会议系列【4】【基于WiFi和4G/5G的非接触无线感知:挑战、理论和应用-2】

前言: 本篇重点分享一下该论文 《Human Respiration Detection with Commodity Wifi Devices: Do User Location and Body Orientation Matter》 接 2020年北京智源大会 张大庆老师的一个报告 参考: https://blog.csdn.net/chengxf2/article/detai…

17.2 ksm源码讲解

本节重点介绍 : k8s资源对象的 buildStores构造函数注入MetricFamiliesk8s client-go 之 Reflector listAndWatch 方法watchHandler 监听更新,调用add等action 架构图总结 项目地址 地址 go get go get -v -d k8s.io/kube-state-metrics/v2v2.1.1源码分析 m…

uniapp微信小程序用户授权方法

效果 步骤 1&#xff09;div标签 <button type"primary" class"btn-login" click"getUserInfo">一键登录</button>2&#xff09;js方法 methods: {getUserInfo() {console.log("aaaa")uni.getUserProfile({desc: Wexin, …

Python画笔案例-056 绘制正方形金字塔

1、绘制正方形金字塔 通过 python 的turtle 库绘制 正方形金字塔,如下图: 2、实现代码 绘制正方形金字塔,以下为实现代码: """正方形金字塔.py """ import turtledef draw_square(length):for _ in

【Linux】yum、vim、gcc使用(超详细)

目录 yum 安装软件 卸载软件 查看安装包 安装一下好玩的命令 vim vim基本操作 模式切换 命令集 vim批量注释 vim配置 gcc 函数库 小知识点&#xff1a; Linux中常见的软件安装方式 --------- 下载&&安装 a、yum/apt b、rpm安装包安装 c、源码安装 y…

SDK(1.1note)

什么是SDK 控制台程序&#xff08;Console User interface&#xff09;CUI 对于控制台程序&#xff0c;通用&#xff0c;也就是平台无关 图形界面系统 可是如果你想要播放一个音乐&#xff0c;C语言有嘛&#xff1f; 所以需要平台开发&#xff0c;不可以移植性 平台会提供…

摒弃“流量思维”,以精准流量驱动企业发展——基于开源 AI 智能名片、链动 2+1 模式及 O2O 商城小程序的思考

摘要&#xff1a;本文深入探讨在当前竞争激烈的营销环境下&#xff0c;摒弃“流量思维”的紧迫性与必要性。强调做内容营销不能仅仅局限于发文案&#xff0c;而应摆脱一味追求阅读量、推荐量和粉丝数的误区&#xff0c;聚焦于获取精准流量。结合开源 AI 智能名片、链动 21 模式…

如何解决npm下载Puppeteer卡死的问题

亲测有效 export PUPPETEER_DOWNLOAD_BASE_URLhttps://cdn.npmmirror.com/binaries/chrome-for-testingnpm install https://github.com/cnpm/binary-mirror-config/pull/47https://github.com/cnpm/binary-mirror-config/pull/47 PS: 最开始看了下面这两个链接&#xff0c…

网络安全-长亭雷池的sql绕过

一、环境 雷池官网docker安装我的版本是 看官网介绍主要防御top10 二、讲解 我这里只描述通用型绕过&#xff0c;对于事件型不多描述&#xff0c;因为通用型的绕过是通杀的&#xff0c;差异化绕过 正常来说我们是因为没有一个很好的过滤所以造成第11关靶场的绕过 但是现在有了…

Stable Diffusion进阶篇:模型训练(附秋叶模型训练器)

前言 今天就来学习下Stable Diffusion关于微调训练方面的知识点。 今天没多少废话&#xff0c;因为我下午要去玩PTCG&#xff01;让我们冲冲冲 整理和输出教程属实不易&#xff0c;觉得这篇教程对你有所帮助的话&#xff0c;可以点击&#x1f447;二维码领取资料&#x1f618…