使用ACK Serverless容器化部署大語言模型FastChat

核心概念

  • 阿里云ACK Serverless:是一種基于 Kubernetes 的無服務器容器服務。用戶無需管理底層節點和服務器,即可快速部署容器化應用,并根據實際使用的 CPU 和內存資源按需付費,只專注于應用本身而非基礎設施管理。

  • FastChat(聊天機器人):https://github.com/lm-sys/FastChat

  • 使用到的技術:容器服務ACK Serveless Pro 集群、彈性容器實例(Elastic Container Instance, ECI)、NAT網關、負載均衡CLB。

一、創建ACK Serveless Pro版集群

1、登錄容器服務管理控制臺,在集群列表頁面單擊創建集群。

?

2、在創建集群頁面的集群配置中,單擊ACK Serverless 集群,根據如下參數說明完成相關配置,其他配置項保持默認值,然后單擊下一步:組件配置。

配置必要參數說明
參數說明舉例
集群名稱填寫集群的名稱。fastchat-demo
集群規格選擇集群規格,支持 Pro 版和標準版。Pro版
地域選擇集群所在的地域。建議選擇華北2(北京)地域。

?華北2(北京)

API Server 訪問ACK Serverless 默認為 API Server 創建一個內網 SLB 實例。設置是否開放使用 EIP 暴露 API Server。選中

?

?

3、在組件配置頁面,根據實際需要配置日志服務。

?

4、完成購買。

二、創建FastChat應用

1、在集群列表頁面,單擊集群名稱fastchat-demo進入集群信息頁面,然后在左側導航欄,選擇工作負載 > 無狀態

?

2、在無狀態頁面,單擊使用YAML創建資源。

?

3、在示例模板下拉列表中,選擇自定義,將如下 fastchat 應用的 YAML 示例粘貼至模板,然后單擊創建。

YAML文件定義了兩個Kubernetes資源對象:一個Deployment和一個Service,用于部署FastChat應用并暴露服務。


Deployment配置詳解

API版本與類型

  • apiVersion: apps/v1:使用Kubernetes Apps API穩定版本
  • kind: Deployment:聲明為無狀態應用部署資源

元數據

  • labels.app: fastchat:標記應用為FastChat組件
  • name/namespace:部署名為fastchat,位于default命名空間

副本與選擇器

  • replicas: 1:僅運行1個Pod實例
  • selector.matchLabels:通過app: fastchat標簽選擇管理Pod

Pod模板

  • 特殊標簽alibabacloud.com/eci: "true":啟用阿里云彈性容器實例(ECI)
  • 關鍵注解:
    • k8s.aliyun.com/eci-use-specs:指定ECI可選的實例規格(GN6i/GN5等GPU機型)
    • k8s.aliyun.com/eci-extra-ephemeral-storage:附加100Gi臨時存儲

容器配置

  • 啟動命令:通過sh -c執行容器內的/root/webui.sh腳本
  • 鏡像地址:使用阿里云上海 registry 的fastchat:v1.1.0鏡像
  • 端口暴露:容器監聽7860 TCP端口
  • 就緒探針:通過TCP檢查7860端口,初始延遲5秒,超時1秒
  • 資源需求:
    • 請求8核CPU和16Gi內存
    • 限制使用1塊NVIDIA GPU

Service配置詳解

基礎信息

  • type: LoadBalancer:創建云廠商的負載均衡器
  • 注解配置:
    • 負載均衡器類型為公網(internet
    • 按量付費模式(PayByCLCU

流量路由

  • 端口映射:將LB的7860端口轉發到Pod的7860端口
  • externalTrafficPolicy: Local:保留客戶端源IP
  • 選擇器:通過app: fastchat標簽關聯Deployment創建的Pod
apiVersion: apps/v1
kind: Deployment
metadata:labels:app: fastchatname: fastchatnamespace: default
spec:replicas: 1selector:matchLabels:app: fastchattemplate:metadata:labels:app: fastchatalibabacloud.com/eci: "true"?annotations:k8s.aliyun.com/eci-use-specs: ecs.gn6i-c8g1.2xlarge,ecs.gn5-c8g1.2xlarge,ecs.gn6v-c8g1.8xlarge,ecs.gn6i-c16g1.4xlargek8s.aliyun.com/eci-extra-ephemeral-storage: 100Gispec:dnsPolicy: Defaultcontainers:- command:- sh- -c?- "/root/webui.sh"image: yunqi-registry.cn-shanghai.cr.aliyuncs.com/lab/fastchat:v1.1.0imagePullPolicy: IfNotPresentname: fastchatports:- containerPort: 7860protocol: TCPreadinessProbe:failureThreshold: 3initialDelaySeconds: 5periodSeconds: 10successThreshold: 1tcpSocket:port: 7860timeoutSeconds: 1resources:requests:cpu: "8"memory: 16Gilimits:nvidia.com/gpu: 1
---
apiVersion: v1
kind: Service
metadata:annotations:service.beta.kubernetes.io/alibaba-cloud-loadbalancer-address-type: internetservice.beta.kubernetes.io/alibaba-cloud-loadbalancer-instance-charge-type: PayByCLCUname: fastchatnamespace: default
spec:externalTrafficPolicy: Localports:- port: 7860protocol: TCPtargetPort: 7860selector:app: fastchattype: LoadBalancer

?

4、在創建頁面下方,單擊fastchat,查看應用創建進度。

?

查看創建進度。

?
三、訪問FastChat服務

注意事項

  • fastchat-t5-3b-v1.0模型僅支持日常對話,不支持代碼生成等高級功能。
  • 僅支持英文。


1、在左側導航欄,選擇網絡>服務,查看您創建的服務fastchat的外部端點,例如8.140.XX.XX:7860

?
2、在您的本機瀏覽器中輸入http://8.140.XX.XX:7860,訪問和體驗fastchat應用。
通過輸入問題,然后單擊Send,即可體驗大語言模型FastChat的聊天功能。

?

四、學習總結

[用戶請求]  
│  
├─ [CLB (公網負載均衡)]  
│   │  
│   ├─ 路由到 [FastChat API Pod (ECI實例)]  
│   └─ 路由到 [Web UI Pod (ECI實例)]  
│  
├─ [NAT網關]  
│   │  
│   └─ 提供 [模型推理 Pod (ECI實例)] 訪問公網的能力(如下載模型權重)  
│  
└─ [ACK Serverless集群]  │  ├─ 自動彈性伸縮 ECI 實例組  │   ├─ FastChat API 服務  │   ├─ Web UI 服務  │   └─ 模型推理 Worker  └─ 掛載 NAS/OSS 存儲(持久化模型文件)  

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/91898.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/91898.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/91898.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

最新Android Studio漢化教程--兼容插件包

[ ] 軟件版本:Android Studio Meerkat Feature Drop | 2024.3.2 Build #AI-243.25659.59.2432.13423653, built on April 30, 2025 Runtime version: 21.0.613368085-b895.109 amd64 VM: OpenJDK 64-Bit Server VM by JetBrains s.r.o. Toolkit: sun.awt.windows.WT…

Unity_數據持久化_IXmlSerializable接口

Unity數據持久化 三、XML數據持久化 3.5 IXmlSerializable接口 3.5.1 IXmlSerializable接口基礎概念 什么是IXmlSerializable接口: IXmlSerializable 是.NET框架提供的一個接口,允許類自定義XML序列化和反序列化的過程。當默認的XML序列化行為無法滿足需…

如何快速解決PDF解密新方法?

有時從網絡下載的PDF文檔會帶有加密限制,導致無法編輯、復制或打印。它的體積僅約10MB,無需安裝,解壓即用。遇到受限制的文件時,只需將其拖入界面,選擇是否覆蓋原文件,點擊執行,瞬間完成解密。「…

譯|數據驅動智慧供應鏈的構成要素與關聯思考

數據質量,通過識別關鍵決策和瓶頸構建信息供應鏈。該模型適用于優化庫存管理、自動化物流、預測需求、實現產品全生命周期追溯及應對突發風險。例如,通過AI機器人自動管理倉庫,或利用數字孿生模擬和優化全球采購網絡。 匯總來自三篇文章&…

OS21.【Linux】環境變量

目錄 1.與環境變量有關的實驗 A.對比命令和自制程序的運行 為什么.像ls、pwd這樣的命令運行是不需要加路徑? 執行自制程序而不加路徑的方法,看看PATH環境變量 方法1:將自制程序移動到系統的搜索路徑下 方法2:臨時修改PATH環境變量 B.查看系統中所有環境變量 解釋幾個常…

加密流量論文復現:《Detecting DNS over HTTPS based data exfiltration》(上)

本文將以我個人的理解去閱讀該篇流量加密論文,并在下一篇盡力對其中的實驗部分進行復現。話不多說,先從論文開始著手。 內容介紹 傳統的DNS(Domain Name System)協議是以明文傳輸的。DNS作為互聯網的基礎設施,最初設計時主要考慮的是功能和效…

Apache RocketMQ 中Message (消息)的核心概念

好的,我們來深入理解一下 Apache RocketMQ 中 Message (消息) 這個核心概念。這份文檔詳細闡述了消息的定義、在模型中的位置、內部屬性、約束和使用建議。 你可以將 Message 看作是 RocketMQ 系統中數據傳輸和處理的最小原子單位。它承載了業務數據,并附…

C 語言問題

1. C語言中 union 與 struct 的區別類型structunion內存分配機制編譯器為每個成員?獨立分配內存空間,總內存大小 所有成員大小之和(考慮內存對齊)所有成員?共享同一段內存空間,總內存大小 ?最大成員的大小?數據存儲特性1. 所…

[ LeetCode優選算法專題一雙指針-----盛最多的水]

1.題目鏈接 LeetCode盛最多的水 2.題目描述 3.題目解析 問題本質分析 "盛最多水的容器" 問題可以抽象為:在坐標軸上有 n 條垂直線段,第 i 條線段的兩個端點分別是 (i, 0) 和 (i, height [i])。找到兩條線段,使得它們與 x 軸共同…

舊筆記本電腦如何安裝飛牛OS

01引言隨著電子產品的更新換代,我們有很多的電子產品已經滿足不了現在的工作需求和日常娛樂了,比如:用了很久厚重筆記本電腦放在現在辦公也是有點吃力了,我們現在換新了舊的還不想放在那里吃灰,怎么辦呢?我…

某金服Java面試終極指南:25題完整解析與場景化方案

涵蓋分布式鎖、緩存、事務、高并發等金融系統核心考點,附解決方案與抗風險設計一、分布式鎖深度解決方案 1. Redis分布式鎖完整實現 // 原子加鎖 防死鎖 String uuid UUID.randomUUID().toString(); Boolean locked redisTemplate.opsForValue().setIfAbsent(&qu…

MATLAB 2025a的下載以及安裝,安裝X310的測試附加功能(附加安裝包)

首先將安裝包下載到本地中之后解壓該文件夾,打開文件發現有兩個文件,其中crach文件夾中是破解matlab所用到的文件。而另一個壓縮包就是需要安裝的文件,要先解壓在安裝。在安裝之前將網絡斷開,不然可能破解不成功,先進入…

Scala實用編程(附電子書資料)

概述 Scala 是一種多范式編程語言,結合了面向對象編程(OOP)和函數式編程(FP)的特性電子書資料:https://pan.quark.cn/s/88737d4a680d Scala 的核心特點多范式融合 既支持面向對象編程(類、繼承、…

數據結構(8)雙向鏈表

目錄 一、概念與結構 二、雙向鏈表的實現 1、初始化 2、尾插 3、頭插 4、尾刪 5、頭刪 6、在指定位置之后插入結點 7、刪除指定位置的結點 三、完整參考代碼 一、概念與結構 這里的雙向鏈表是指帶頭的的雙向循環鏈表,這里的“帶頭”和之前所說的“頭結…

【DeepSeek-R1 】分詞系統架構解析

文章目錄 ??前言 ?? 1. SentencePiece Unigram 的核心原理 1.1 算法基礎框架 1.2 核心數學原理 1.3 與BPE/WordPiece的對比 ?? 2. DeepSeek-R1 分詞器實現細節 2.1 詞表結構設計 2.2 關鍵特性實現 ?? 3. 性能優化關鍵技術 3.1 加速策略對比 3.2 編碼過程偽代碼 ?? 4.…

Linux自主實現shell

以下是在Linux操作系統 centos7版本下實現的shell &#xff0c;該shell具備bash的基礎功能&#xff0c;無上下鍵輸入歷史命令功能&#xff0c;刪除字符或命令時按住Ctrl Back #include<stdio.h> #include<stdlib.h> #include<string.h> #include<unistd.…

vue+elementUI上傳圖片至七牛云組件封裝及循環使用

1.效果&#xff08;解決循環組件賦值問題&#xff09; 廢話不多說直接上代碼 2.下載七牛云依賴 npm install qiniu-js # 或者使用 yarn yarn add qiniu-js3.在vue組件中引入 import * as qiniu from qiniu-js4.在components文件夾下創建UploadImg1/uploadImg.vue組件 <templ…

2025年6月電子學會青少年軟件編程(C語言)等級考試試卷(一級)

答案和更多內容請查看網站&#xff1a;【試卷中心 -----> 電子學會 ----> C/C ----> 一級】 網站鏈接 青少年軟件編程歷年真題模擬題實時更新 一、編程題 第 1 題 希望如光 題目描述 在充滿挑戰的生活中&#xff0c;希望往往是支撐人們穿越黑暗的核心力量。這…

拒絕復雜,AI圖表制作簡單化

在信息爆炸的時代&#xff0c;數據可視化已成為傳遞信息的核心手段。無論是職場匯報中的業績分析&#xff0c;還是學術研究里的實驗數據呈現&#xff0c;一張清晰直觀的圖表往往能勝過千言萬語。而 AI 技術的介入&#xff0c;徹底改變了圖表制作的傳統模式 —— 它不僅讓零基礎…

easypoi生成多個sheet的動態表頭的實現

在使用 EasyPOI 導出 Excel 時&#xff0c;生成多個 Sheet 且每個 Sheet 的表頭是動態的&#xff08;即每個 Sheet 的列數和列名可能不同&#xff09;&#xff0c;可以通過如下方式實現&#xff1a;? 實現原理簡述 使用 Workbook workbook ExcelExportUtil.exportExcel(expor…