自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在趨動(dòng)云上使用xinference部署大模型 原創(chuàng)

發(fā)布于 2025-1-7 07:52
瀏覽
0收藏

前言

本文將介紹如何在趨動(dòng)云平臺(tái)上使用xinference部署對(duì)話模型、向量化模型以及多模態(tài)模型。

xinference簡(jiǎn)介

xinference官網(wǎng)

官網(wǎng)說(shuō)明:https://inference.readthedocs.io/zh-cn/latest/getting_started/installation.html

xinference可以部署的模型類別

  • chat對(duì)話模型
  • embedding向量化模型
  • rerank模型
  • vl-chat多模態(tài)模型

環(huán)境準(zhǔn)備

選擇鏡像

  1. 選擇鏡像環(huán)境在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

安裝xinference

xinference支持的引擎有:

  • transformers
  • vllm
  • llama.cpp
  • SGlong引擎 .....

本篇文章,我們嘗試使用transformers引擎,部署Qwen2-0.5B-Instruct對(duì)話模型。

# 安裝transformers引擎
pip install "xinference[transformers]"

# 安裝sentence-transformers
pip install sentence-transformers

部署chat對(duì)話模型

下載模型

切換至??/gemini/code??目錄下,下載模型:

git lfs install
git clone https://www.modelscope.cn/Qwen/Qwen2.5-0.5B-Instruct.git

注意事項(xiàng): 此處也可以在啟動(dòng)項(xiàng)目時(shí),選擇模型加載,在趨動(dòng)云的公共模型中選擇??Qwen2.5-0.5B-Instruct??模型。

啟動(dòng)xinference

1. 在命令行中啟動(dòng)??supervisor??? 進(jìn)程:??xinference-supervisor -H 0.0.0.0??運(yùn)行結(jié)果:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

2. 新建一個(gè)terminal,啟動(dòng)??Worker??? 進(jìn)程:??xinference-worker -e http://127.0.0.1:9997 -H 0.0.0.0??運(yùn)行結(jié)果:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

此處的??9997??應(yīng)該與supervisor啟動(dòng)時(shí)指定的端口一致。

端口映射

在趨動(dòng)云控制臺(tái)的右側(cè)"端口",添加端口映射如下:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

啟動(dòng)對(duì)話模型

瀏覽器訪問(wèn)http://direct.virtaicloud.com:40336

??http://direct.virtaicloud.com:40336??是上一步端口映射后,趨動(dòng)云提供的外網(wǎng)訪問(wèn)地址。

在??language models???選擇??chat???模型,并搜索??qwen2.5??模型

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

使用pwd命令獲取趨動(dòng)云上已下載Qwen模型的的絕對(duì)路徑

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

配置模型必選參數(shù)

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

注意事項(xiàng): 因?yàn)槲覀兿螺d的模型為Qwen2.5-0.5B-Instruct,所以??Model size???為??0_5??,此處應(yīng)根據(jù)實(shí)際情況選擇。

配置模型路徑

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

注意事項(xiàng):

  • Model path為上述第3步中獲取的模型在趨動(dòng)云上的絕對(duì)路徑。
  • Model UID用于后續(xù)調(diào)用使用,此處我們配置為??Qwen2.5-0.5B-Instruct??。如果不配置的話,會(huì)使用默認(rèn)的Model UID,在后續(xù)調(diào)用時(shí)注意調(diào)用代碼中的傳參內(nèi)容。

點(diǎn)擊啟動(dòng),稍后片刻,頁(yè)面會(huì)顯示啟動(dòng)成功后的內(nèi)容。

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

調(diào)用驗(yàn)證

from openai importOpenAI
openai_api_key ="EMPTY"
openai_api_base ="http://direct.virtaicloud.com:40336/v1"

client =OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

chat_response = client.chat.completions.create(
    model="Qwen2.5-0.5B-Instruct",
    messages=[
{"role":"system","content":"你是一個(gè)很有用的助手。"},
{"role":"user","content":"中華人民共和國(guó)的首都是哪里?"},
]
)
print("Chat response:", chat_response)

運(yùn)行結(jié)果:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

注意事項(xiàng):

  • 示例中,??openai_api_base??需要配置映射端口后的地址,讀者需要根據(jù)實(shí)際情況修改。
  • 示例中,??model="Qwen2.5-0.5B-Instruct"???要與在??xinference???中配置??Model UID??的內(nèi)容一致。

部署chat對(duì)話模型(微調(diào)訓(xùn)練過(guò)的)

下載模型

此處,我們?cè)谮厔?dòng)云啟動(dòng)時(shí),選擇曾經(jīng)微調(diào)的一個(gè)醫(yī)療大模型??Qwen2-7B-final??并加載。

備注說(shuō)明: 該模型是之前我微調(diào)過(guò)的一個(gè)醫(yī)療大模型,具體微調(diào)過(guò)程請(qǐng)見(jiàn)【課程總結(jié)】day24(上):大模型三階段訓(xùn)練方法(LLaMa Factory)。

啟動(dòng)模型

  1. 在Launch頁(yè)面,選擇??chat???并搜索??qwen2???,選擇??qwen2-instruct??。

 2. 配置模型必選參數(shù):

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

  1. 配置模型路徑:

注意事項(xiàng):

  • 該模型是基于??Qwen2-7B-instruct???微調(diào)的,所以??Model size???選擇??7_0??。
  • 該模型在趨動(dòng)云上的絕對(duì)路徑為:??/gemini/pretrain/Qwen2-7B-final??。
  1. 點(diǎn)擊啟動(dòng),稍后片刻,頁(yè)面會(huì)顯示啟動(dòng)成功后的內(nèi)容。

調(diào)用驗(yàn)證

from openai importOpenAI
openai_api_key ="EMPTY"
openai_api_base ="http://direct.virtaicloud.com:40336/v1"

client =OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

chat_response = client.chat.completions.create(
    model="qwen2-instruct",
    messages=[
{"role":"system","content":"你是一個(gè)很有用的助手。"},
{"role":"user","content":"我最近失眠比較厲害,請(qǐng)問(wèn)應(yīng)該如何診治?"},
]
)
print("Chat response:", chat_response)

運(yùn)行結(jié)果:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

注意事項(xiàng): 示例中, ??model="qwen2-instruct"???要與在??xinference???中配置??Model UID??的內(nèi)容一致。

部署embeddign模型

  • 前置步驟與部署chat模型的操作一致,只是配置Model UID和Model Path時(shí) 略有不同。

部署vl-chat多模態(tài)模型

前置步驟與部署chat模型的操作一致,此處不再贅述。

下載模型

此處,我們?cè)谮厔?dòng)云啟動(dòng)時(shí),在模型廣場(chǎng)搜索??Qwen-VL-chat??并加載。

備注說(shuō)明: 該模型是在趨動(dòng)云模型廣場(chǎng)搜索的一個(gè)Qwen的多模態(tài)大模型。

啟動(dòng)模型

  1. 在Launch頁(yè)面,選擇??vl-chat???并搜索??qwen??。在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

2. 配置模型必選參數(shù):

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

3. 配置模型路徑:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

注意事項(xiàng): 該模型在趨動(dòng)云上的絕對(duì)路徑為:??/gemini/pretrain2/Qwen-VL-Chat??。

  1. 點(diǎn)擊啟動(dòng),稍后片刻,頁(yè)面會(huì)顯示啟動(dòng)成功后的內(nèi)容。

調(diào)用驗(yàn)證

from openai importOpenAI
import base64

# 配置OpenAI客戶端
openai_api_key ="EMPTY"
openai_api_base ="http://direct.virtaicloud.com:40336/v1"# 請(qǐng)根據(jù)實(shí)際端口映射地址修改

client =OpenAI(
    api_key=openai_api_key,
    base_url=openai_api_base,
)

def encode_image_to_base64(image_path):
"""將圖片轉(zhuǎn)換為base64編碼"""
withopen(image_path,"rb")as image_file:
return base64.b64encode(image_file.read()).decode('utf-8')

def chat_with_image(image_path, prompt):
"""與多模態(tài)模型對(duì)話"""
# 將圖片轉(zhuǎn)換為base64
    base64_image = encode_image_to_base64(image_path)


    messages=[
    {
     "role":"user",
     "content":[
        {"type":"text","text":prompt},
        {
          "type":"image_url",
          "image_url":{
          "url":f"data:image/png;base64,{base64_image}"
          }
        }
        ]
      }
    ]
# 調(diào)用模型
# try:

    response = client.chat.completions.create(
        model="qwen-vl-chat",# 使用部署的多模態(tài)模型名稱
        messages=messages,
        max_tokens=1024,
        temperature=0.7,
        response_format={"type":"text"}# 指定響應(yīng)格式為文本
)
return response.choices[0].message.content
# except Exception as e:
#     return f"調(diào)用出錯(cuò): {str(e)}"

if __name__ =="__main__":
# 測(cè)試調(diào)用
    image_path ="./腦部CT.png"# 替換為實(shí)際的圖片路徑
    prompt ="這張圖片中有什么內(nèi)容?請(qǐng)?jiān)敿?xì)描述。"

    result = chat_with_image(image_path, prompt)
print("模型回復(fù):", result)

圖片:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

運(yùn)行結(jié)果:

在趨動(dòng)云上使用xinference部署大模型-AI.x社區(qū)

常見(jiàn)問(wèn)題

問(wèn)題1:Qwen2-vl-chat模型部署后,調(diào)用時(shí)報(bào)錯(cuò):??ValueError: No chat template is set for this processor.???。 問(wèn)題原因:查看Xinference的日志,提示不支持??Qwen2-vl??模型。


本文轉(zhuǎn)載自公眾號(hào)一起AI技術(shù) 作者:熱情的Dongming

原文鏈接:??https://mp.weixin.qq.com/s/KdcQBy4j6HgjGbPlIxT5CQ??

?著作權(quán)歸作者所有,如需轉(zhuǎn)載,請(qǐng)注明出處,否則將追究法律責(zé)任
標(biāo)簽
已于2025-1-7 09:50:38修改
收藏
回復(fù)
舉報(bào)
回復(fù)
相關(guān)推薦