天天看點

兩大開源平台、九個基金會項目,走進百度開源的2020

“從 2009 年大規模定制 Hadoop 到 2013 年第一個前端可視化産品 ECharts率先開源,再到2016年和2017年分别正式對外開源飛槳(PaddlePaddle)、Apollo兩大平台。

截止目前,百度已在Github主導的18個開源組織累計開源項目1,023個、社群貢獻者20,000+、獲得Star總數210,000+,并向Apache基金會、Linux基金會、CNCF、開放原子基金會累計捐贈9個項目。”

01-20個技術領域持續開源

截止2020年底,在GitHub/Gitee百度官方組織下,已圍繞着安全、監控、知識圖譜、網絡與接入、視覺、量子計算、開發架構等20個技術領域開源86個項目,其中自然語言處理、開發架構與前端領域的開源項目數占比超過50%。

Github百度開源官方組織:https://github.com/baidu

Gitee百度開源官方組織:https://gitee.com/baidu

02-飛槳(PaddlePaddle)、Apollo已快速成長為行業領先者

兩大開源平台、九個基金會項目,走進百度開源的2020

【Github項目位址:https://github.com/paddlepaddle】

【Gitee項目位址:https://gitee.com/paddlepaddle】

飛槳(PaddlePaddle)以百度多年的深度學習技術研究和業務應用為基礎,是中國首個自主研發、功能完備、開源開放的産業級深度學習平台,集深度學習核心訓練和推理架構、基礎模型庫、端到端開發套件和豐富的工具元件于一體。目前,飛槳累計開發者265萬,服務企業10萬家,基于飛槳開源深度學習平台産生了34萬個模型。飛槳助力開發者快速實作AI想法,快速上線AI業務。幫助越來越多的行業完成AI賦能,實作産業智能化更新。

飛槳生态社群建設:GitHub的所有倉庫(repo)累計 star 數量 55000+(2020年新增30000+),累計 commits 超過16萬次,開源貢獻者超過 5000+,飛槳開發者技術專家(PPDE)97位,飛槳特别興趣小組(PPSIG) 7個。

2020年發版情況如下:

【 1.7.0】版本對架構功能層面進行了重點增強,預測部署能力全面提升,分布式訓練釋出PLSC支援超大規模分類,并對參數伺服器模式進行優化整合。

【 1.8.0】版本深度優化了指令式程式設計模式(動态圖)的功能、性能和體驗,架構基礎功能也進一步強化;全新釋出量槳Paddle Quantum量子機器學習架構。

【2.0-RC1】飛槳核心架構重要更新,先後釋出了2.0-alpha、2.0-beta、2.0-rc0、2.0-rc1共計 4個版本。2.0版本為開發者提供了“程式設計一緻、動靜統一”的全新開發體驗,動态圖功能走向成熟、API進行了全面更新,同時動靜統一的程式設計體驗将為深度機率程式設計、量子機器學習等前沿學術研究提供更好的支援。

12月20日,在WAVE SUMMIT+2020深度學習開發者峰會上,飛槳全新釋出PaddleHelix螺旋槳生物計算平台;推出業内首個通用異構參數伺服器架構;開源算法庫全面更新,官方算法數量從140+擴充至200+;飛槳硬體生态夥伴達到20家,适配或者正在适配的晶片/IP型号29種。飛槳提供了開源深度學習平台自主可控的堅實底座,加速AI産業生态建構。

在企業應用方面,飛槳已經在産業界廣泛應用,合作夥伴包括但不限于:中國電信、聯通、工行、小米、OPPO、58同城、國家電網、昆侖數智,甯德時代等(排名不分先後)

兩大開源平台、九個基金會項目,走進百度開源的2020
兩大開源平台、九個基金會項目,走進百度開源的2020

【Github位址:https://github.com/apolloauto】

【Gitee位址:https://gitee.com/ApolloAuto】

Apollo開放平台是一個開放的、完整的、安全的平台,将幫助汽車行業及自動駕駛領域的合作夥伴結合車輛和硬體系統,快速搭建一套屬于自己的自動駕駛系統。Apollo平台是百度重點打造的 AI 開放平台之一,包括有多個算法子產品:定位、感覺、車輛規劃控制。

自2017年開源以來,釋出了9個版本,從簡單循迹出發,逐漸增加支援高速場景自動駕駛、城市場景自動駕駛。随着技術的發展,平台裡也增加了學術前沿領域的智能新模型,同時平台系統以及相關基礎軟體也進行了整體性的更新。Apollo平台今年釋出了6.0版本,主要功能包含:

  • 智能新模型 :基于語義地圖的規劃模仿學習模型,模仿學習老司機,提升動态避障能力。
  • 安全無人化:支援遠端平行駕駛接口,監測通信裝置狀态,壓縮傳輸視訊和音頻信号,保持穩定的通訊連接配接,接受遠端操作指令,下發規劃控制指令操作車輛;音頻檢測緊急車輛,通過多聲道麥克風捕捉音頻,判斷緊急車輛方位,判斷緊急車輛靠近或遠離。
  • 系統更新Bazel、Python、C++、GCC、CUDA、PCL、Pytorch、TensorRT等基礎軟體更新。
  • 開放新服務,整合Dreamland和Fuel,統一服務入口;整合離散服務,由單個服務到關聯服務。
  • V2X車路協同,車路協同更新,首發對象級别的車端感覺與路側感覺融合特性。

2020年,Apollo開發者社群已擁有來自全球97個國家,58000多名開發者,涵蓋221多所高校,308多家科技公司,57多家車企。目前,社群累計釋出内容超過1200篇,其中開發者貢獻内容60餘篇。此外,面向自動駕駛行業開發者的研發産品——Apollo自動駕駛開發套件(Apollo D-KIT),已為100多家高校、科研機構及行業夥伴提供研發支援。作為全球最大自動駕駛開放平台,Apollo擁有生态合作夥伴達210家,幾乎囊括全球主流汽車制造商、一級零部件供應商、晶片公司、傳感器公司、交通內建商、出行企業等,覆寫從硬體到軟體的完整産業鍊。

截止目前,Apollo測試車隊規模已達500輛級别,獲得專利數2900件,測試裡程總計超過700萬公裡,獲得測試牌照總計近200張,其中載人測試牌超過120張。同時,百度還将北京市自動駕駛測試管理聯席小組釋出的首批T4級别自動駕駛測試牌照收入囊中,成為中國第一家、也是唯一獲得此級别牌照的企業。2020年3月份,全球知名調研機構NR,将Apollo列為全球自動駕駛領域四大“上司者”之一。

Apollo依靠合作共赢的開放平台,帶動全球的開發者、汽車制造商、百餘家高校,互惠互利,造福人類發展。

03-累計向4大基金會已捐贈9個開源項目

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/xuperchain/】

2019年5月,百度基于持續多年在區塊鍊技術與應用領域的研究與探索,推出了完全自主知識産權的區塊鍊底層技術——超級鍊(XuperChain)并正式開源,現已成為國内最具影響力的區塊鍊開源技術之一,其具有四大核心技術亮點如下:

  • 高度易用:多語言智能合約支援、多語言sdk+合約模闆;詳解全面文檔中心;IDE、浏覽器、可視化管理工具等;7*24H技術客服+繁榮生态支援;
  • 超高性能:超級節點技術;鍊内并行技術;存儲、計算可水準擴充;合約ACL背書驗簽技術;
  • 高可擴充:動态核心技術保證架構上高可擴充;多引擎架構技術保證核心流程和技術選型可按場景訂制;超級節點技術保證存儲和計算上高可擴充;
  • 高可用性:超級鍊開放網絡多節點長期運作驗證,穩定性>=99.99%;14w節點廣告聚屏案例生産環境檢驗;
  • 2020年9月,超級鍊成為首個捐贈給開放原子開源基金會的項目。

2020年10月,開放原子開源基金會宣布成立國内首個區塊鍊開源工作組,工作組由百度發起,與浪潮、招商銀行等知名企業共同成立,在開放原子開源基金會指導下進行區塊鍊相關事務的專項管理。

2020年XuperChain項目累計獲得Star數 1266個,Fork 287次,代碼送出次660次,貢獻者37人,全球開發者使用數量 10,000+次,外部代碼貢獻 20%+,版本疊代12次,技術專利釋出425篇,社群人數達 10,000人。在架構、功能、性能上也有較大的提升:

  • 架構:核心技術XuperCore獨立發展,依托動态核心技術,實作廣域場景适用;
  • 功能:落地了國密算法、合約事件、EVM虛拟機等實用功能;持續完善聯盟場景支援,完成了XPoA共識、靜态P2P網絡、平行鍊群組技術等技術的落地;
  • 易用性:智能合約語言支援JAVA、Solidity等語言;智能合約SDK支援跨鍊、可信計算等進階功能;

同時今年完成了适配BSN區塊鍊網絡服務底層,還将全新更新的百度超級鍊核心XuperCore作為區塊鍊開源工作組的核心技術。為信浦存證平台、鍊上巨鹿政務服務、百度文庫、百信銀行、浦發銀行、北京網際網路法院等20餘家企業機構及平台,提供底層技術服務與區塊鍊解決方案。

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://echarts.apache.org/】

2020 年,百度繼續深度參與 Apache ECharts 的項目開發及社群建設工作,保持着穩定的發版節奏,并在年底釋出了全新重量級的 Apache ECharts 5,在最新版本中,實作了五大子產品、十五項特性的全面更新。此外,經過兩年時間 Apache Way 的學習和開源社群的建設,ECharts 于 2020 年 12 月正式從 Apache 軟體基金會畢業,成為頂級 Apache 項目,也是首個百度捐贈到Apache基金會中畢業的項目。

在最新大版本 Apache ECharts 5 中,重點圍繞圖表的叙事能力,在動态叙事、視覺設計、互動能力、開發體驗以及可通路性等方面做了專項優化更新,幫助開發者更友善地建立具有強大叙事能力的圖表:

  • 動态叙事:叙事功能提供了更簡便的方式以展現資料在時間次元上的發展變化;
  • 視覺設計:根據可視化理論優化設計,提高資訊墨水比,讓讀者更專注在重要的資料資訊;
  • 互動能力:多狀态設計讓讀者參與互動,互動的豐富性和流暢性使得使用者更深刻了解資料之間的關聯;
  • 開發體驗:預設更強大更好用,讓開發者無需為性能、資料處理等問題分心,更高效地專注在傳遞資訊;
  • 可通路性:無障礙設計讓視覺障礙人士能夠平等了解圖表傳遞的資訊。

随着産品不斷疊代,以及社群發展上的發力,給 Apache ECharts 帶來了開發者的持續增長。在 npm 上,Apache ECharts 的每周下載下傳量約為 25 萬,較去年同期增長 40%。項目在 Github 的關注數(star)增加到 4.4 萬,較去年同期增長 15%。

為了使産品能夠可持續地健康發展,團隊積極引導開發者參與到社群貢獻中,通過優化開發文檔、建立新手任務、悉心指導 pull request 等方式,降低開發者參與開源共建的門檻,讓更多人能夠加入到社群貢獻中。在 2020 年,項目新發展 5 個 Apache Committer,2 個 Apache PPMC。在Github的累計貢獻者數量超過了百位。

在 ApacheCon 2020 上,百度資深研發工程師出席分享了 Apache ECharts 在過去的一年中在産品和社群建設方面取得的進展,也讓更多海外的開發者了解到 ECharts。在許多國外社交平台上,越來越多的使用者自發地對 ECharts 發表積極評價并向其他人推薦。産品本身的品質成為口碑營銷的有力途徑。

在2021年,Apache ECharts 作為 Apache 軟體基金會的頂級項目,必将以更為成熟、開放的姿态,來迎接新的挑戰和機遇。

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/apache/incubator-doris】

Apache Doris(原百度Palo )是一款基于大規模并行處理技術的分布式 SQL 資料倉庫,由百度在2017年開源,2018年進入 Apache 孵化器。專門應對高并發、低延時的Pb級實時資料倉庫使用場景,全面相容MySQL協定,可以毫秒級針對億萬級資料進行及時的多元分析透視和業務探查。

在2020年,Star數增長 668,Contributor增長 65,在Apache社群保持着平均每個季度釋出一個大版本,每周釋出一個3位版本。4月釋出0.12.0版本、11月釋出0.13.0版本。今年新增加14個新feature:

  • 全新的存儲格式SegmentV2
  • Spark on Doris
  • 明細模型上的物化視圖功能
  • 支援ORC格式資料的導入
  • 動态分區
  • 差集、交集、Grouping Set
  • 大查詢落盤
  • 物化視圖支援 bitmap_union, hll_union 和 count
  • Spark導入
  • RoutineLoad 和 StreamLoad支援新的資料格式:Json
  • 修改 RoutineLoad
  • Logstash 插件
  • 支援查詢結果輸出到檔案
  • 在delete語句中支援謂詞

目前,Doris使用者涵蓋位元組跳動、美團、小米、京東、微網誌、快手、貝殼找房、愛奇藝等100+行業優秀企業。

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://teaclave.apache.org/】

Apache Teaclave (incubating)是全球首個通用安全計算平台,為隐私資料計算賦能,讓安全計算更簡單。Teaclave 基于硬體安全能力(Intel SGX),確定敏感資料在可信域外和離岸場景下安全可控的流通和處理,無需擔心隐私資料洩露和濫用。同時,Teaclave 還支援多方參與的聯合計算,打破企業群組織中的資料孤島。Teaclave 于 2019 年 8 月進入 Apache 基金會孵化器,2020 年 10 月,Teaclave 社群正式通過并釋出了 0.1.0 版。

2020 年釋出首個 Apache Incubator 版本 0.1.0,啟動了對項目的重構計劃,同時對整個項目代碼 和互動的梳理,0.1.0 的釋出是項目從誕生到成長的第一步。

在以下幾個方面做了代碼重構和功能特性完善:提供了更完善的函數和資料注冊執行,重新設計的函數的 開發流程,支援相容 protobuf 的 RPC 定義接口,支援分布式執行服務,支援自定義執行 器,提供更佳完善的文檔,重新設計了錯誤處理機制,完善測試架構和測試用例,實作了更 多的内置函數,支援了更加靈活的遠端證明方式(DCAP),重新設計 RPC 方式等等。

更詳細的修改可以看版本釋出文檔。這次釋出一共修改了876個源檔案,新增了 78,237 行代碼,删除了 54,846 行代碼,并且在 GitHub issue 上解決了來自社群的102 個問題。詳情可見0.1.0 釋出文檔:

https://teaclave.apache.org/blog/2020-10-28-announcing-teaclave-0-1-0-cn/

截止目前,Github上Teaclave 項目star 數1,205個,新增一名commiter,累計支援廠内多個團隊業務以及數十家外部開源項目,建立了健康、可持續的開源社群和 Teaclave 安全計算生态。

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/apache/incubator-brpc】

Apache brpc(incubating)是一個用來建構高可用和高性能背景服務的企業品質的RPC開發架構,在百度内部應用的非常廣泛,在多個核心業務上都有應用。

自2017年從百度對外開源,2018年成為Apache開源基金會孵化項目後,越來越多的公司在使用它,包括愛奇藝,B站,小米,螞蟻等。同時,也有更多的同學對這個項目作出貢獻。是百度内最常使用的工業級RPC架構, 有1,000,000+個執行個體(不包含client)和上千種多種服務。

“brpc"的含義是"better RPC”。其特性:

  • 囊括百度内部所有 RPC 協定,支援多種第三方協定
  • 子產品化設計,層次清晰,很容易添加自定義協定
  • 全面的服務發現、負載均衡、組合通路支援
  • 可視化的内置服務和調試工具
  • 性能上領跑目前其他所有 RPC 産品

項目今年新增一名commiter,累計star數11,000個,fork2,700次,釋出了0.9.7新版本:内置服務支援火焰圖、增加gdb bthread堆棧檢視工具、适配arm64、支援redis協定server、備份請求支援熔斷器。

兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/bfenetworks/bfe】

BFE(Beyond Front End),是現代的七層負載均衡和流量轉發引擎。BFE目前已接入百度大部分流量,每日轉發請求接近1萬億,峰值QPS超過1000萬。BFE于2019年7月正式開源,并獲得了廣泛的關注。

2020年6月24日,BFE開源項目被CNCF (Cloud Native Computing Foundation,雲原生計算基金會)正式接納為Sandbox Project。這是百度第一個被CNCF接納的開源項目,也是在網絡方向上中國第一個被CNCF接納的開源項目。

2020年BFE完成7次版本釋出。截止12月29日,獲得4,213個Stars,較2019年12月約增長40%。新增Contributer50位。增加多個新的feature,其中重點功能包括:

  • Mac和Windows環境編譯支援
  • 使用者限流功能
  • 用戶端認證,JWT認證以及對接第三方認證服務
  • 請求的tagging功能
  • 分布式tracing
  • DoH(DNS over HTTPS)請求和EDNS
  • TCP連接配接的Proxy
  • gRPC over HTTP/2
兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/baetyl】

Baetyl 是 Linux Foundation Edge 旗下的邊緣計算項目,旨在将雲計算能力拓展至使用者現場。提供臨時離線、低延時的計算服務,包括裝置接入、消息路由、資料遙傳、函數計算、視訊采集、AI推斷、狀态上報、配置下發等功能。

在2019年9月23日,百度宣布将BAETYL捐贈給Linux基金會旗下社群,是首個LF Edge捐贈項目。BAETYL名字源自希臘語βαίτυλος (baítulos),字面意思是House of God,古代指賦予萬物生命的聖石。借此意希望該項目能成為賦予萬物智能的基石,讓ABC Anywhere。

今年6月Baetyl正式釋出2.0版本,Baetyl v2 提供了一個全新的邊雲融合平台,采用雲端管理、邊緣運作的方案,分成邊緣計算架構和雲端管理套件兩部分,支援多種部署方式。可在雲端管理所有資源,比如節點、應用、配置等,自動部署應用到邊緣節點,滿足各種邊緣計算場景,特别适合新興的強邊緣裝置,比如 AI 一體機、5G 路測盒子等。v2 和 v1 版本的主要差別如下:

  • 邊緣和雲端架構全部向雲原生演化,已支援運作在 K8S 或 K3S 之上。
  • 引入聲明式的設計,通過影子(Report/Desire)實作端雲同步(OTA)。
  • 邊緣架構暫不支援程序(native)運作模式,由于運作在 K3S 上,是以整體的資源開銷會有增加。
  • 邊緣架構将來會支援邊緣節點叢集。
兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://gerrit.akraino.org/r/】

IME,Intelligent Mobile Edge,智能移動邊緣,立足5G,以AI+視訊為抓手,借助軟硬一體的邊緣計算平台能力,建構行業解決方案底座,屏蔽産業轉型期的典型問題,通過開放合作和協同創新,支撐企業快速建構各種行業的解決方案,助力産業快速智能化轉型。

IME項目源自百度5G移動邊緣産品,于2019年5月在Github開源,并于2019年9月貢獻給LF Edge Akraino社群,成為國内首批進入LF Edge Akraino并孵化的邊緣計算平台之一。

目前,IME已經進入LF Edge Akraino第三個正式的版本,正在準備成熟度稽核及Release 4的相關工作,即将成為Akraino核心項目。IME最新版本(V3.0):

  • 邊緣叢集輕量化,在資源有限的邊緣節點能夠使得IME元件盡量少得占據計算資源,為業務讓位。
  • 多叢集管理,目的是通過多層級的分級自治管理,實作一次部署下發,全量叢集實作部署的功能。
  • 多功能自動化傳遞元件——kube-sitter,旨在把機器裝置管理、監控采集、開機環境初始化、軟體包部署管理等主要功能內建于一身,精簡功能滿足輕量化要求。
  • 邊緣節點自治,使得即使邊緣節點在與中心機房斷連甚至中心機房當機的情況下,也可以確定邊緣節點上的感覺算法依舊能正常運轉。
兩大開源平台、九個基金會項目,走進百度開源的2020

【項目位址:https://github.com/elasticdeeplearning/edl】

EDL是一個基于Kubernetes的原生深度學習架構,它支援大規模分布式訓練任務的容錯和彈性縮放。EDL基于Kubernetes優先級的搶占功能,實作了深度學習任務的彈性排程。深度學習模型訓練和具有彈性資源的推理将在雲上很常見,諸如Amazon AWS,百度雲之類的雲計算資源具有多租戶。

在提出了彈性深度學習(EDL),該方法使在雲上進行深度學習模型的訓練和推理變得更加輕松和高效。現在,EDL是LF AI基金會的孵化階段項目。最新版本(0.3.1):

  • 在訓練過程中通過推理型服務支援彈性訓練,例如知識蒸餾
  • infernce服務通過EDL中的服務發現自動注冊
  • 計算機視覺和自然語言進行中的知識蒸餾示例

期待你的加入

百度開發者中心已開啟征稿模式,歡迎開發者登入developer.baidu.com進行投稿,優質文章将獲得豐厚獎勵和推廣資源。
兩大開源平台、九個基金會項目,走進百度開源的2020