只需幾個步驟即可將擁抱臉部模型部署到 AWS Lambda
是否曾經想將 Hugging Face 模型部署到 AWS Lambda,但卻被容器建置、冷啟動和模型快取所困擾?以下是如何使用 Scaffoldly 在 5 分鐘內完成此操作。
長話短說
-
在 AWS 中建立名為 .cache 的 EFS 檔案系統:
- 前往 AWS EFS 控制台
- 點選「建立檔案系統」
- 將其命名為.cache
- 選擇任意 VPC(Scaffoldly 會處理剩下的事情!)
-
從 python-huggingface 分支建立您的應用程式:
-
部署它:
就是這樣!您將獲得在 Lambda 上運行的 Hugging Face 模型(以 openai-community/gpt2 為例),並配有適當的快取和容器部署。
專業提示:對於 EFS 設置,您可以將其自訂為突發模式下的單一 AZ,以進一步節省成本。 Scaffoldly 會將 Lambda 函數與 EFS 的 VPC、子網路和安全群組進行配對。
✨ 查看現場示範和範例程式碼!
問題
將機器學習模型部署到 AWS Lambda 傳統上涉及:
- 建置與管理 Docker 容器
- 弄清楚模型快取和儲存
- 處理 Lambda 的大小限制
- 管理冷啟動
- 設定 API 端點
當您只想為模型提供服務時,需要進行大量基礎設施工作!
解決方案
Scaffoldly 透過一個簡單的設定檔來處理所有這些複雜性。這是一個提供 Hugging Face 模型的完整應用程式(以 openai-community/gpt2 為例):
它是如何運作的
Scaffoldly 在幕後做了一些聰明的事情:
-
智慧貨櫃建築:
- 自動建立針對 Lambda 最佳化的 Docker 容器
- 處理所有 Python 依賴項,包括 PyTorch
- 無需編寫任何 Docker 指令即可推送至 ECR
-
高效率的模型處理:
- 使用 Amazon EFS 快取模型檔案
- 部署後預下載模型以加速冷啟動
- 在 Lambda 中自動掛載快取
-
Lambda 就緒設定:
- Rus 建立一個合適的 WSGI 伺服器(gunicorn)
- 建立公用 Lambda 函數 URL
- 代理函數 URL 請求gunicorn
- 管理 IAM 角色與權限
部署是什麼樣的
這是我在此範例中運行的 npx 腳手架部署命令的輸出:
現實世界的性能和成本
✅ 成本:AWS Lambda、ECR 和 EFS 約 0.20 美元/天
✅ 冷啟動:第一次請求約 20 秒(模型載入)
✅ 熱烈請求:5-20秒(基於CPU的推理)
雖然此設定使用 CPU 推理(比 GPU 慢),但這是一種試驗 ML 模型或服務低流量端點的極其經濟高效的方法。
其他型號客製
想要使用不同的模型嗎?只要更新兩個檔案:
- 更改app.py中的模型:
- 更新scaffoldly.json中的下載:
使用私人或門控模型
Scaffoldly 透過 HF_TOKEN 環境變數支援私有和門控模型。您可以透過多種方式新增 Hugging Face 令牌:
- 本地開發:新增到您的 shell 設定檔(.bashrc、.zprofile 等):
- CI/CD:新增為 GitHub Actions Secret:
令牌將自動用於下載和存取您的私人或門控模型。
CI/CD 獎金
Scaffoldly 甚至產生用於自動部署的 GitHub Action:
自己嘗試一下
完整的範例可以在 GitHub 上找到:
腳手架/腳手架範例#python-huggingface
您可以透過執行以下命令來建立自己的範例副本:
您可以看到它正在即時運行(儘管由於 CPU 推斷,響應可能會很慢):
現場示範
接下來是什麼?
- 嘗試部署不同的擁抱臉模型
- 加入 Discord 上的 Scaffoldly 社群
- 查看其他範例
- 如果您覺得這有用,請為我們的程式碼庫加星標!
- 鷹架工具鏈
- Scaffoldly 範例儲存庫
許可證
Scaffoldly 是開源的,歡迎社群貢獻。
- 這些範例已獲得 Apache-2.0 授權的許可。
- 鷹架工具鏈已取得 FSL-1.1-Apache-2.0 授權。
您還想在 AWS Lambda 中運行哪些其他模型?請在評論中告訴我!
以上是只需幾個步驟即可將擁抱臉部模型部署到 AWS Lambda的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

使用FiddlerEverywhere進行中間人讀取時如何避免被檢測到當你使用FiddlerEverywhere...

如何在10小時內教計算機小白編程基礎?如果你只有10個小時來教計算機小白一些編程知識,你會選擇教些什麼�...

攻克Investing.com的反爬蟲策略許多人嘗試爬取Investing.com(https://cn.investing.com/news/latest-news)的新聞數據時,常常�...

Python3.6環境下加載pickle文件報錯:ModuleNotFoundError:Nomodulenamed...

使用Scapy爬蟲時管道文件無法寫入的原因探討在學習和使用Scapy爬蟲進行數據持久化存儲時,可能會遇到管道文�...
