IntelliCode: Visual Studio에서 AI 지원 코드 개발

GitHub Copilot, GitHub Copilot 채팅 및 IntelliCode는 Visual Studio에서 AI 지원 개발을 지원하므로 코드를 작성할 때 생산성과 효율성을 높일 수 있습니다.

이 문서에서는 예를 들어 회색 텍스트로 전체 줄 완성을 포함하여 컨텍스트 인식 코드 자동 완성을 제공하여 Visual Studio IntelliCode가 인공 지능을 사용하여 소프트웨어 개발을 향상시키는 방법에 대해 알아봅니다. IntelliCode는 기본적으로 대부분의 Visual Studio 워크로드에 포함되며 Visual Studio 설치 관리자를 통해 사용할 수 있습니다. 이 기능은 개발자가 사전순 목록 대신 사용할 수 있는 가장 적합한 메서드 또는 속성을 예측합니다. 개발자의 현재 코드 컨텍스트 및 패턴을 사용하여 이 동적 목록을 제공합니다.

IntelliCode는 멤버 제안을 제공할 뿐만 아니라 인수 완성 기능도 제공합니다 . 이 기능은 메서드를 호출할 때 사용할 가능성이 가장 높은 인수 이름을 별표로 표시하고, 이러한 제안을 완성 목록의 맨 위에 배치합니다. 괄호 안에 입력을 시작하거나 Ctrl+스페이스를 누르면 완성 목록이 나타납니다.

Screenshot of argument completion in IntelliCode for Visual Studio.

IntelliCode는 로컬에서 편집 내용을 추적하고, 반복적인 작업을 수행하는 경우를 검색하고, 기타 유사한 위치에서 동일한 작업을 적용하도록 제안 합니다(C#만 해당). Screenshot of suggestions for C# in Visual Studio.

컨텍스트 인식 코드 자동완성

IntelliCode는 여러 언어에 AI 지원 IntelliSense를 제공합니다. IntelliCode 제안은 완성 목록의 위쪽에서 별표 아이콘 옆에 표시됩니다.

Screenshot of starred IntelliSense suggestions using IntelliCode in Visual Studio.

완성 목록은 간단한 사전순 멤버 목록을 제공하는 것이 아니라 개발자가 사용하는 데 가장 적합한 API를 제안합니다. 이 동적 목록을 제공하기 위해 IntelliCode는 개발자의 현재 코드 컨텍스트와 GitHub에서 높은 평가를 받은 수천 개의 오픈 소스 프로젝트를 기반으로 하는 패턴을 사용합니다. 그 결과 가능성과 관련성이 가장 높은 API 호출을 예측하는 모델이 형성됩니다.

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

Visual Studio 2022 이상의 C# 개발자는 지금까지의 현재 코드를 기반으로 코드의 다음 청크를 예측하여 인라인 예측으로 제공하는 전체 줄 자동완성을, 활용할 수도 있습니다.

참고 항목

IntelliCode의 기능 중 일부는 아직 미리 보기로 있으므로 향후 지원이 보장되지 않습니다. 미리 보기 기능은 기본적으로 비활성화되어 있습니다. IntelliCode 미리 보기 기능을 사용하거나 사용하지 않도록 설정하려면 도구>옵션>IntelliCode를 차례로 선택합니다. 미리 보기 기능 아래에서 사용, 사용 안 함 또는 기본값을 선택하여 각 기능을 구성합니다.

Visual Studio용 IntelliCode 설치

  1. Visual Studio 버전 16.4 이상을 다운로드합니다.
  2. .NET 데스크톱 개발과 같이 지원되는 워크로드를 설치합니다. Visual Studio IntelliCode는 기본적으로 설치됩니다.

별표가 지정된 IntelliSense 권장 사항을 해제하려면 메뉴에서 확장>관리 확장을 선택하여 확장을 사용하지 않도록 설정하고 IntelliCode 확장을 찾아 선택한 다음 사용 안 함을 클릭합니다.

지원되는 언어 & 워크로드

AI 지원 IntelliSense 완성에 지원되는 언어는 다음과 같습니다.

  • C#
  • XAML
  • C++
  • JavaScript 및 TypeScript는 TypeScript 3.4.2 이상 필요
  • Visual Basic

IntelliCode는 Visual Studio 2019 버전 16.4에 다음 워크로드의 일부로 포함되어 있습니다.

  • Azure 개발
  • .NET 데스크톱 개발
  • .NET을 사용한 모바일 개발
  • Unity를 사용한 게임 개발
  • .NET Core 플랫폼 간 개발
  • ASP.NET 및 웹 개발
  • Visual Studio 확장 개발
  • 유니버설 Windows 플랫폼 개발
  • Office/SharePoint 개발
  • C++를 사용한 데스크톱 개발
  • C++를 사용한 게임 개발
  • C++를 사용한 모바일 개발
  • C++를 사용한 Linux 개발

팀 완성

이전 버전의 IntelliCode는 코드에서 모델을 학습시키는 방법을 제공하여 팀별 API 프레임워크, 라이브러리 및 기타 사용자 프로젝트에 대해 정렬된 메서드 완성을 제공했습니다. 이 기능은 컴퓨터에서 실행되고 C# 사용자가 자유롭게 사용할 수 있는 딥 러닝 모델로 대체되었습니다. IntelliCode 사용자 지정 팀 완성 모델에서 딥 러닝으로 업그레이드를 참조하세요. IntelliCode는 모든 Visual Studio 사용자에게 무료로 제공됩니다.

C++ 사용자인 경우 AI 지원 코드 개발을 위해 GitHub Copilot를 구독할 수 있습니다. GitHub Copilot 및 Visual Studio IntelliSense는 함께 작동하여 코드 완성을 개선합니다. Visual Studio의 IntelliSense 목록을 참조 하여 GitHub Copilot 코드 완성을 조정합니다. GitHub Copilot에는 구독이 필요하지만 평가판으로 평가할 수 있습니다.

Visual Studio에서 IntelliCode 오류 문제 해결

IntelliCode 제안이 표시되지 않는 경우 IntelliSense UI를 재정의하는 확장이 설치되어 있을 수 있습니다. 이러한 확장은 IntelliCode "별표 표시" 제안이 목록의 맨 위에 표시되지 않을 수 있습니다. 이 기능을 해제한 다음, IntelliSense를 다시 실행하여 확장이 이 동작을 유발하는지 확인할 수 있습니다. 또는 확장에서 지원하는 경우 자동 완성 기능을 해제합니다.

IntelliSense UI를 재설정 확장 기능 사용 안함으로 여전히 문제가 해결되지 않으면 Visual Studio 문제 보고를 사용하여 IntelliCode를 보고서에 언급하면서 해당 문제를 보고합니다.

원격

IntelliCode는 제품을 향상시키기 위해 일부 익명화된 사용량 및 오류 보고 데이터를 캡처합니다. 사용자 정의 코드는 Microsoft에 보내지 않지만 IntelliCode 결과 사용에 대한 정보는 수집됩니다. 오픈 소스 또는 .NET의 형식과 멤버인 기본 모델 제안의 경우 IntelliCode 제안을 선택했는지 여부를 캡처하고 제안의 이름을 기록합니다. Microsoft는 이 데이터를 사용하여 기본 모델의 품질을 모니터링합니다. 사용자 지정 모델의 경우 IntelliCode 제안을 선택했는지 여부를 캡처하지만 사용자 정의 형식 또는 메서드의 이름은 기록하지 않습니다.

IntelliCode에 대한 데이터 수집을 해제하려면 Visual Studio 환경 개선 프로그램을 옵트아웃합니다. 메뉴 표시줄에서 도움말>의견 보내기>설정을 선택합니다. Visual Studio 환경 개선 프로그램 대화 상자에서 아니요, 참여하지 않겠습니다를 선택한 후 확인을 선택합니다.

참고 항목