Stack Overflow引入CROKAGE,搜问题不用再东拼西凑
許多開發者使用 Stack Overflow 搜索開發中遇到的問題,有時候需要查詢的結果中有通俗的講解,而且最好還能夠帶上代碼 demo,但是兩者同時很完美地滿足要求還是比較困難的。不過最近 Stack Overflow 官方博客上介紹了一種智能化的技術,或許可以解決這一問題。
新技術名叫 CROKAGE(Crowd Knowledge Answer Generator,群眾知識答案生成器),它來源于今年早些時候一個計算機科學研究小組發表的一篇論文,CROKAGE 可以將提問作為查詢,然后返回相關的、全面的編程解決方案,所謂全面,就是說它不僅有代碼片段,還包括簡潔的自然語言解釋,這樣開發者就不用在眾多的答案中拼湊出一個解決方案。
CROKAGE 使用 Stack Overflow 上的數百萬個 Q&A 作為訓練語料庫進行訓練,還擴展了自然語言查詢(任務描述),包括從 Stack Overflow 中仔細挖掘出來的獨特的開源軟件庫和功能術語。
對于返回來的候選答案,研究人員組合了四個加權因子進行排序,他們利用傳統的信息檢索(IR)指標,如 TF-IDF 和非對稱相關性,同時為了適應 Stack Overflow 的環境,還采用了非常適合軟件特定文檔的針對性排序機制。
簡單來講,整個動作機制如前邊的圖片所示,主要分為幾個步驟:
A、語料庫準備
B、構建模型,map、索引
C、搜索相關答案
D、整合編程解決方案
研究團隊還對結果進行了對比,如下圖所示,在對比中,CROKAGE 給出的建議答案中,代碼示例的相關性、代碼解釋的清晰度以及整體解決方案的質量(也就是代碼+解釋的整體質量),比目前最先進的工具產出了更好的結果。
目前 CROKAGE 還有一些局限性,比如它僅支持 Java 語言的相關查詢,而且如果問題描述比較差,那工具也無法給出如何改進的建議。
開發者可以通過?http://www.isel.ufu.br:9000?體驗該功能。
關于該功能的更多信息,查看:
https://stackoverflow.blog/2019/08/14/crokage-a-new-way-to-search-stack-overflow
https://dl.acm.org/citation.cfm?id=3339130
總結
以上是生活随笔為你收集整理的Stack Overflow引入CROKAGE,搜问题不用再东拼西凑的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: .net core redis的全套操作
- 下一篇: 使用Kubectl部署应用