華為雲應用編排,手把手教您完成pytorch代碼部署

2021-01-11 站長之家

背景介紹

PyTorch是由Facebook人工智慧研究院於 2017 年 1 月在github上開源的深度學習框架,一經開源就迅速吸引了人們的眼球。其歷史可以追溯至 2002 年使用Lua語言的Torch框架,並由其幕後團隊一手打造。PyTorch作為Torch框架的繼任者,並不僅僅只是移植代碼並提供接口,而是深入支持了Python,對大量模塊進行了重構,並新增了最先進的變量自動求導系統,成為時下最流行的動態圖框架。

在入門時,PyTorch提供了完整的文檔,並有著活躍的社區論壇,對於新手而言上手遇到的難關容易解決。更深入一些,在特性設計上,PyTorch對於抽象出的概念較少,易於理解,同時提供的API的設計理念與Torch一脈相承,符合人的一般思維,接口優雅。而框架最核心的性能方面,PyTorch的速度表現在許多評測中勝過TensorFlow和Keras等知名框架。

本文將以一個使用了pytorch的demo代碼pytorch-classify為例,通過華為雲上的容器服務一鍵式部署, 5 分鐘完成免費的雲上pytorch代碼的部署。

傳統部署方式

首先是準備環境。先有個伺服器,這臺伺服器需要能夠被外部訪問。而後在作業系統裡使用yum安裝需要的python(3.6.5)、pip、git,再通過pip等方式獲取到代碼需要的依賴(pytorch 0.4.1),準備好軟體依賴後檢查pytorch-classify代碼所需的各項環境配置是否滿足要求。而後通過git拉取版本代碼放入環境內,通過腳本運行起來。

在簡單環境下,這種部署方式是沒有任何問題的。但是由於真實環境複雜,事情並沒有那麼簡單,上面的每一步都可能會有問題,並且有些問題很難處理。比如說安裝軟體的時候,環境上已有2.7. 11 的python版本,並且已經為另外一個項目所使用,那麼此時的你並不一定有能力與魄力選擇將python版本升級並還能保證一切都是ok的。

本方法在複雜環境下部署時間上限與影響範圍極難估計,只適合簡單應用的部署。

華為雲上容器部署方式

容器依託作業系統提供的沙箱機制,能夠將應用及其運行環境直接打包為鏡像,一次打包多次運行。同時,依託於Kubernetes(k8s)等容器編排引擎,容器支持自動化部署以及大規模可伸縮的應用容器化管理,這些特性大大方便了應用的部署。K8s使應用系統變成了一系列應用相關的配置,簡單同時不易出錯,在部署大型應用系統的時候也有一戰之力。

一個應用系統一般會有多個應用相關的配置,雖然現在升級的時候只需要修改配置項,但是由人工逐項操作不免依然費時費力還容易出錯。此時,你需要華為雲的應用編排服務(AOS)。

在AOS中,一個應用系統對應一個堆棧,堆棧由模板加配置生成,只需要修改配置,其他一切由AOS負責。

依然以pytorch-classify這個應用為例,經過AOS設計器的設計,可以表示成上圖表示的應用系統。一切清清楚楚,所見即所得。

實操環節

由於傳統部署方式各種操作較為不便,沒有提供實操的步驟。下文提供的是華為雲上容器部署方式的操作指南,操作一遍之後即可得體會到AOS的便捷之處。

後文中AOS模板中包含了代碼,這種方式常見於開發環境,即代碼與環境分離,代碼的變動相較於環境而言較大的情況下。而在生產環境推薦直接將代碼打包進入鏡像中使用,但是對於當前演示沒有影響。

操作如下:

一、註冊華為雲帳號並實名認證(如已有華為雲實名認證帳號可直接進行下一步)

1.帳號註冊

進入華為雲官網首頁,點擊右上角的【註冊】按鈕:

設置帳號名、密碼、手機號、簡訊驗證碼並勾選「我已閱讀並同意《華為雲用戶協議》和《隱私政策聲明》」,單擊【同意協議並註冊】即可完成註冊。

2.實名認證

用戶註冊完華為雲帳號後需要進行實名認證才能使用相關服務,實名認證流程也非常簡單,在用戶中心可以看到實名認證的提示信息,根據頁面引導選擇用戶類型和認證類型進行認證即可。

二、開通 3 天免費容器集群

1.在【雲容器引擎】-【體驗中心】-【初級案例】模塊找到購買集群,單擊【體驗】按鈕根據界面引導進行免費集群和節點的創建。

2.資源創建完後,到【服務列表】-【彈性公網IP】找到創建好的彈性ip後記錄下來,在第三步部署pytorch-classify應用時會用到。

三、pytorch-classify代碼一鍵式部署

1.在【應用編排服務】-【模板市場】-【公共模板】模塊找到pytorch-classify應用,進入模板詳情頁,單擊【創建堆棧】按鈕。

2.填寫相關入參信息,包括堆棧名稱、彈性ip等,並選擇剛才創建的集群:

在輸入中填入從第二步中獲取到的彈性ip地址。

pytorch-classify選項卡中可以填寫鏡像的地址,由於該選項有默認值,直接略過即可。所有參數設置完以後,點擊【下一步】,點擊【創建堆棧】。

3.一鍵式部署pytorch-classify:

1 分鐘後堆棧創建成功。

4.進入堆棧詳情,在輸出參數中有pytorch-classify的訪問連結,點擊連結:

5.可以正常使用應用的功能:

寫在最後的話

前文中的AOS模板包含了整個應用系統中所必須的各項配置,如應用的部署、依賴的配置項、外部訪問所需要的服務,但是AOS能力並不止於此。AOS還有能力對於資源如虛機、網絡、安全組以及中間件如資料庫、消息隊列等進行創建等編排操作,再大的應用也和前文的操作一樣,一鍵式部署搞定~

如對AOS感興趣,可以訪問AOS幫助中心了解詳細內容。

相關焦點

  • 華為雲pytorch代碼怎麼部署?
    華為雲pytorch代碼怎麼部署? 本文將以一個使用了pytorch的demo代碼pytorch-classify為例,通過華為雲上的容器服務一鍵式部署,5分鐘完成免費的雲上pytorch代碼的部署。 傳統部署方式 首先是準備環境。先有個伺服器,這臺伺服器需要能夠被外部訪問。
  • 「玩轉華為雲」手把手教你利用ModelArts實現人臉年齡預測
    華為雲—華為公司傾力打造的雲戰略品牌,2011年成立,致力於為全球客戶提供領先的公有雲服務,包含彈性雲伺服器、雲資料庫、雲安全等雲計算服務,軟體開發服務,面向企業的大數據和人工智慧服務,以及場景化的解決方案。
  • 智能升級新階段,華為雲助力新雲原生企業駛出加速度
    華為基於 17 年數位化轉型的真實錘鍊,打造出統一的 IT 數位化平臺,改造 2000+企業應用上雲,研發出生產-聯接-編排-管理全生命周期管理應用平臺——華為雲 ROMA。在「統籌治理、共建共享、立而不破,敏捷可信」四大理念下,使能政企等行業高效率的數位化轉型。
  • 手把手教你用PyTorch實現圖像分類器(第一部分)
    翻譯 | 醬番梨、Succi         校對 | 醬番梨        審核 | 醬番梨       整理 | 立魚王原文連結:https://medium.com/udacity/implementing-an-image-classifier-with-pytorch-part
  • 用Java實現目標檢測|PyTorch
    5分鐘,用Java實現目標檢測文 / 知乎用戶@LankingPyTorch在深度學習領域中的應用日趨廣泛,得益於它獨到的設計。無論是數據的並行處理還是動態計算圖,一切都為Python做出了很多簡化。很多論文都選擇使用PyTorch去實現也證明了它在訓練方面的效率以及易用性。
  • 華為雲發布EI工業智能體2.0,低代碼AI平臺支持快速落地
    華為雲EI工業智能體2.0,基於大量的實踐經驗總結,圍繞工業機理與的AI融合,可支持企業便捷地開發、分享工業機理模型,將工業機理模型與AI進行融合,並能匹配企業客戶組織部署運行環境。華為雲人工智慧領域總裁賈永利發布華為雲EI工業智能體2.0華為雲人工智慧領域總裁賈永利表示,「AI可進入工業核心生產系統解決關鍵業務挑戰,創造價值;而將AI應用於效率提升
  • 用Java實現目標檢測 | PyTorch
    5分鐘,用Java實現目標檢測文 / 知乎用戶@LankingPyTorch在深度學習領域中的應用日趨廣泛,得益於它獨到的設計。無論是數據的並行處理還是動態計算圖,一切都為Python做出了很多簡化。很多論文都選擇使用PyTorch去實現也證明了它在訓練方面的效率以及易用性。
  • PyTorch終於能用上谷歌雲TPU,推理性能提升4倍,該如何薅羊毛?
    曉查 發自 凹非寺量子位 報導 | 公眾號 QbitAI昨天,Facebook在PyTorch開發者大會上正式推出了PyTorch 1.3,並宣布了對谷歌雲TPU的全面支持,而且還可以在Colab中調用雲TPU。
  • 手把手教你用 Jenkins+K8S 打造流水線環境
    朋友的真實操作流程,使用 Jenkins 和 Kubernetes 完成持續集成和持續部署,有搭建,有入門,手把手教學文檔,幹得擰不出水來,分享一波。 本文作者:孫丹丹,女,單身,DevOps 運維工程師,CKA 認證。
  • 華為雲DevCloud為虛擬仿真插上網際網路的翅膀
    理想最終促使李巖跳出自己的舒適圈,匯聚了"虛擬仿真+多媒體+雲計算"的複合型團隊,於2016年11月成立了"平行雲科技(北京)有限公司"(以下簡稱平行雲),一舉向"虛擬仿真網際網路應用雲服務"亮劍。  與華為雲的結緣享受高效安全企業雲服務  基於不同客戶的需求,平行雲已形成服務模式、部署方式和產品形態多樣化的輕量級雲仿真/雲VR解決方案,一套Windows系統的應用,無需修改即可實現跨平臺和跨終端的訪問。"訓課在線"是由平行雲基於華為雲產品打造的在線實踐學習雲平臺,是隨時隨地開放的雲上實訓室,為客戶提供虛擬仿真上雲的PaaS和SaaS服務。"
  • PyTorch最佳實踐,教你寫出一手風格優美的代碼
    這是一個開發的項目,歡迎其它讀者改進該文檔:https://github.com/IgorSusmelj/pytorch-styleguide 本文檔主要由三個部分構成:首先,本文會簡要清點 Python 中的最好裝備。接著,本文會介紹一些使用 PyTorch 的技巧和建議。
  • 華為全棧全場景AI助力智能升級,一文看懂企業AI開發路線
    2 ModelArts:全流程加快 AI 應用開發和部署  有了 AI 計算框架,下一步就需要一套端到端的 AI 開發平臺來實現 AI 應用的快速落地。華為雲 ModelArts 架構師白小龍博士就此分享了華為雲 ModelArts 一站式 AI 開發平臺及關鍵技術,應用案例。
  • 分離硬體和代碼、穩定 API,PyTorch Lightning 1.0.0 版本正式發布
    Lightning 能確保自動完成部分的正確性,對於核心訓練邏輯的提煉非常有優勢。今日,PyTorch Lightning 在推特宣布,1.0.0 版本現在可用了,並發布新的博客文章詳細描述了 PyTorch Lightning 的運行原理和新的 API。William Falcon 表示自己非常期待有一天,當用戶查看 GitHub 上的複雜項目時,深度學習代碼不再那麼令人望而生畏。
  • 一行代碼安裝,TPU也能運行PyTorch,修改少量代碼即可快速移植
    pip install pytorch-lightning該項目的開發者William Falcon說,PyTorch Lightning是他在紐約大學和FAIR做博士生時研發,專門為從事AI研究的專業研究人員和博士生創建的。
  • 華大基因牽手華為雲,雲端解密基因奧秘
    此後,經過反覆的調研和綜合細緻的考察,華大選擇了華為雲。早在2018年,針對基因測序行業的困難與挑戰,華為雲推出了以Kubernetes為基礎的基因容器服務GCS(Gene Container Service)。據悉,GCS將基因測序和容器技術完美結合,是對基因企業來說「更省、更快、更輕鬆」的雲科學計算平臺。
  • 雲原生2.0時代,華為雲如何構建高效可信的持續交付能力?
    華為雲提出,雲原生2.0是企業智能升級新階段,企業雲化從「ON Cloud」走向「IN Cloud」,成為「新雲原生企業」,新生能力與既有能力立而不破、有機協同,實現資源高效、應用敏捷、業務智能、安全可信。
  • 華為終端雲服務推出數字生活系列故事短片·華為應用市場:發現創新...
    在9月27日上線的華為終端雲服務數字生活系列故事短片·華為應用市場,就講述了產品經理與開發經理默契配合,經過努力成功上線應用,發現創新未來的故事。應用上線的時間逐步臨近,辦公室中的研發團隊緊張忙碌著。這是他們第175次為開發的應用加班。
  • 5G+雲+AI使能產業升級,華為雲助力企業智慧化轉型
    如何應用好新興技術推動企業降本增效?2020年11月19日「華為雲專屬月」江蘇泛網際網路行業高端閉門會在南京舉行。會上,華為雲的專家與嘉賓一道為參會企業提供了華為雲在企業數位化轉型中的經典案例和前沿信息。
  • 聚光燈下的區塊鏈,華為雲以哪種姿勢入局?
    很多人預測,區塊鏈真正的應用落地很可能將在2018年出現。一時之間,國內的巨頭紛紛加速了自己在區塊鏈上的布局,開始展開新一輪的技術「軍備競賽」:百度推出區塊鏈開放平臺「BaaS」、螞蟻金服發布Block 7、騰訊的微眾銀行推出基於騰訊雲的聯盟鏈雲服務BaaS......本文主要關注的是另一個巨頭:華為。
  • DTCC 2020:華為雲GaussDB加速企業數字變革
    雲、AI、5G等技術驅動,資料庫行業迎來新的需求,雲資料庫也在不斷演進升級。依託華為雲與華為雲Stack,通過全棧軟硬體優化,華為雲GaussDB進行了進階與革新,以統一的架構,支持關係型與非關係型的資料庫引擎。