• Stars
    star
    232
  • Rank 172,847 (Top 4 %)
  • Language
    Python
  • License
    Apache License 2.0
  • Created over 1 year ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

👋 欢迎来到 ChatGLM 创意世界!你可以使用修订和续写的功能来生成创意内容!

💡Creative ChatGLM WebUI

👋 欢迎来到 ChatGLM 创意世界!你可以使用修订和续写的功能来生成创意内容!

  • 📖 你可以使用“续写”按钮帮 ChatGLM 想一个开头,并让它继续生成更多的内容。
  • 📝 你可以使用“修订”按钮修改最后一句 ChatGLM 的回复。

环境配置

离线包

此安装方法适合:

  • 非开发人员,不需要写代码
  • 没有Python经验,不会搭建环境
  • 网络环境不好,配置环境、下载模型速度慢
名称 大小 百度网盘 备注
小显存离线包 5.3 GB 点击下载 使用 ChatGLM-6B-int4 权重的离线包,显存需求 8GB
大显存离线包 11.8 GB 点击下载 使用 ChatGLM-6B 权重的离线包,显存需求 16GB
环境离线包 2.6 GB 点击下载 不带权重的离线包,启动之后可以自动下载模型,默认自动下载 ChatGLM-6B 权重。

除了这些离线一键环境之外,你还可以在下面下载一些模型的权重,包括 THUDM/chatglm-6b 系列、silver/chatglm-6b-slim 系列、BelleGroup/BELLE 系列。

下载好环境包之后,解压,然后运行 start_offline.bat 脚本,即可启动服务:

企业微信截图_16822982234979

如果你想使用 API 的形式来调用,可以运行 start_offline_api.bat 启动 API 服务:

企业微信截图_16822982234979

虚拟环境

此安装方法适合已经安装了 Python,但是希望环境与系统已安装的 Python 环境隔离的用户。

点击查看详细步骤

首先启动 setup_venv.bat 脚本,安装环境:

image

然后使用 start_venv.bat 脚本启动服务:

image

Python 开发环境

此项配置方法适合代码开发人员,使用的是自己系统里安装的 Python。

环境配置参考官方链接:https://github.com/THUDM/ChatGLM-6B

配置好之后,运行 app.py 开始使用,或者使用 IDE 开始开发。

用法介绍

续写

原始对话

如果你直接问 ChatGLM:“你几岁了?”

它只会回答:“作为一个人工智能语言模型,我没有年龄,我只是一个正在不断学习和进化的程序。”

image

续写对话

而如果你给它起个头:“我今年”

它就会回答:“我今年21岁。”

image

使用视频

ChatGLM2

修订

原始对话

如果你直接跟 ChatGLM 说:“你是谁?”

它会回答:“我是一个名为 ChatGLM-6B 的人工智能助手,是基于清华大学 KEG 实验室和智谱 AI 公司于 2023 年共同训练的语言模型开发的。我的任务是针对用户的问题和要求提供适当的答复和支持。”

你再问它:“你几岁了?”

它只会说:“作为一个人工智能助手,我没有年龄,因为我只是一个程序,没有实际的肉体或生命。我只是一个在计算机上运行的程序,专门设计为回答用户的问题和提供相关的帮助。”

image

修改对话

你可以改变它的角色,比如你通过“修订”功能,将它的回复改成:“我是杨开心。”

然后你再问它:“你几岁了?”

它就会回答:“我今年15岁。”

image

使用视频

未命名项目

重新对话

你可以按照某个输入,重复生成对话,从而拿到满意的结果。

使用视频

20u5z-svohg

实现原理

这个方法并没有训练,没有修改官方发布的权重,而只是对推理的函数做了修改。

续写的原理是,将用户的输入直接设置为 history[-1][1],模拟模型自己的部分输出,然后继续走之后的推理函数 stream_chat_continue code

修订的原理是,将用户的输入直接设置为 history[-1][1],模拟模型自己的完整输出,但是不走推理函数。

离线包制作方法

关于本项目中的离线包制作方法,可以查看下面的详细步骤。

点击查看详细步骤

准备 Python

首先去 Python 官网下载:https://www.python.org/downloads/

image

注意要下载 Windows embeddable package (64-bit) 离线包,我选择的是 python-3.10.10-embed-amd64.zip

image

解压到 ./system/python 目录下。

image

准备 get-pip.py

去官网下载:https://bootstrap.pypa.io/get-pip.py

保存到 ./system/python 目录下。

⚠️必做

解压之后,记得删除 pth 文件,以解决安装依赖的问题。

比如我删除的文件路径是 ./system/python/python310._pth

image

安装依赖

运行 setup_offline.bat 脚本,安装依赖。

image

下载离线模型

你可以使用 download_model.py 脚本下载模型,如果你的网络环境不好,这个过程可能会很长。下载的模型会存在 ~/.cache 一份,存在 ./models 一份。

当你之后使用 AutoModel.from_pretrained 加载模型时,可以从 ~/.cache 缓存目录加载模型,避免二次下载。

image

下载好的模型,你需要从 ./models 文件夹移出到项目目录下,这样就可以离线加载了。

image

下载完模型之后,你需要修改 app.py 里的 model_name,改成你想加载的模型名称。

测试

使用 start_offline.bat 启动服务:

image

可以看到,服务正常启动。

协议

本仓库的代码依照 Apache-2.0 协议开源,ChatGLM-6B 模型的权重的使用则需要遵循 Model License

More Repositories

1

captcha_break

验证码识别
Jupyter Notebook
2,678
star
2

dl-engineer-guidebook

深度学习工程师生存指南
Python
837
star
3

dogs_vs_cats

猫狗大战
Jupyter Notebook
614
star
4

baiduyun_deeplearning_competition

百度云魅族深度学习应用大赛
Jupyter Notebook
418
star
5

smartCar

飞思卡尔智能车程序
C
128
star
6

DogBreed_gluon

kaggle Dog Breed Identification
Jupyter Notebook
122
star
7

wechat_digit_recognition

微信公众号数字识别
HTML
87
star
8

NNPlayground

神经网络 iPhone 版
Objective-C
36
star
9

behavioral_cloning

Jupyter Notebook
28
star
10

LaughOrNot

C++
28
star
11

PM2.5

如何自制室内空气质量检测仪
C
28
star
12

ChatGPT

ChatGPT 试用报告,欢迎大家在 Issues 里提供更多有意思的使用方法
Python
24
star
13

mmdet_benchmark

mmdetection、mmdeploy 中的 Mask R-CNN 深度优化
Python
21
star
14

autoAirConditioner

中央空调控制器
C++
16
star
15

Acceleration-iOS

你可以使用个app直观地看到加速度,角速度,磁场强度以及欧拉角的原始数据,并分析它们
Swift
16
star
16

CarND-LaneLines-P1

Lane Finding Project for Self-Driving Car ND
Jupyter Notebook
15
star
17

CAM_gluon

HTML
14
star
18

CAM

Jupyter Notebook
13
star
19

NNPlayground_iPad

神经网络 iPad 版
Objective-C
12
star
20

RPi-Camera

Camera
Python
11
star
21

opencvChepai

opencv车牌识别,需要emgucv
C#
9
star
22

PCB_smartCar

HTML
7
star
23

doodle

Jupyter Notebook
6
star
24

im2bw

OpenCV iOS playground
C++
6
star
25

MFRC522

Arduino RFID 程序
Arduino
5
star
26

shanbay_google_image

扇贝单词图片助手
JavaScript
5
star
27

carService

蓝牙4.0
Swift
5
star
28

ypwhs.github.io

ypw.io
HTML
4
star
29

DHT

远程温湿度数据采集系统
Java
4
star
30

string-art

Jupyter Notebook
4
star
31

smartFish

smartFish with Camera
C
3
star
32

arduino

个人arduino程序
C
3
star
33

RPi

树莓派上的程序们
C
3
star
34

smartparking

智能停车场
C#
3
star
35

Lottery-machine

摇号机
C#
2
star
36

FPGA

FPGA程序
VHDL
2
star
37

machine-learning-ex

machine-learning 作业
MATLAB
2
star
38

pytorch_benchmark

Jupyter Notebook
2
star
39

Acceleration

这是一个可以记录加速度,角速度,磁场和GPS坐标的程序
Java
1
star
40

PCB_smartFish

机器鱼PCB
HTML
1
star
41

http

这是一个http GET和POST的例子
Java
1
star
42

BluetoothCar

蓝牙车控制APP
Java
1
star
43

ND013

Jupyter Notebook
1
star
44

processing

processing
Processing
1
star
45

CountDown

HTML
1
star
46

RemoteFISH

RemoteFISH app
Java
1
star
47

scaning

这是一个可以通过扫描抢来查询数据库的程序
C#
1
star
48

caffe-ios-sample

C++
1
star
49

creatBarCode

你可以用这个APP来创建条形码
Swift
1
star
50

Data-Structure

C++
1
star
51

macOS_smi

macOS_smi
Makefile
1
star
52

smartOffice

智能坐垫上位机
C#
1
star
53

smartparking-iOS

smartparking-iOS端
Swift
1
star
54

Acceleration-android

Java
1
star
55

creatBarCode-win

你可以使用此软件来创建条形码
C#
1
star