“人機結對”來程式設計,「aiXcoder」要使軟體開發自動化
需求多,交付緊,加班久,程式員工作壓力大已是不爭的事實。然而,儘管工作時間長,程式設計師的開發效率卻並不理想,絕大多數時間為機械化程式設計規則、debug以及慣用模式呼叫等拖累。現今人力成本越來越高,有沒有什麼工具能夠讓寫程式碼這件事兒更加智慧化呢?
近期,36氪接觸到一家公司「矽心科技」, 運用深度學習等技術研發了一款智慧程式設計機器人產品aiXcoder,希望實現以人工智慧驅動的自動化軟體開發模式 。
aiXcoder當前版本包含兩個功能:程式碼自動補全和相似程式碼智慧推薦。程式設計師寫程式碼時,AI引擎會進行預測並自動補全後續程式碼。同時,aiXcoder會基於程式設計師輸入的程式碼,從後臺規範程式碼庫中呼叫相似的程式碼,在分屏中顯示以供程式設計師參考。
區別於IDE中自帶的基於程式設計語法進行提示, aiXcoder是基於語義進行程式碼生成補全 。aiXcoder 採用專門應用程式分析和生成了特定的深度神經網路模型,在後臺運用了22萬份程式碼以及35萬份tensor flow的程式碼對AI引擎進行訓練,從而使得aiXcoder能學習和掌握隱含在海量程式碼中的編碼模式,提升程式碼預測精度。
據悉,在相同訓練資料集和計算環境下,aiXcoder的程式碼推薦準確率平均可達79%,最高可達86%,高於今年人工智慧頂會IJCAI上釋出的標準化測試結果71%。
除了上述功能, 開發者也可以用自有程式碼訓練自己的專屬aiXcoder 。日常程式設計工作中,aiXcoder能自動記錄程式設計師常用的程式模式、API呼叫序列等,從而對引擎進行訓練。李戈提到:藉由aiXcoder,程式設計師可以節約原本需要上網搜尋相似程式碼和搜尋API使用模式的時間,從而投入更多時間在編寫特定系統所需要的特定程式碼上,提升創造性和個人價值。
明年,矽心科技將在程式碼測試方面落地,實現程式碼測試用例自動生成的新功能。
商業上, 當前矽心科技主要基於企業內部雲來提供專業領域的定製化服務 :已經與華為展開合作,提供支援Android開發的IntelliJ、Eclipse、VS Codes客戶端;為百度提供Paddle Paddle客戶端;為軟通動力提供Android外包專案專用客戶端;為阿里巴巴提供專用開發客戶端。
目前,專案仍屬於早期階段,與企業使用者合作一方面可以在一定條件下呼叫企業程式碼庫,有足量資料集來訓練引擎,另一方面也更能切中企業開發中效率低、流程長等痛點。但是矽心科技卻希望在未來將服務提供給C端使用者。
李戈表示: 矽心科技希望能夠面向C端,從擁有企業級使用者出發,進一步推廣至程式設計師個人,從而構建程式設計師社群,將aiXcoder服務覆蓋到軟體行業更多從業者。最終,矽心科技希望能夠實現支援普通人自然語言互動生成模式,實現人工智慧幫助普通人構造軟體的新生態。
在就如何獲客這一問題,李戈告訴36氪: 除與企業合作外,公司也在嘗試利用程式設計師社群進行推廣 。開發者可以通過Github賬號登陸aiXcoder客戶端,aiXcoder可呼叫登入使用者Github中所有Star過的程式碼(即該使用者點贊過的程式碼),用來訓練引擎。如果Star程式碼是引用自他人,aiXcoder會通知相應開發者,並提供給他們客戶端連結,這樣他們便可以查閱aiXcoder的訓練成果並進行產品試用,以此形成傳播效應。
矽心科技創始團隊來自北京大學高可信軟體技術教育部重點實驗室,創始人李戈是北大資訊科學技術學院軟體所副教授,國家重點研發計劃程式生成/補全課題組負責人,曾任斯坦福大學AI實驗室吳恩達團隊訪問學者;COO劉洋為北大計算機碩士,曾就職於朗訊、黑莓;CTO郝逸洋為早稻田大學碩士,北大本科,曾就職於微軟亞洲工程院。
矽心科技已獲得伽利略資本天使輪融資,目前在進行pre-A輪融資,也在尋求商務方面人才,希望能夠幫助產品進行獲客推廣等。
————
我是鄭銦, ofollow,noindex" target="_blank">36氪超人學院創始學員 ,關注AI、AR/VR、物聯網、邊緣計算、社交 ,專案交流請加微信zhengbaobao097825,註明公司、職位、姓名。
超人學院相信早期生態推動社會變革,使命是為早期生態培養領袖人才,詳情請戳 36氪想要為進入創投圈的年輕人做一所「超人學院」,你來不來