ChatGLM AI插件/求一个开启可以api的ChatGLM包

这个应该属于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上

2 个赞

男子汉大丈夫,支棱点,你要学会自己解决问题

2 个赞

你可以假扮成美少女,然后去求大佬帮忙

2 个赞

男子大丈夫,坚持不雌堕!

2 个赞

人格C说得对,比起雌堕,自己配环境这种辛苦算什么,放弃使用懒人包,自己自力更生。

3 个赞