美文网首页
书生·浦语大模型实战营作业-第五课

书生·浦语大模型实战营作业-第五课

作者: 银河星尘 | 来源:发表于2024-02-19 09:20 被阅读0次

    LMDeploy 的量化和部署

    课程内容

    课程视频

    课程文档

    课程作业

    3.2.2 TurboMind 推理+命令行本地对话

    按笔记记录将模型转换完成后,尝试本地对话(Bash Local Chat),进行模型推理。

    执行命令如下。

    
    # Turbomind + Bash Local Chat
    
    lmdeploy chat turbomind ./workspace
    
    

    启动后就可以和它进行对话了,如下图所示。

    image.png

    输入后两次回车,退出时输入exit 回车两次即可。此时,Server 就是本地跑起来的模型(TurboMind),命令行可以看作是前端。

    3.2.3 TurboMind推理+API服务

    接下来尝试运用 lmdepoy 进行服务化。

    通过下面命令启动服务。

    
    # ApiServer+Turbomind  api_server => AsyncEngine => TurboMind
    
    lmdeploy serve api_server ./workspace \
    
        --server_name 0.0.0.0 \
    
        --server_port 23333 \
    
        --instance_num 64 \
    
        --tp 1
    
    

    上面的参数中 server_name 和 server_port 分别表示服务地址和端口,tp 参数我们之前已经提到过了,表示 Tensor 并行。还剩下一个 instance_num 参数,表示实例数,可以理解成 Batch 的大小。执行后如下图所示。

    image

    然后,我们可以新开一个窗口,执行下面的 Client 命令。如果使用官方机器,可以打开 vscode 的 Terminal,执行下面的命令。

    # ChatApiClient+ApiServer(注意是http协议,需要加http)
    lmdeploy serve api_client http://localhost:23333
    

    同样是在Client端提问


    image.png

    本地做一下 ssh 转发直接访问API Server的接口


    image.png

    这里一共提供了 4 个 HTTP 的接口,任何语言都可以对其进行调用。

    v1/chat/completions 接口:


    image.png

    请求结果如下。

    image

    3.2.4 网页 Demo 演示

    3.2.4.1 TurboMind 服务作为后端

    API Server 的启动和上一节一样,直接启动作为前端的 Gradio。

    
    # Gradio+ApiServer。必须先开启 Server,此时 Gradio 为 Client
    
    lmdeploy serve gradio http://0.0.0.0:23333 \
    
        --server_name 0.0.0.0 \
    
        --server_port 6006 \
    
        --restful_api True
    
    

    结果如下图所示。

    image
    3.2.4.2 TurboMind 推理作为后端

    Gradio 也可以直接和 TurboMind 连接,如下所示。

    
    # Gradio+Turbomind(local)
    
    lmdeploy serve gradio ./workspace
    
    

    直接启动 Gradio,此时没有 API Server,TurboMind 直接与 Gradio 通信。如下图所示。

    image.png

    相关文章

      网友评论

          本文标题:书生·浦语大模型实战营作业-第五课

          本文链接:https://www.haomeiwen.com/subject/knmmadtx.html