【工具篇】MLU运行XInference部署手册

ops/2024/10/18 23:48:15/

文章目录

  • 前言
  • 一、平台环境准备
  • 二、代码下载
  • 三、安装部署
    • 1.正常pip 安装
  • 四、运行结果展示
    • 1.如果界面404或没有东西请这样做
    • 2.运行效果


前言

Xorbits Inference(Xinference)是一个功能强大、用途广泛的库,旨在为语言、语音识别和多模态模型提供服务。借助Xorbits Inference,您只需使用一个命令即可轻松部署和维护您的或最先进的内置模型。无论您是研究人员、开发人员还是数据科学家,Xorbits Inference都能让您充分发挥尖端人工智能模型的潜力。
主要特点:
简化模型服务:简化服务大型语言、语音识别和多模态模型的过程。您可以使用单个命令设置和部署用于实验和生产的模型。
⚡️ 最先进的模型:使用单个命令尝试尖端的内置模型。推理提供了对最先进的开源模型的访问!
🖥 异构硬件利用率:使用ggml充分利用您的硬件资源。Xorbits推理智能地利用异构硬件,包括GPU和CPU,来加速您的模型推理任务。
⚙️ 灵活的API和接口:提供多个与模型交互的接口,支持OpenAI兼容的RESTful API(包括函数调用API)、RPC、CLI和WebUI,实现无缝的模型管理和交互。
🌐 分布式部署:在分布式部署场景中使用Excel,允许在多个设备或机器之间无缝分布模型推理。
🔌 与第三方库的内置集成:Xorbits Inference与流行的第三方库无缝集成,包括LangChain、LlamaIdex、Dify和Chatbox。

一、平台环境准备

卡选择:MLU370系列
驱动选择:5.10.29以上
镜像选择:SDK版本>v24.0 pytorch >= 2.1
本次操作镜像如下:
cambricon_pytorch_container:v24.09-torch2.4.0-catch1.22.2-ubuntu22.04-py310

二、代码下载

git clone https://github.com/xorbitsai/inference

三、安装部署

提示:在这里我们回顾一下之前的章节,在章节中我们提到新版的pytorch镜像只需要使用2行代码就能运行,但是在这里我们不推荐这个方法!!!因为inference是一个部署得工具包我们需要直接通过命令行进行启动,所以我们这边采取转换的方法

#转mlu
python /torch/src/torch_mlu/tools/torch_gpu2mlu/torch_gpu2mlu.py -i ./inference/
会在同级目录下生成一个inference_mlu得文件

那么这里问到了,什么时候适合用下面两行代码呢?

import torch_mlu
from torch_mlu.utils.model_transfer import transfer

这两行代码适合我们在运行python文件的时候加在头文件处,如果像inference以及下一章节的langchain-chatchat新版本,建议先转换在做操作哦!

回归正题,我们继续!!!

1.正常pip 安装

pip install gradio==4.42.0
pip install -e ./inference_mlu/

四、运行结果展示

运行命令:

xinference-local

会生成一个端口直接点击就会有个UI界面,如果你报错了请往下看

1.如果界面404或没有东西请这样做

我们提供两种修复方法:

#1先卸载重装
pip uninstall xinference
pip install -e ./inference_mlu/
#2启动
xinference-local#若上述方法不行,且/inference_mlu/xinference/web/ui目录下不生成有内容的build和node_modules的前端文件夹,则在/web/ui目录下使用手动命令生成
apt install npm
npm install
npm run build
#此时仍有可能构建项目失败,提示缺失react-scripts,需要运行下面的命令安装
npm install react-scripts
#重新启动即可,注意使用vscode远程ssh连接,直接在平台网页运行不可以
#webui界面如下

2.运行效果

在这里插入图片描述
加载模型
寻找指定模型选择模型参数进行加载
在这里插入图片描述
左侧run model中对已加载模型进行启动,gui进行推理
在这里插入图片描述
在这里插入图片描述
这里仅展示qwen2-vl模型,我们也测试了qwen2及知识库模型,并接入到新版本的langchain-chathchat中效果都是很棒的,下期想看什么,请留言或私信,谢谢!!


http://www.ppmy.cn/ops/126587.html

相关文章

如何将本地磁盘镜像包部署到docker中(以mysql5_7.tar.gz为例)

1.复制文件到宿主机 2.找到对应目录,docker load docker images就可以看到该镜像啦

尚硅谷rabbitmq2024 集群篇 流式队列 第54节 答疑

二、负载均衡 在文件/etc/haproxy/haproxy.cfg末尾追加: frontend rabbitmq_stream_frontendbind 192.168.200.100:33333mode tcp default_backend rabbitmg_stream_backend backend rabbitmg_stream_backendmode tcp balance roundrobin server rabbitmg1 192.168.200.100:555…

ArcGIS 最新底图服务地址

ArcGIS 最新底图服务地址 说明 先上地址: 地形图: https://services.arcgisonline.com/arcgis/rest/services/Elevation/World_Hillshade/MapServer深色地形图:https://services.arcgisonline.com/arcgis/rest/services/Elevation/World_Hi…

Kotlin基本语法

kotlin基本语法官网 1. 变量 ‘val’ 声明 仅被赋值一次的变量,初始化后不能重新赋值。 ‘var’ 声明 可以重新分配的变量,可以在初始化后更改其值。 Kotlin 支持类型推断,可以省略变量名后的类型。 val x: Int 5 var x: Int 5 val x 5变量只有在…

OpenCVSharp实现文档扫描功能详解

文章目录 简介1. 图像读取和预处理2. 查找轮廓3. 轮廓逼近与验证4. 透视变换5. 保存与显示结果总结简介 实现文档扫描功能是一个涉及多个处理步骤的过程,通过OpenCVSharp可以高效完成。以下是实现文档扫描的五个主要步骤,每个步骤包含详细的解释及示例代码。 1. 图像读取和预…

基于微博评论的自然语言处理情感分析

本文将介绍一个基于自然语言处理技术对微博评论文本(simplifyweibo_4_moods.csv)进行情感分析的项目。 一、项目概述 本文将介绍一个基于自然语言处理技术对微博评论文本(simplifyweibo_4_moods.csv)进行情感分析的项目。 本项目…

CesiumJS 案例 P4:Entity 点击事件(圆点、矩形、三角形、多边形、折线、盒子、圆柱)

CesiumJS CesiumJS API&#xff1a;https://cesium.com/learn/cesiumjs/ref-doc/index.html CesiumJS 是一个开源的 JavaScript 库&#xff0c;它用于在网页中创建和控制 3D 地球仪&#xff08;地图&#xff09; 一、Entity 点击事件 - 圆点 <!DOCTYPE html> <html…

docker 容器启动详解

1.启动容器 示例 1&#xff1a;启动一个复杂的 Web 应用容器 docker run -d \ -p 8080:80 \ -v /data/webapp:/app \ -e APP_ENVproduction \ -e DB_HOSTdb.example.com \ -it \ --network my_network \ --name webapp_container \ --restart always \ --memory 1g \ --cpu-sh…