版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于aiXcoder代碼大模型的企業(yè)智能化軟件開發(fā)應(yīng)用實(shí)踐李力行北京硅心科技有限公司全球開發(fā)者積極擁抱AI開發(fā)工具Gartner將AI增強(qiáng)開發(fā)列入2024十大戰(zhàn)略技術(shù)趨勢(shì)44%的開發(fā)者已經(jīng)在開發(fā)過(guò)程中使用AI工具26%44%30%AI開發(fā)工具使用情況計(jì)劃嘗試使用 正在使用 其他77%23%將AI工具作為開發(fā)工作的一部分贊成 其他77%的人贊成使用AI工具作為其開發(fā)工作流程的一部分?jǐn)?shù)據(jù)來(lái)源:StackOverflow
2023年開發(fā)者調(diào)查報(bào)告。AI開發(fā)工具在軟件工程的應(yīng)用現(xiàn)狀47.40%%1.50%37.427.90%33.7027.40%40%學(xué)習(xí)速度效率生產(chǎn)力AI開發(fā)工具的優(yōu)勢(shì)專業(yè)開發(fā)人員學(xué)習(xí)編碼的開發(fā)人員數(shù)據(jù)來(lái)源:StackOverflow
2023年開發(fā)者調(diào)查報(bào)告。數(shù)據(jù)來(lái)源:中國(guó)信通院AI4SE工作組數(shù)據(jù)來(lái)源:JetBrains2023開發(fā)者生態(tài)系統(tǒng)現(xiàn)狀關(guān)于我們孵化自北京大學(xué)軟件工程研究所致力于將前沿人工智能技術(shù)應(yīng)用于軟件工程聚焦代碼大模型在企業(yè)的應(yīng)用落地全球智能化軟件研發(fā)領(lǐng)域最早的引領(lǐng)者Applicationsin
IndustryTaskOriented
ResearchesTaskIndependent
Researches[arXiv2015]theFirstDLWorkonProgram
Generation.[arXiv2014]theFirstDLWorkonProgram
Representation.[TOSEM,2020]ModularbaseCode
Representation.[ASE2020]theFirstPaperonPre-trainingbasedCodeComletion.[NIPS2019]PopularCitedPaperonCodeGenerationand
Summarization.[EMNLP
2015][KSEM
2015][EMNLP
2015][EMNLP
2015][arXiv
2015][EMNLP
2016][ACL
2016][ACL
2016][AAAI
2016][CIKM
2016][IJCAI
2018][ICPC
2018][KSEM
2017][KSEM
2017][NeurIPS
2019][EMSE,
2019][ICPC
2019][AAAI
2019][ICPC
2019][COMPSAC
2019][NeurIPS
2021][NeurIPS
2021][TOSEM,
2021][TOSEM,
2021][TSE,
2021][JSS,
2021][ASE
2021]......[NeurIPS
2022][ICSE
2022][ICSE
2022][FSE
2022][FSE
2022][EMNLP
2022][CIKM
2022][JSS
2022]...
...2014
2015201620182019[IJCAI2020][ASE
2020][ASE
2020][TOSEM,
2020][ICPC
2020][SANER
2020][AAAI
2020]2020 20212022[IJCAI2018]PopularCitedPaperonProgramSummarization.[ICPC2018]PopularCitedPaperonProgram
Summarization.[AAAI2016]theFirstPaperonASTbasedProgram
Representation.bp[NIPS2021]CodeTransformerRepresentation.[TOSEM,2021]theFirstPaperonDLRo
ustness.[arXiv
2014][arXiv
2014][TOSEM
2023][TOSEM
2023][ASEJ
2023][JSME
2023][JSEP
2023][ASE
2023][ICPC
2023][ACL
2023][ICSE
2023][SANER
2023]...
...2023[ICPC2023]ACMSIGSOFTDistinguishedPaperAward.[NeurIPS2022]BigModelTraining.大模型的代碼能力當(dāng)前公開測(cè)評(píng)集的局限性:題目類型多為算法題或競(jìng)賽題獨(dú)立函數(shù)或方法的生成,不關(guān)注上下文容易在訓(xùn)練過(guò)程中被污染真實(shí)開發(fā)場(chǎng)景KechiZhang,JiaLi,GeLi,XianjieShi,ZhiJin,CodeAgent:EnhancingCodeGenerationwithTool-IntegratedAgentSystemsforReal-WorldRepo-levelCodingChallenges,ACL
2024軟件開發(fā)全流程:
多階段+團(tuán)隊(duì)協(xié)同企業(yè)開發(fā)場(chǎng)景:私有化環(huán)境+領(lǐng)域知識(shí)代碼天然具有私有化屬性企業(yè)軟件開發(fā)高強(qiáng)度依賴領(lǐng)域知識(shí)軟件開發(fā)私有化的限制將一直存在,代碼的領(lǐng)域化將變得尤為重要代碼是企業(yè)核心資產(chǎn)知識(shí)產(chǎn)權(quán)專有技術(shù)數(shù)據(jù)安全商業(yè)機(jī)密行業(yè)知識(shí)代碼注釋API
接口命名習(xí)慣需求文檔相關(guān)文檔編碼規(guī)范設(shè)計(jì)文檔用戶手冊(cè)歷史代碼特定行業(yè)標(biāo)準(zhǔn)的實(shí)現(xiàn)標(biāo)準(zhǔn)功能的實(shí)現(xiàn)·········企業(yè)軟件開發(fā)需遵循相關(guān)要求···aiXcoder產(chǎn)品技術(shù)概覽企業(yè)智能化軟件開發(fā)提供商軍工能源通信金融aiXcoder系列大模型定制化開發(fā)私有化部署個(gè)性化訓(xùn)練咨詢服務(wù)智能化軟件開發(fā)系統(tǒng)智能知識(shí)庫(kù)系統(tǒng)企業(yè)開發(fā)管理系統(tǒng)智能化軟件開發(fā)一體機(jī)交通科研智能制造科技應(yīng)用場(chǎng)景企業(yè)服務(wù)產(chǎn)品核心技術(shù)大模型訓(xùn)練及微調(diào)軟件工程AgentRAG代碼大模型的重要性數(shù)據(jù)來(lái)源:On
the
Effectiveness
of
Large
Language
Models
in
Domain-Specific
Code
Generation通用大模型在專有領(lǐng)域的生成效果大幅下降從通用領(lǐng)域到專有領(lǐng)域,測(cè)評(píng)結(jié)果約有70%以上的下降aiXcoder代碼大模型的持續(xù)演化aiXcoder-7B:專為企業(yè)私有部署結(jié)合代碼結(jié)構(gòu)特性,構(gòu)建高質(zhì)量數(shù)據(jù)集爬取與過(guò)濾:去除copyleft
licenses
項(xiàng)目項(xiàng)目篩選:根據(jù)
Git
的各種信息刪除低質(zhì)量項(xiàng)目文件篩選:近似去重算法篩選文件數(shù)據(jù)收集敏感信息去除刪除無(wú)效代碼自動(dòng)生成代碼去除代碼級(jí)篩選語(yǔ)法解析:刪除語(yǔ)法不正確的代碼靜態(tài)分析:刪除常見缺陷的代碼依賴分析:重排代碼文件的順序高質(zhì)量訓(xùn)練數(shù)據(jù)1.5TUnique
Token高質(zhì)量代碼數(shù)據(jù)集
根據(jù)代碼結(jié)構(gòu)及特性結(jié)合軟件工程能力處理結(jié)合代碼結(jié)構(gòu)化特征的模型構(gòu)造方法結(jié)構(gòu)化span支持基于項(xiàng)目上下文環(huán)境的代碼生成當(dāng)前文檔上下文當(dāng)前項(xiàng)目相關(guān)文檔大模型代碼能力的測(cè)評(píng)LEVELINPUTOUTPUTDATASET獨(dú)立的代碼生成NL(自然語(yǔ)言需求+函數(shù)簽名+輸入輸出對(duì))function/method(完整的函數(shù)/方法)Human-EvalMultiPL-EMBPPDS-1000基于上下文的代碼補(bǔ)全in-file(當(dāng)前文件內(nèi)上下文)single-line(單行代碼)SantaCoder-FIMfunction/method/single-line(完整函數(shù)/完整方法/單行代碼)aiXcoder_FIM_4kaiXcoder_FIM_8kcross-file(跨文件上下文)single-line(單行代碼)CrossCodeEvalsingle-line(單行代碼)RepoBenchmethod(完整方法)EvoCodeBench項(xiàng)目級(jí)開發(fā)cross_file+description(跨文件上下文+需求描述)method(完整方法)-基于多文件交互SWE-Benchmethod(完整方法)-基于調(diào)用多種工具CodeAgent-Bench容易困難aiXcoder-7B:代碼生成能力優(yōu)異aiXcoder-7B在各大百億級(jí)參數(shù)規(guī)模代碼大模型上表現(xiàn)最佳甚至超過(guò)參數(shù)規(guī)模是其5倍的CodeLlama。HumanEval
是由OpenAI在2021年推出代碼生成模型效果評(píng)估測(cè)評(píng)集,包含164個(gè)Python編程問(wèn)題。MBPP
是由谷歌在2021年推出的代碼生成模型效果評(píng)估測(cè)評(píng)集,包含974個(gè)Python編程問(wèn)題。MultiPL-E
是由HuggingFace推出的多語(yǔ)言代碼生成效果評(píng)估測(cè)試集,包含18種編程語(yǔ)言。測(cè)評(píng)結(jié)果
-
上下文單行代碼補(bǔ)全測(cè)評(píng)集:Santacoder(Ben
Allal
et
al.,
2023)代碼補(bǔ)全:aiXcoder
benchmark更大、更多樣性的測(cè)評(píng)集、更長(zhǎng)的上下文信息測(cè)評(píng)結(jié)果:多行代碼補(bǔ)全跨文件代碼補(bǔ)全測(cè)評(píng)產(chǎn)品功能:支持多語(yǔ)言、多IDE支持100+主流編程語(yǔ)言/框架支持多種主流IDE功能:代碼生成與補(bǔ)全復(fù)雜算法題的解法生成前端Web頁(yè)面的生成代碼補(bǔ)全:長(zhǎng)上下文與多文件長(zhǎng)上下文代碼補(bǔ)全跨文件代碼生成用戶體驗(yàn)優(yōu)化預(yù)測(cè)出發(fā)時(shí)機(jī)預(yù)測(cè)長(zhǎng)度動(dòng)態(tài)調(diào)整功能:?jiǎn)卧獪y(cè)試自動(dòng)生成單元測(cè)試用例自動(dòng)生成在開發(fā)者編寫代碼后,通過(guò)“單元測(cè)試代碼自動(dòng)生成”功能自動(dòng)生成對(duì)應(yīng)的單元測(cè)試,保障代碼質(zhì)量針對(duì)任意方法、函數(shù)自動(dòng)生成單元測(cè)試用例及對(duì)應(yīng)解釋。功能:代碼缺陷檢測(cè)與修復(fù)代碼缺陷檢測(cè)與修復(fù)自動(dòng)識(shí)別并修復(fù)代碼中的錯(cuò)誤,通過(guò)分析被測(cè)代碼,識(shí)別代碼中的潛在錯(cuò)誤,并自動(dòng)給出修復(fù)后的代碼。這個(gè)功能在提高代碼穩(wěn)定性和可靠性方面有很大的價(jià)值,同時(shí)也可以減少手動(dòng)調(diào)試和修復(fù)Bug的時(shí)間功能:代碼解釋代碼解釋自動(dòng)解析代碼的功能和結(jié)構(gòu),從而生成對(duì)應(yīng)的文本解釋。該功能可以有效減輕開發(fā)者編寫功能文檔的負(fù)擔(dān),同時(shí)幫助開發(fā)者快速理解代碼邏輯和功能設(shè)計(jì)。功能:代碼問(wèn)答報(bào)錯(cuò)信息解釋結(jié)合報(bào)錯(cuò)信息對(duì)原始代碼做修復(fù)non-agenticvs
agenticNon-agenticworkflow
(zero-shot)Please
type
out
an
essay
on
topic
X
fromstart
to
finish
in
one
go,
without
usingbackspace.StartThinking/researchReviseFinishAgentic
workflowWrite
an
essay
outline
on
topic
XDoyouneedanyweb
research?Writeafirst
draft.Consider
what
parts
need
revision
or
more
research.Reviseyour
draft.智能化軟件開發(fā)agent時(shí)代環(huán)境反饋外掛知識(shí)庫(kù)角色扮演開發(fā)流程(多輪)工具調(diào)用Agent設(shè)計(jì)模式Reflection審視和修正自己生成的輸出Tool
use搜索、調(diào)用
API
等進(jìn)行實(shí)際操作Planning分解復(fù)雜任務(wù)并按計(jì)劃執(zhí)行Multi-agent多個(gè)
Agent
扮演不同角色合作完成任務(wù)AndrewNg:What'snextforAIagentic
workflowsSelf-planning
code
generation
with
large
language
model,
Xue
Jiang,
Yihong
Dong,
Lecheng
Wang,
Zheng
Fang,
Qiwei
Shang,
Ge
Li,
Zhi
Jin,
Wenpin
Jiao,
arXiv
preprintarXiv:2303.06689,
2023.DecomposecomplexproblemsandschedulethesolutionstepspriortoimplementationImprovesPass@1byupto25.4%overDirectgenerationand11.9%overChain-of-Thought“The
artofprogrammingistheartoforganizingcomplexity.”-Edsger
W.DijkstraIntroduceplanningintocodegenerationtohelptheLLMunderstandcomplexintentandreducethedifficultyofproblem-solvingSelf-planningCodeAgent:面向項(xiàng)目級(jí)代碼生成agent基于agent方法的項(xiàng)目級(jí)代碼生成最早工作基本思想:LLM+工具調(diào)用解決復(fù)雜的代碼生成問(wèn)題方法:工具設(shè)計(jì)網(wǎng)絡(luò)搜索工具文檔查詢工具代碼定位工具代碼格式化工具代碼執(zhí)行工具多種Agent策略ReActOpenAIFuncTool-PlanningRule-basedTool
UsageKechiZhang,JiaLi,GeLi,XianjieShi,ZhiJin,CodeAgent:EnhancingCodeGenerationwithTool-IntegratedAgentSystemsforReal-WorldRepo-levelCodingChallenges,ACL
2024提出自合作代碼生成框架,允許LLM
agent通過(guò)角色指令扮演不同的角色,形成虛擬團(tuán)隊(duì),合作解決代碼生成任務(wù)。首次引入軟件開發(fā)方法中的瀑布模型來(lái)組織和管理LLM
agent在虛擬軟件開發(fā)團(tuán)隊(duì)中的合作。[TOSEM,2024]YihongDong,XueJiang,ZhiJin,GeLi,Self-collaborationCodeGenerationviaChatGPT,ACMTransactionsonSoftwareEngineeringandMethodology(TOSEM),2024.
(Accepted).Self-collaborationFrameworkCodingTestingTeamInstantiatingRole
InstructionsAnalyst
Coder TesterAnalysis......Division
of
Labor
TaskStagesLLMRole
InstructionsLLM...LLM...LLM
RolesLLMLLMLLMBlackboardRequirementsCodesCollaboration...InitializedPassed!Task*Wesample4HumanEvaltaskstoconstructexamplesforfew-shotprompting,whichareexcludedinevaluationsof`TheRoleof
Role-playing'Self-collaborationCode
Generation功能示例:項(xiàng)目知識(shí)問(wèn)答功能示例:issue自動(dòng)處理企業(yè)研發(fā)智能化轉(zhuǎn)型的需求及挑戰(zhàn)編碼效率 代碼質(zhì)量 存量代碼優(yōu)化 研發(fā)模式轉(zhuǎn)型 企業(yè)降本增效企業(yè)代碼數(shù)據(jù)和代碼安全企業(yè)領(lǐng)域知識(shí)計(jì)算資源有限研發(fā)效能度量需求挑戰(zhàn)私有化部署GPU多樣性適配企業(yè)個(gè)性化訓(xùn)練企業(yè)管理平臺(tái)解決方案aiXcoder智能化軟件研發(fā)一體機(jī)支持英偉達(dá)A800(2/4/8卡)、V100(4/8卡)、華為昇騰910B(8卡)、天數(shù)智芯天垓150(4卡)等多種
GPU
配置軟硬件一體符合最佳性能支持信創(chuàng)安全解決方案企業(yè)私有化部署開箱即用一體化安全防護(hù)方案流程圖實(shí)施SOP:標(biāo)準(zhǔn)化流程+自動(dòng)化工具=高人效團(tuán)隊(duì)需求梳理模型選型私有化部署個(gè)性化訓(xùn)練模型上線推廣試用持續(xù)反饋和優(yōu)化模型監(jiān)測(cè)持續(xù)優(yōu)化計(jì)算資源參數(shù)規(guī)模模型性能企業(yè)評(píng)測(cè)集構(gòu)建RAG知識(shí)庫(kù)構(gòu)建模型個(gè)性化訓(xùn)練模型自動(dòng)化評(píng)測(cè)開發(fā)語(yǔ)言使用人數(shù)應(yīng)用場(chǎng)景安全掃描服務(wù)部署聯(lián)調(diào)測(cè)試產(chǎn)品培訓(xùn)推廣應(yīng)用約一周約兩周企業(yè)私有化部署企業(yè)專屬測(cè)評(píng)集
-
構(gòu)建方法基于企業(yè)真實(shí)代碼構(gòu)建采用挖空方式構(gòu)建:被挖的代碼就是正確答案,模型根據(jù)上下文預(yù)測(cè)這部分內(nèi)容不同挖空方法:盡可能覆蓋用戶的多樣性使用場(chǎng)景企業(yè)領(lǐng)域知識(shí)與個(gè)性化訓(xùn)練企業(yè)領(lǐng)域知識(shí)行業(yè)業(yè)務(wù)術(shù)語(yǔ)與流程規(guī)范行業(yè)技術(shù)標(biāo)準(zhǔn)與規(guī)范企業(yè)產(chǎn)品和服務(wù)詳細(xì)信息企業(yè)技術(shù)棧編程框架...
...個(gè)性化訓(xùn)練的價(jià)值更準(zhǔn)確的代碼生成更好理解企業(yè)特有業(yè)務(wù)邏輯和技術(shù)細(xì)節(jié)遵循企業(yè)編碼規(guī)范,風(fēng)格統(tǒng)一的代碼幫助新員工快速掌握技術(shù)規(guī)范...
...個(gè)性化訓(xùn)練企業(yè)軟件開發(fā)數(shù)據(jù)企業(yè)代碼設(shè)計(jì)文檔等企業(yè)文檔信息企業(yè)代碼<-->設(shè)計(jì)文檔企業(yè)代碼大模型PEFTSFTRLHFDPORAG企業(yè)領(lǐng)域知識(shí)代碼補(bǔ)全代碼補(bǔ)全代碼補(bǔ)全代碼生成代碼補(bǔ)全代碼生成單元測(cè)試生成代碼ReviewaiXcoder代碼大模型代碼大模型需求文檔設(shè)計(jì)文檔技術(shù)方案?jìng)€(gè)性化訓(xùn)練方案研發(fā)全流程能力提升代碼生成/補(bǔ)全能力提升測(cè)試用例生成能力提升代碼檢視能力提升更高質(zhì)量的代碼生成生成和補(bǔ)全代碼:更符合企業(yè)業(yè)務(wù)邏輯更符合企業(yè)編碼規(guī)范更高的可用率研發(fā)全流程對(duì)領(lǐng)域知識(shí)的理解能力逐級(jí)增強(qiáng)研發(fā)文檔測(cè)試文檔............個(gè)性化訓(xùn)練+RAG
效果示例個(gè)性化訓(xùn)練前個(gè)性化訓(xùn)練后實(shí)際使用效果指標(biāo)核心關(guān)注采納率=
(采納次數(shù)
/
結(jié)果展示次數(shù))*
100%代碼生成占比=
(aiXcoder生成字符數(shù)
/
編碼字符數(shù))
*
100%活躍用戶數(shù)=
一定周期內(nèi)有過(guò)插件使用記錄的用戶數(shù)量效能提升編碼提效率=
(aiXcoder
節(jié)省編碼時(shí)長(zhǎng)
/
理論手動(dòng)編碼時(shí)長(zhǎng))*100%代碼生成全鏈路CPO(CharacterperOpportunity)=
嘗試率
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 幼兒園收費(fèi)申請(qǐng)備案報(bào)告
- 福建省寧德市福安第一中學(xué)高一物理月考試卷含解析
- 福建省寧德市福鼎第七中學(xué)2021-2022學(xué)年高一英語(yǔ)下學(xué)期期末試卷含解析
- 勇氣引領(lǐng)青春夢(mèng)想路
- 廚房紅酒知識(shí)培訓(xùn)課件
- 福建省寧德市頂頭中學(xué)高二數(shù)學(xué)理下學(xué)期期末試卷含解析
- 黑龍江佳木斯市(2024年-2025年小學(xué)六年級(jí)語(yǔ)文)部編版隨堂測(cè)試(上學(xué)期)試卷及答案
- 浙江省金華市(2024年-2025年小學(xué)六年級(jí)語(yǔ)文)部編版能力評(píng)測(cè)((上下)學(xué)期)試卷及答案
- 吉林鐵道職業(yè)技術(shù)學(xué)院《宗教學(xué)》2023-2024學(xué)年第一學(xué)期期末試卷
- 吉林化工學(xué)院《功能涂鍍》2023-2024學(xué)年第一學(xué)期期末試卷
- 小學(xué)四年級(jí)數(shù)學(xué)知識(shí)點(diǎn)總結(jié)(必備8篇)
- GB/T 893-2017孔用彈性擋圈
- GB/T 11072-1989銻化銦多晶、單晶及切割片
- GB 15831-2006鋼管腳手架扣件
- 醫(yī)學(xué)會(huì)自律規(guī)范
- 商務(wù)溝通第二版第4章書面溝通
- 950項(xiàng)機(jī)電安裝施工工藝標(biāo)準(zhǔn)合集(含管線套管、支吊架、風(fēng)口安裝)
- 微生物學(xué)與免疫學(xué)-11免疫分子課件
- 《動(dòng)物遺傳育種學(xué)》動(dòng)物醫(yī)學(xué)全套教學(xué)課件
- 弱電工程自檢報(bào)告
- 民法案例分析教程(第五版)完整版課件全套ppt教學(xué)教程最全電子教案
評(píng)論
0/150
提交評(píng)論