这个应该属于ChatGLM插件的配套问题吧,所以我发到求插件这个区了。
是这样的,我看群里有大佬做了一个可以连接ChatGLM的blockly,于是心血来潮,于是跟着做了一个,如图:
我用的这个包是秋叶的懒人包,可能是因为没有支持api功能,也有可能是其他原因:
我这边插件一直404
而使用api功能似乎需要一个api.py文件和一些配置环境。
如
'''
使用之前记得安装一下flask库
cmd输入pip install flask -i https://pypi.tuna.tsinghua.edu.cn/simple
把bat文件里的webui.py改成这个文件名就可以用了
'''
import os
import platform
from transformers import AutoTokenizer, AutoModel
from options import parser
from flask import Flask, request
cmd_opts = parser.parse_args()
tokenizer = AutoTokenizer.from_pretrained(cmd_opts.model_path, trust_remote_code=True)
model = AutoModel.from_pretrained(cmd_opts.model_path, trust_remote_code=True)
def prepare_model():
global model
if cmd_opts.cpu:
model = model.float()
else:
if cmd_opts.precision == "fp16":
model = model.half().cuda()
elif cmd_opts.precision == "int4":
model = model.half().quantize(4).cuda()
elif cmd_opts.precision == "int8":
model = model.half().quantize(8).cuda()
model = model.eval()
prepare_model()
model = model.eval()
preset = []
port = 14436
os_name = platform.system()
app = Flask(__name__)
history = {}
@app.route('/chatglm', methods=["GET"])
def delete_msg():
global history
query = request.args.get('msg')
usrid = request.args.get('usrid')
if query == None:
return '请提供内容'
if usrid == None:
return '请提供用户id'
if not usrid in history:
history[usrid] = preset
print(f"usrid:{usrid},content:{query}")
if query == "clear":
history[usrid] = preset
print(f"usrid:{usrid},清空历史")
return 'success'
response, history[usrid] = model.chat(tokenizer, query, history=history[usrid])
print(f"ChatGLM-6B:{response}")
return response
if __name__ == '__main__':
print(f"欢迎使用 ChatGLM-6B API,可通过发送GET请求到http://127.0.0.1:{port}/chatglm来调用。请求参数:msg、usrid。msg为用户消息内容,usrid用于区分不同用户。msg为clear时可清空当前用户历史记录。\n例如:http://127.0.0.1:{port}/chatglm?msg=你好&usrid=1。")
app.run(host='127.0.0.1', port=port)
但是我在github上找不到该仓库,找了b站上的教程也几乎没有涉及到开启api的环节,我本身也没有办法让我本地的ChatGLM开启api功能,所以…
有没有大佬直接发一个配置好的压缩包给我,我不想努力了,5555
Ps:听说42已经在做ChatGLM AI插件插件了,到时有没有办法可以连接到AUTODL
上的ChatGLM呢,但我autodl的地址是类似于https://a261615e121124483b.gradio.live/chatglm? 这种,不知道能不能也连到koishi上