GitHub projekt , në kuadër të të cilit janë përgatitur modele mësimi të makinerive dhe grupe të dhënash, të nevojshme për analizimin, klasifikimin dhe analizimin e kodit në gjuhë të ndryshme programuese. CodeSearchNet, në përputhje me , përmban një koleksion të madh fragmentesh kodi, të shoqëruara me annotime, që përshkruajnë veprimet që kryhen nga kodi. Komponentët për mësimin e modeleve dhe shembujt e përdorimit të CodeSearchNet janë shkruar në gjuhën Python duke përdorur kornizën Tensorflow dhe nën licencën MIT.
Kur u krijua CodeSearchNet u përdorën teknologji të analizës së tekstit në gjuhën natyrore, që i lejojnë sistemeve të mësimit të makinerive të marrin parasysh jo vetëm karakteristikat sintaktike, por edhe kuptimin e veprimeve që kryhen nga kodi. Në GitHub, sistemi në eksperimentet për organizimin e kërkimit semantik të kodit duke përdorur kërkesat në (për shembull, kur kërkohet "renditja e listës së stringjeve", kthehet kodi që realizon algoritmet përkatëse).
Grupi i propozuar i të dhënave përfshin më shumë se 2 milion lidhje "kod-koment", të përgatitura në bazë të teksteve burimore të bibliotekave ekzistuese të hapura. Kodi mbulon tekstin e plotë burimor të funksioneve ose metodave të veçanta, ndërsa komenti përshkruan veprimet që kryen funksioni (dokumentacioni jep detaje). Aktualisht, grupet e të dhënave janë përgatitur për gjuhët Python, JavaScript, Ruby, Go, Java dhe PHP. Janë ofruar shembuj të përdorimit të grupeve të propozuara të të dhënave për mësimin e llojeve të ndryshme të rrjeteve nervore, duke përfshirë , , (BERT) dhe .
Për zhvillimin e mekanizmave të kërkimit në gjuhën natyrore, është përgatitur gjithashtu grupi CodeSearchNet Challenge, duke përfshirë
me rreth 4 mijë annotime ekspertësh, që përshkruajnë lidhjet më të mundshme me kodin në grupin e të dhënave CodeSearchNet Corpus, që mbulon rreth 6 milion metoda dhe funksione ( rreth 20 GB). CodeSearchNet Challenge mund të shërbejë si një standard për vlerësimin e efektivitetit të metodave të ndryshme të kërkimit të kodit në gjuhën natyrore. Duke përdorur veglat është përgatitur
motorin për kërkimin e kodit.
Burimi: opennet.ru
