다음을 통해 공유


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

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

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

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

Visual Studio용 IntelliCode의 인수 완성 스크린샷

IntelliCode는 로컬로 편집 내용을 추적하고, 반복적인 작업을 수행하는 경우를 감지하고, 유사한 다른 위치(C#에만 해당)에서 동일한 작업을 적용하는 제안을 제공합니다. Visual Studio의 C#에 대한 제안 스크린샷

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

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

Visual Studio에서 IntelliCode를 사용하는 별표가 표시된 IntelliSense 제안 스크린샷

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

Visual Studio의 C# 전체 줄 자동 완성 스크린샷

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 환경 개선 프로그램 대화 상자에서 아니요, 참여하지 않겠습니다를 선택한 후 확인을 클릭합니다.

참고하십시오