華為雲pytorch代碼怎麼部署?

2021-01-08 泡泡網
華為雲pytorch代碼怎麼部署?
2018年12月27日 17:20作者:黃頁編輯:黃頁

背景介紹

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幫助中心了解詳細內容。

轉載請註明出處。

相關焦點

  • 華為雲ModelArts Pro,零代碼也能完成高精度AI服務的部署
    在HUAWEI CONNECT 2020期間, 華為雲發布ModelArts 3.0,融合骨幹模型、聯邦學習、智能評估、智能診斷和高效算力。華為雲AI首席科學家田奇介紹,華為雲長期紮根AI基礎技術研究,覆蓋計算機視覺、語音語義和決策優化三大AI領域,提出了六大基礎研究計劃。
  • 華為開源自研AI框架MindSpore!一次訓練,可多場景部署
    乾明 發自 凹非寺量子位 報導 | 公眾號 QbitAI華為的開源AI框架,來了!剛剛,華為宣布正式開源自研深度學習框架MindSpore,代碼已經上線。作為華為整體AI解決方案的一部分,MindSpore在提供昇騰AI處理器原生支持及軟硬體協同優化,也支持通用CPU和GPU。2019年8月份,華為輪值董事長徐直軍介紹,MindSpore可以實現統一架構,一次訓練,多處部署。而且,通過實現AI算法即代碼,MindSpore可以顯著減少模型開發時間。
  • 如何看待華為1100億行代碼規模的代碼庫?華為雲MVP這樣說
    說者無意,聽者有心,1100億行代碼迅速吸引了開發者的關注。網友們紛紛拿出計算器,用1100億行代碼計算華為的人均代碼產出,更有好事者拿這個代碼量和Google對比,以證明華為的代碼量過於龐大,軟體工程能力有待改進。一夜之間,「如何看待華為1100億行代碼規模的代碼庫」的話題被頂上了知乎熱榜。
  • 華為被7國禁售,華為終於獲得了POLAR代碼,網友:永遠支持華為
    華為被7國禁售,華為終於獲得了POLAR代碼,網友:永遠支持華為近日,澳大利亞媒體發布消息稱澳大利亞為中國公司發布了"5G禁令",這意味著中興華為設備供應商無法參與澳大利亞的5G建設,這是第七個宣布禁止華為的國家。
  • 加拿大研究所:應禁止華為進行5G部署
    一項新的研究表明,加拿大認為應該禁止華為在加拿大進行5G部署。加拿大安格斯裡德研究所(Angus Reid Institute)所做的一項新加拿大研究表明,有56%的加拿大人贊成禁止華為5G部署。34%的受訪者贊成華為在5G部署。
  • 華為雲CloudIDE,雲時代的精創利器
    我們來看CloudIDE對精創團隊開發雲原生應用原型的支持之道:▸位於雲端的海量微服務代碼模板,一鍵創建微服務;▸開發環境位於雲端容器集群,踏雲而行,我即是雲;▸通過插件打通容器實例部署,一鍵部署到華為雲多個區域;▸多個容器實例獨立拉起,避免狀態依賴和本地組件依賴;▸容器數量隨時調整,彈性擴展毫不拖泥帶水,失敗韌性隨時驗證
  • 華為手機撥號鍵代碼怎麼用?一文教你看清,今天才知道作用挺強的
    下面我們就以華為手機為例,來說說手機上的撥號鍵代碼怎麼使用?看看大家平時是不是這麼使用的,那就讓我們一起來看看吧! 一、撥號鍵作用 1、鑑別真假 如果你想鑑別你所拿的華為手機是真是假,那我們可以打開手機撥號功能,然在上面輸入【*#06#】是假,那我們可以打開手機撥號功能,然在上面輸入【*#06#】,最後就可以辨別手機真偽了。
  • 華為雲CodeHub代碼模板共享計劃啟動
    華為雲DevCloud的服務CodeHub(代碼託管)是華為雲面向開發者的基於Git的在線代碼託管服務,是具備安全管控、成員/權限管理、分支保護/合併、在線編輯、統計服務等功能的雲端代碼倉庫。CodeHub的代碼模板基於不同開發語言和應用場景的示例原始碼,開發者可通過代碼模板快速創建自己的項目,還可通過配置華為雲流水線服務和相關雲資源後,在雲端實時運行你的應用,實現所見即所得。目前已匯聚華為開發者聯盟、AI、鯤鵬、雲原生、IoT等大量官方模板。開發者不僅可以直接引用代碼模板,還可以貢獻代碼模板,我為人人,人人為我,讓開發始於80%。
  • 視覺算法工業部署及優化學習路線分享
    BBuf回答謝邀,我是19年開始逐漸接觸CV中的一些算法部署,在NCNN,TensorRT,OpenVINO,NNIE和華為Atlas系列的各個框架上都有一些部署經歷。另外目前作為一個新的小型Pytorch推理框架MsnhNet的核心開發者之一,感覺自己是比較適合回答這個問題的。
  • 華為終於放出方舟編譯器原始碼,網友:硬核項目
    從華為的代碼平臺來看,開源方舟編譯器只是搭建鴻蒙生態系統的第一步,華為今後將在自家平臺上陸續發布更多鴻蒙OS細節。在使用華為的開源託管代碼前,需要註冊華為雲用戶,華為表示後續會支持更多的第三方登錄平臺。為了把本地電腦上的Git與遠程的華為開原始碼託管平臺代碼倉庫連接到一起,需要先進行授權。授權方式有HTTPS或者SSH兩種協議可選。因為同樣使用Git版本控制系統,其餘操作與GitHub上託管和下載項目代碼的幾乎完全一致。
  • 我們寫的Java代碼是怎麼運行起來的?
    在進行「我們寫的Java代碼是怎麼運行起來的?」這個話題之前,我們先來了解一個概念:JVM。上圖應該修改如下02我們寫的Java代碼是怎麼運行起來的?現在讓我們來回到主題,來探討下java代碼是怎麼運行的。假設現在有一個寫好的項目HelloWorld,其中包含很多Java後綴的代碼,譬如:HelloWorld.java 。我們來回顧下這些代碼是怎麼部署並運行的?
  • 華為openEuler作業系統原始碼正式開放
    IT之家1月2日消息 去年9月19日,華為在上海舉辦的第四屆華為全聯接大會上宣布,華為伺服器作業系統EulerOS開源,開源名為openEuler。華為Cloud&AI產品與服務總裁侯金龍還透露,華為正在與中標紅旗、武漢深之度等公司籌備開源社區。
  • 思科抄襲華為代碼?思科尷尬解釋:忘了刪
    近日,思科在官網發布其旗下多款網絡設備存在安全漏洞,指出思科250、350、350X以及550X型號的交換機使用了來自華為美國研發機構Furturewei的密鑰證書。思科官網安全預警通告早在03年,思科就曾指控華為「抄襲代碼」,而如今思科卻被爆出在自己的網絡設備裡發現含有華為的代碼,這讓思科尷尬至極。
  • 源碼剖析:華為MindSpore端到端代碼調用流程
    4 月 28 日,機器之心聯合華為昇騰學院開設的線上公開課《輕鬆上手開源框架 MindSpore》第三課完成,華為雲與計算 BG 計算開源生態部工程師王輝為大家帶來了主題分享《MindSpore代碼流程分析》。
  • 探秘華為5G Massive MIMO:發力早、部署廣、規模大
    在4G時代,Massive MIMO(3D MIMO)作為4G網絡5G化技術之一已經實現規模的部署有效提升部署區域用戶體驗。在5G時代,Massive MIMO從標準上實現進一步的增強,進一步釋放頻譜的能力,降低5G規模部署成本。據了解,在Massive MIMO技術的研究中,華為表現突出。
  • 「關注」思科被發現使用華為代碼,解釋:忘了刪
    美國網絡設備製造商思科(Cisco)曾指控華為「抄襲代碼」,如今自己鬧出「尷尬」事件:該公司被網絡安全諮詢公司發現,產品交換機裡用的秘鑰證書,是華為子公司研發的。思科對此解釋稱:在測試產品時使用了華為的代碼,最後忘了刪除。不過需要注意的是,該秘鑰證書為一款開源程序包中的一部分。根據相關協議,開原始碼的引用須註明出處。據美國科技媒體ZDNet新聞網消息, 7月3日,思科在其官網一下子列舉19條程序安全相關聲明,建議其客戶對產品進行相關更新。
  • 時代變了,這是敏捷DevOps、低代碼、微服務的正確打開姿勢
    除此之外,徐毅還指出了變革過程中的一些具體方法,如:從項目型走向產品型,考慮設立產品經理制,建立基於產品的價值交付型組織結構;訓練出有規矩、講紀律、有戰鬥力、能自管理的團隊;將需求故事化,基於用戶場景、信息共享、減少誤解;基於代碼分支模式進行協作,自動化構建部署流水線;藉助業界的先進工具和實踐快速提升基本能力等。
  • 華為將在西安部署雲計算、AI、5G等新產業研發機構
    投資界-西安創業(XianDream.com)消息,10月17日,「華為雲城市峰會2019」在西安舉行。會上,西安航天基地華為雲(西安)人工智慧創新中心啟動,高新區與華為公司智慧創新港及西安智能網聯汽車示範區項目籤約。
  • 華為員工感嘆:公司招聘人人,上海交通大學生物,代碼不會做開發
    在職場論壇上,華為的一位員工驚呼:「公司現在怎麼能招到所有人?」?雖然是上海交通大學,學的是生物學,但連一個代碼都不能,招來做系統開發嗎?這不禁讓人疑惑,華為是不是根據學歷來招人?有網友認為代碼有點無聊東西,雖然他畢業於上海交通大學,但他對此並不感興趣,如果他對如果沒有感興趣,就很難學會如何把代碼做好。有網友認為,代碼不難學,如果你願意努力工作,你必須能夠學習,尤其是這些出身名校的人,學習能力肯定會比普通人強得多,招募這樣的人只是表明華為願意培養人,或許貴公司的HR也看中了上海交通大學學生的學習能力,並能更好地為公司今後的發展做出貢獻。
  • 三步帶你了解華為雲CloudIDE前世今生
    那這樣一款雲端IDE服務是怎麼被打造出來的呢?一聲令下雲起航實際上,華為持續投入雲計算及相關技術和產品研發已近10年,在虛擬化、存儲、計算、雲數據中心等領域不斷進步。2017年,華為成立Cloud BU,強力投入公有雲,致力於為企業提供穩定可靠、安全可信、可持續創新的雲服務。