聽聽飛槳框架硬核貢獻(xiàn)者如何玩轉(zhuǎn)開源!
當(dāng)仰望星空時,你在想什么?我在想象,未來可能是什么樣子。從應(yīng)用廣泛的人工神經(jīng)網(wǎng)絡(luò),到火遍全網(wǎng)的AIGC,創(chuàng)造新宇宙的人,相信永遠(yuǎn)看不到天花板。
?在這些神奇的AI產(chǎn)品背后,有一個了不起的開源項(xiàng)目——飛槳PaddlePaddle。飛槳以百度多年的深度學(xué)習(xí)技術(shù)研究和業(yè)務(wù)應(yīng)用為基礎(chǔ),是中國首個自主研發(fā)、功能完備、開源開放的產(chǎn)業(yè)級深度學(xué)習(xí)平臺。目前,飛槳累計(jì)開發(fā)者535萬,服務(wù)企業(yè)20萬家,基于飛槳開源深度學(xué)習(xí)平臺產(chǎn)生了67萬個模型。?《2022中國開源年度報(bào)告》數(shù)據(jù)顯示,飛槳PaddlePaddle開源項(xiàng)目位列GitHub中國項(xiàng)目活躍度榜首;在Linux基金會公布的全球開源項(xiàng)目中,飛槳開源動力指數(shù)進(jìn)入國際Top 30。
?在飛槳開源社區(qū),有90余個開源代碼倉庫,16700+貢獻(xiàn)者,開源社區(qū)的活躍離不開每一個人的參與。本著開放、共享、協(xié)同的開源精神,大家在飛槳開源社區(qū)共同開展了許多有趣硬核的開源活動。包括飛槳黑客松、快樂開源活動、PFCC meetup等。
這里有耐心、技藝精湛、專職開源的社區(qū)導(dǎo)師;這里有有趣、樂于分享、熱愛開源的社區(qū)開發(fā)者;這里有類型多樣、充滿挑戰(zhàn)的社區(qū)開源項(xiàng)目;這里有有趣好玩、學(xué)知識、交朋友的社區(qū)活動。
?參與飛槳開源社區(qū),不僅豐富自己的經(jīng)歷,也能獲得來自社區(qū)的認(rèn)可。
?在這里,與你一起定義飛槳的未來。
飛槳自2016年開源至今,受到了許許多多開發(fā)者的認(rèn)可與喜愛,也匯聚了一大批熱愛開源的社區(qū)貢獻(xiàn)者,飛槳框架貢獻(xiàn)者數(shù)量不斷增長,飛槳框架主倉庫貢獻(xiàn)者PR占比持續(xù)提高。社區(qū)開發(fā)者與飛槳研發(fā)工程師聯(lián)合開發(fā)項(xiàng)目,在框架靜態(tài)圖算子自動生成、PHI算子庫獨(dú)立編譯、豐富飛槳API體系、飛槳文檔體驗(yàn)優(yōu)化、CINN算子開發(fā)、動轉(zhuǎn)靜功能優(yōu)化等多個領(lǐng)域貢獻(xiàn)成果顯著。

「貢獻(xiàn)者說」
一起來聽一聽他們和飛槳的故事吧。

作為一名開源開發(fā)者,逛GitHub刷issue和PR list是我每天必做的事情,一旦發(fā)現(xiàn)一些感興趣的且力所能及的問題,我便會提一個PR去嘗試解決。當(dāng)然,我與飛槳也是如此結(jié)緣的,從修typo到參與Hackathon再到參與Call for Contributions,不知不覺就貢獻(xiàn)了上百個PR。在這個過程中,我也見證了飛槳開源社區(qū)的發(fā)展,隨著黑客松、Call for Contributions、快樂開源等活動的不斷開展,飛槳已經(jīng)吸納了大量的優(yōu)秀開發(fā)者,PFCC的建設(shè)也卓有成效,已經(jīng)有越來越多的開發(fā)者參與到 飛槳的開源共建中來,為飛槳的開源建設(shè)提供了極大的助力。

作為一個非專業(yè)的開源開發(fā)者,我最開始接觸飛槳PaddlePaddle是在AI Studio上學(xué)習(xí)深度學(xué)習(xí)的相關(guān)項(xiàng)目。機(jī)緣巧合之下,接觸到了飛槳PaddlePaddle的文檔評審工作,參與了飛槳API文檔的評審工作,并對API文檔進(jìn)行修正。在這個過程中,我增加了對飛槳API的了解,也了解到框架開發(fā)工作。之后,通過快樂開源活動,著手于一些簡單的開發(fā)工作,例如修復(fù)飛槳PaddlePaddle的零除問題、PHI算子庫注冊等,逐漸增加對飛槳PaddlePaddle框架的認(rèn)識。圍繞著飛槳PaddlePaddle框架開發(fā),我收獲了SigureMo、gouzil、enkilee、sanbuphy等朋友的幫助,結(jié)識了許多的小伙伴,也有機(jī)會和很多小伙伴們一起合作趣味的項(xiàng)目開發(fā),共同成長。

我最開始接觸飛槳PaddlePaddle是在網(wǎng)上尋找免費(fèi)的GPU算力進(jìn)行機(jī)器學(xué)習(xí),然后找到了國內(nèi)最有誠意也最大氣的AI Studio,同時發(fā)現(xiàn)上面很多基礎(chǔ)課程,就開始學(xué)習(xí)相關(guān)項(xiàng)目。在查看API文檔的時候,機(jī)緣巧合之下,進(jìn)了飛槳PaddlePaddle的API文檔修改組,結(jié)識了孫師傅和夢師傅。在這個過程中,學(xué)會了提PR。并在后續(xù)的快樂開源活動中,通過飛槳研發(fā)提出的Issue清單,對飛槳PaddlePaddle有了更深刻認(rèn)識。后面為了提升自己的能力參加了黑客松第四期,在開發(fā)算子題目中就發(fā)現(xiàn)快樂開源活動的各類題目對黑客松有著非常大的幫助,同時也收獲了很多朋友的幫助,結(jié)識了許多的小伙伴。希望在花花、孫師傅、夢師傅、濤姐和各位飛槳大佬的幫助下,PaddlePaddle社區(qū)吸引更多開源愛好者共同維護(hù)飛槳框架!

我和開源項(xiàng)目飛槳PaddlePaddle的故事是我從2021年的實(shí)習(xí)開始的,那個時候我從公司的項(xiàng)目中接觸到了飛槳PaddlePaddle,我開始不滿足于公司的應(yīng)用層業(yè)務(wù),開始將興趣的一部分轉(zhuǎn)向了開源項(xiàng)目,希望開源軟件的學(xué)習(xí)能夠更好的將工作需要工具化的部分承載起來,一次偶然的機(jī)會遇到孫師傅的API文檔評測,慢慢的我開始在飛槳PaddlePaddle的主倉庫修復(fù)文檔了,后面我開始不滿足于只停留在文檔,加入了飛槳快樂開源活動,也是今年開始著手飛槳PaddlePaddle的一些開發(fā)活動,以及提一些 RFC,提建議,編譯優(yōu)化,線下WAVE SUMMIT等活動里面去,隨著社區(qū)的發(fā)展,PFCC的成員從30多人到2023年到了90多人,這得益于花花、孫師傅、夢師傅、以及濤姐和各個部門研發(fā)人員的持續(xù)耕耘,也同樣是飛槳PaddlePaddle社區(qū)開放交流的文化,吸引著我們這群深度學(xué)習(xí)框架愛好者們走在一起。

我最初是在師兄的推薦下參加了飛槳黑客松的第三期,也開始接觸到飛槳PaddlePaddle這個開源社區(qū)。那時我接觸到了深度學(xué)習(xí)編譯器CINN的賽題,我開始學(xué)習(xí)和探索CINN的代碼和架構(gòu)。在這個過程中,我提交了我的第一個正式的PR,這也是我在開源社區(qū)的第一個正式提交。在接下來的幾個月里,我逐漸深入了解飛槳PaddlePaddle的代碼和架構(gòu),我開始參與到飛槳PaddlePaddle的開發(fā)中。我提交了一些PR,其中最有挑戰(zhàn)性的一個是關(guān)于稀疏矩陣sum算子的優(yōu)化。在這個過程中,我學(xué)到了很多關(guān)于深度學(xué)習(xí)框架的知識,也認(rèn)識到了很多志同道合的開發(fā)者。除了黑客松第三期,我還參加了快樂開源活動和黑客松的第四期。在這些活動中,我認(rèn)識了更多的社區(qū)大佬和飛槳的社區(qū)維護(hù)者。我和他們交流經(jīng)驗(yàn)和技巧,也學(xué)習(xí)到了很多新的知識和技能??傊?,我非常感謝飛槳PaddlePaddle社區(qū)給我提供了一個學(xué)習(xí)和成長的平臺。我會繼續(xù)努力,為這個社區(qū)做出更多貢獻(xiàn)。

作為一名飛槳PaddlePaddle框架開發(fā)者,我與飛槳PaddlePaddle開源社區(qū)已然同行近一年。正如first PR通常是fix typo,我最初加入開源社區(qū),也從為文檔倉庫貢獻(xiàn)開始。隨著對飛槳PaddlePaddle了解的逐漸深入,我參與的工作范圍,也逐漸深入到python api、cpp代碼中,在更底層的角度理解飛槳PaddlePaddle框架。開發(fā)中,難免和reviewer意見沖突,盡管偶爾能據(jù)理力爭,更多時候則是被大佬們的透徹理解和縝密思路所折服,在個人為框架貢獻(xiàn)的同時,也反哺個人能力與思維的提升。
與飛槳PaddlePaddle同行的路上,我不僅學(xué)到了很多深度學(xué)習(xí)方面的知識與技能,也結(jié)識了許多志同道合的朋友。未來,我也將繼續(xù)與PFCC的同好和潛在的個人貢獻(xiàn)者們攜手前進(jìn),繼續(xù)為飛槳PaddlePaddle框架的發(fā)展與推廣貢獻(xiàn)出自己的力量。

我和飛槳PaddlePaddle的故事開始于去年11月我偶然看到的一篇黑客松收官推文,那時我還只是PyTorch的用戶,沒用過飛槳PaddlePaddle,對于推文里介紹的那些框架建設(shè)任務(wù)也不了解,但出于對深度學(xué)習(xí)框架的底層實(shí)現(xiàn)的興趣,我添加了推文下方企業(yè)花花的微信,加入了快樂開源群。后來一次機(jī)會在群里看到了PHI算子庫獨(dú)立編譯任務(wù)的發(fā)布,開源小白的我完成了GitHub上的第一個PR,剛開始的我改一兩行代碼就畏手畏腳,但隨著陸續(xù)完成了更多任務(wù),我對飛槳PaddlePaddle框架有了一定的了解,提起PR來也得心應(yīng)手了。再后來通過花花和濤姐的幫助,我很幸運(yùn)地獲取了去百度實(shí)習(xí)的機(jī)會,我也把握住了這個機(jī)會,通過實(shí)習(xí)我對飛槳的一些實(shí)現(xiàn)機(jī)制有了更深的了解,同時也積累了一些開發(fā)經(jīng)驗(yàn),目前我也繼續(xù)在飛槳開源活動中完成一些任務(wù),希望能夠?qū)W到更多的同時也能為飛槳的建設(shè)做出小小的貢獻(xiàn)。

飛槳開源項(xiàng)目為我提供了一個展示自己才華和能力的平臺,通過不斷提交優(yōu)質(zhì)的代碼和解決復(fù)雜的問題,我不但提升了技術(shù)能力、拓寬了技術(shù)視野,還在開源社區(qū)中找到了自己的定位??吹阶约旱拇a被其他人使用、改進(jìn)和貢獻(xiàn),帶給我一種成就感和滿足感,意義非凡。與此同時我加入了PFCC,PFCC的成員之間經(jīng)常相互分享知識、互相幫助,形成了一種良性循環(huán)。這種開源精神和社區(qū)文化讓我感到溫暖和鼓舞,也激發(fā)了我更多地參與到開源項(xiàng)目中去。
再次感謝大家積極的開源貢獻(xiàn),代碼進(jìn)入框架v2.5發(fā)布后,將會收到對應(yīng)版本的開源貢獻(xiàn)證書。
如果大家有意愿參與開源貢獻(xiàn),
和我們一起建設(shè)更優(yōu)雅的飛槳代碼倉庫,
以及更活躍的飛槳開源社區(qū)~