IntelliCode: programowanie kodu wspomaganego przez sztuczną inteligencję w programie Visual Studio

Narzędzia GitHub Copilot, GitHub Copilot Chat i IntelliCode umożliwiają programowanie wspomagane przez sztuczną inteligencję w programie Visual Studio, co ułatwia wydajniejsze i wydajne pisanie kodu.

W tym artykule dowiesz się, jak funkcja IntelliCode programu Visual Studio rozszerza tworzenie oprogramowania przy użyciu sztucznej inteligencji, na przykład dostarczając autouzupełniania kodu z uwzględnieniem kontekstu, w tym pełne uzupełnianie wierszy w szarym tekście. Funkcja IntelliCode jest domyślnie dołączana do większości obciążeń programu Visual Studio i jest dostępna za pośrednictwem instalatora programu Visual Studio. Ta funkcja przewiduje najbardziej prawdopodobną poprawną metodę lub właściwość dewelopera do użycia zamiast tylko listy alfabetycznej. Używa bieżącego kontekstu i wzorców kodu dewelopera, aby udostępnić tę listę dynamiczną.

Oprócz udostępniania sugestii dotyczących składowych funkcja IntelliCode udostępnia również uzupełnianie argumentów. Ta funkcja zawiera najbardziej prawdopodobne nazwy argumentów, które będą używane podczas wywoływania metody i umieszcza te sugestie w górnej części listy uzupełniania. Lista uzupełniania zostanie wyświetlona po rozpoczęciu wpisywania wewnątrz nawiasów lub naciśnięciu klawisza Ctrl+Spacja.

Screenshot of argument completion in IntelliCode for Visual Studio.

Funkcja IntelliCode lokalnie śledzi zmiany, wykrywa, kiedy wykonujesz powtarzalną akcję i oferuje sugestie dotyczące zastosowania tej samej akcji w innych, podobnych miejscach (tylko w języku C#). Screenshot of suggestions for C# in Visual Studio.

Autouzupełniania kodu z obsługą kontekstu

Funkcja IntelliCode zapewnia funkcję IntelliSense wspomaganą sztuczną inteligencją dla wielu języków. Sugestie funkcji IntelliCode są wyświetlane w górnej części listy uzupełniania z ikoną gwiazdki obok nich:

Screenshot of starred IntelliSense suggestions using IntelliCode in Visual Studio.

Lista uzupełniania sugeruje najbardziej prawdopodobny poprawny interfejs API dla dewelopera do użycia, zamiast przedstawiać prostą alfabetyczną listę członków. Aby udostępnić tę listę dynamiczną, funkcja IntelliCode używa bieżącego kontekstu i wzorców kodu dewelopera na podstawie tysięcy wysoko ocenianych projektów typu open source w usłudze GitHub. Wyniki tworzą model, który przewiduje najbardziej prawdopodobne i najbardziej odpowiednie wywołania interfejsu API.

Screenshot of C# whole-line autocompletions in Visual Studio.

Deweloperzy języka C# w programie Visual Studio 2022 i nowszych korzystają również z autouzupełniania całego wiersza, które przewidują następny fragment kodu na podstawie bieżącego kodu do tej pory i przedstawiają go jako wbudowane przewidywanie.

Uwaga

Niektóre funkcje intelliCode są nadal dostępne w wersji zapoznawczej, co oznacza, że nie ma gwarancji na przyszłe wsparcie. Funkcje w wersji zapoznawczej są domyślnie wyłączone. Aby włączyć lub wyłączyć funkcje funkcji IntelliCode w wersji zapoznawczej, wybierz pozycję Narzędzia>Opcje>IntelliCode. W obszarze Funkcje w wersji zapoznawczej wybierz pozycję Włącz, Wyłącz lub Domyślne , aby skonfigurować każdą funkcję.

Instalowanie programu IntelliCode dla programu Visual Studio

  1. Pobierz program Visual Studio w wersji 16.4 lub nowszej.
  2. Zainstaluj obsługiwane obciążenie, takie jak programowanie aplikacji klasycznych .NET. Rozszerzenie IntelliCode programu Visual Studio zostanie zainstalowane domyślnie.

Aby wyłączyć rekomendacje funkcji IntelliSense z gwiazdką, wyłącz rozszerzenie, wybierając z menu pozycję Rozszerzenia>Zarządzaj rozszerzeniami, znajdź i wybierz rozszerzenie IntelliCode, a następnie kliknij przycisk Wyłącz.

Obsługiwane języki i obciążenia

Obsługiwane języki uzupełniania intelliSense wspomagane przez sztuczną inteligencję to:

  • C#
  • XAML
  • C++
  • JavaScript i TypeScript, które wymagają języka TypeScript 3.4.2 lub nowszego
  • Visual Basic

Funkcja IntelliCode jest zawarta w programie Visual Studio 2019 w wersji 16.4 w ramach dowolnych z następujących obciążeń:

  • Tworzenie aplikacji na platformie Azure
  • Tworzenie aplikacji klasycznych platformy .NET
  • Tworzenie aplikacji mobilnych za pomocą platformy .NET
  • Opracowywanie gier za pomocą aparatu Unity
  • Tworzenie aplikacji dla wielu platform w środowisku .NET Core
  • Tworzenie aplikacji na platformie ASP.NET i aplikacji internetowych
  • Programowanie rozszerzeń programu Visual Studio
  • Tworzenie aplikacji dla platformy uniwersalnej systemu Windows
  • Programowanie w pakiecie Office/SharePoint
  • Programowanie aplikacji klasycznych w języku C++
  • Programowanie gier w języku C++
  • Tworzenie aplikacji mobilnych w języku C++
  • Programowanie dla systemu Linux w języku C++

Uzupełnienia zespołu

Poprzednie wersje środowiska IntelliCode umożliwiają trenowanie modelu w kodzie, zapewniając posortowane uzupełnianie metod dla platform interfejsu API specyficznych dla zespołu, bibliotek i innych projektów użytkowników. Ta funkcja została zastąpiona modelem uczenia głębokiego, który działa na maszynie i jest dostępny bezpłatnie dla użytkowników języka C#. Zobacz Uaktualnianie niestandardowych modeli uzupełniania zespołu z funkcji IntelliCode do uczenia głębokiego. Funkcja IntelliCode jest bezpłatna dla wszystkich użytkowników programu Visual Studio.

Jeśli jesteś użytkownikiem języka C++, możesz zasubskrybować narzędzie GitHub Copilot na potrzeby tworzenia kodu wspomaganego przez sztuczną inteligencję. Narzędzia GitHub Copilot i Visual Studio IntelliSense współpracują ze sobą w celu ulepszenia uzupełniania kodu; Zobacz Lista funkcji IntelliSense programu Visual Studio może teraz kierować uzupełnianiami kodu w usłudze GitHub Copilot. GitHub Copilot wymaga subskrypcji, ale możesz ją ocenić przy użyciu bezpłatnej wersji próbnej.

Rozwiązywanie problemów z błędami funkcji IntelliCode w programie Visual Studio

Jeśli nie widzisz żadnych sugestii funkcji IntelliCode, być może masz zainstalowane rozszerzenia, które zastępują interfejs użytkownika funkcji IntelliSense. Takie rozszerzenia mogą uniemożliwić wyświetlanie sugestii funkcji IntelliCode "starred" w górnej części listy. Możesz sprawdzić, czy rozszerzenie powoduje to zachowanie, wyłączając je, a następnie ponownie próbujesz użyć funkcji IntelliSense. Ewentualnie, jeśli rozszerzenie go obsługuje, wyłącz jego funkcje automatycznego uzupełniania.

Jeśli wyłączenie rozszerzeń, które zastąpią interfejs użytkownika funkcji IntelliSense, nie rozwiąże problemu, zgłoś je za pomocą funkcji Zgłaszanie problemu w programie Visual Studio i podaj w raporcie funkcję IntelliCode.

Telemetria

Funkcja IntelliCode przechwytuje niektóre anonimowe dane użycia i raportowania błędów, aby pomóc ulepszyć produkt. Do firmy Microsoft nie jest wysyłany żaden kod zdefiniowany przez użytkownika, ale zbieramy informacje o korzystaniu z wyników funkcji IntelliCode. W przypadku sugestii dotyczących modelu podstawowego, które są typami open source lub elementami członkowskimi platformy .NET, przechwycimy, czy wybrano sugestię funkcji IntelliCode i zarejestrujemy nazwę sugestii. Firma Microsoft używa danych do monitorowania jakości modelu podstawowego. W przypadku modeli niestandardowych przechwytujemy, czy wybrano sugestię funkcji IntelliCode, ale nie rejestrujemy nazw typów ani metod zdefiniowanych przez użytkownika.

Aby wyłączyć zbieranie danych dla środowiska IntelliCode, zrezygnuj z programu poprawy jakości środowiska programu Visual Studio. Na pasku menu wybierz pozycję Pomoc>Wyślij opinię> Ustawienia. W oknie dialogowym Visual Studio Experience Improvement Program wybierz pozycję Nie, nie chcę uczestniczyć, a następnie wybierz przycisk OK.

Zobacz też