550W (@failed-to-load)代码库索引的原理w 中发帖

基于嵌入模型的代码库索引
1、代码库索引的进化史
在项目开发里,要快速的找到和当前需求有关的代码,都是一件很麻烦的事。传统的查找办法(诸如grep或者Lucene倒排索引之类的东西w)在寻找具体的函数中确实很厉害,但是对于记不住自己写的函数的函数名的程序员(这真的记得住吗w……),肯定只知道函数是拿来干啥的,但是grep之类的东西面对自然语言肯定就是起不了什么用的(除非你的注释写的很好w,但是很明显概率很小……)
随着AI的出现和Transformer架构的普及,基于Embedding model的AI代码搜索就被发明了。(其实确切的来讲,应该叫神经代码搜索,Neural Code Search的w,但是我也不想知道……)简单来讲,就是把离散的代码片段和大白话映射到一个向量中,然后AI就可以借此“理解”代码的含义(就是差不多像有一个翻译吧w……,但是我觉得其实更像Hash一类的映射吧)
...