Aktualizacja GitHub Copilot powstrzymuje modele AI przed ujawnianiem firmowych sekretów

GitHub zaktualizował model AI Copilota, asystenta programowania, który generuje w czasie rzeczywistym kod źródłowy i rekomendacje funkcji w Visual Studio.

Firma twierdzi, że nowy model AI, który zostanie wdrożony do użytkowników w tym tygodniu, oferuje lepsze jakościowo sugestie w krótszym czasie, dodatkowo poprawiając wydajność programistów korzystających z niego poprzez zwiększenie współczynnika akceptacji. Copilot wprowadzi nową klasę o nazwie „Fill-In-the-Middle”, która wykorzystuje bibliotekę znanych sufiksów kodu i pozostawia lukę do wypełnienia przez narzędzie AI, osiągając lepszą trafność i spójność z resztą kodu projektu. Dodatkowo, GitHub zaktualizował klienta Copilot, aby zmniejszyć niechciane sugestie o 4,5% w celu poprawy ogólnych wskaźników akceptacji kodu.

„Kiedy po raz pierwszy uruchomiliśmy GitHub Copilot dla osób indywidualnych w czerwcu 2022 roku, ponad 27% plików kodu deweloperów było średnio generowanych przez GitHub Copilot” – powiedział starszy dyrektor ds. Zarządzania produktem Shuyin Zhao.

„Dziś GitHub Copilot stoi za średnio 46% kodu dewelopera we wszystkich językach programowania – a w Javie ta liczba rośnie do 61%”.

Jednym z najważniejszych usprawnień w tej aktualizacji Copilota jest wprowadzenie nowego systemu filtrowania luk w zabezpieczeniach, który pomoże zidentyfikować i zablokować niezabezpieczone sugestie, takie jak hardcoded credentials, path injections i SQL injections.

„Nowy system wykorzystuje LLM (duże modele językowe) do przybliżenia zachowania narzędzi do analizy statycznej – a ponieważ GitHub Copilot uruchamia zaawansowane modele AI na potężnych zasobach obliczeniowych, jest niewiarygodnie szybki i może nawet wykryć podatne wzorce w niekompletnych fragmentach kodu” – powiedział Zhao.

„Oznacza to, że niezabezpieczone wzorce kodowania są szybko blokowane i zastępowane alternatywnymi sugestiami”.

Firma programistyczna twierdzi, że Copilot może samodzielnie odkrywać zabezpieczenia, takie jak klucze, dane uwierzytelniające i hasła widziane w danych treningowych. Jednak od teraz nie będzie ich wykorzystywać, ponieważ dbają o to odpowiednie filtry, które w czasie rzeczywistym blokują tego typu informacje.

W tym momencie, LLM Copilota są nadal szkolone w zakresie rozróżniania podatnych i niepodatnych na ataki wzorców kodu, więc oczekuje się, że wydajność modelu AI w tym zakresie będzie się stopniowo poprawiać w najbliższej przyszłości.