Uzyskiwanie lepszych odpowiedzi przez ustawienie kontekstu czatu Copilot w usłudze GitHub w programie Visual Studio

Czat Copilot w usłudze GitHub można użyć w programie Visual Studio, aby uzyskać informacje o kodowaniu i pomoc techniczną, takie jak składnia, koncepcje programowania, pomoc dotycząca kodu specyficznego dla kontekstu, przypadki testowe, debugowanie i nie tylko, bez opuszczania środowiska IDE. Funkcja Copilot Chat jest zintegrowana z programem Visual Studio, co oznacza, że może zrozumieć, nad czym pracujesz, zbierając przydatne wskazówki dotyczące tego, co masz w środowisku IDE.

Oprócz monitu copilot używa dodatkowego kontekstu, takiego jak kod w bieżącym pliku i historii czatu, aby wygenerować odpowiedź. Z tego artykułu dowiesz się, jak uzyskać lepsze odpowiedzi, podając więcej informacji na temat czatu Copilot, w tym:

  • Użyj poleceń slash, aby szybko określić typowe zadania, takie jak /explain uzyskiwanie wyjaśnień kodu.
  • Określanie zakresu czatu do określonych plików przy użyciu odwołań.
  • Przejrzyj źródło używane przez Copilot, aby wygenerować odpowiedź.
  • Używaj różnych wątków dla każdego czatu Copilot, aby można było zachować różne konteksty w każdym z nich.

Dowiedz się więcej na temat tworzenia aplikacji wspomaganych przez sztuczną inteligencję w programie Visual Studio i sposobu korzystania z czatu Copilot w programie Visual Studio.

Wymagania wstępne

Aby rozpocząć korzystanie z funkcji GitHub Copilot Chat w programie Visual Studio, potrzebne są następujące elementy:

Obsługa czatu Copilot w usłudze GitHub zostanie udostępniona przez usługę GitHub i będzie dostępna pod adresem https://support.github.com.

Używanie poleceń slash w copilot Chat do typowych zadań

Polecenia Slash w aplikacji Copilot Chat ułatwiają szybkie ustawianie intencji dla typowych zadań programistycznych. Używając określonych poleceń ukośnika w celu utworzenia pytania, możesz uzyskać lepsze odpowiedzi bez konieczności pisania długich pytań.

Możesz użyć poleceń ukośnika w oknie czatu lub bezpośrednio w tekście w kodzie, który chcesz zmodyfikować, korzystając z wbudowanej pomocy dotyczącej kodu. Polecenia, które ułatwiają modyfikowanie lub dodawanie do pliku kodu, który został otwarty w edytorze, będą działać zarówno w wbudowanym asystencie kodu, jak i w oknach czatu, podczas gdy polecenia dla bardziej ogólnych pytań kodujących działają tylko w okienku czatu.

Command Użycie Okno czatu Czat wbudowany
/doc Dodaj komentarze dla określonego lub wybranego kodu.
Przykłady:
- /doc DeleteBasketAsync method in BasketService.cs
- wybierz żądany kod i wprowadź /doc
Tak Tak
/wyjaśniać Uzyskaj wyjaśnienia kodu.

Przykłady:
- /explain the AddItemToBasket method in BasketService.cs
- wybierz żądany kod i wprowadź /explain
Tak Tak
/naprawiać Zaproponuj poprawkę problemów w wybranym kodzie.
Przykłady:
- /fix the SetQuantities method in BasketService.cs
- wybierz żądany kod i wprowadź /fix
Tak Tak
/ Generowanie Wygeneruj kod, aby odpowiedzieć na określone pytanie.
Przykład: /generate code to add two numbers in Calculator.cs
Tak Tak
/help Uzyskaj pomoc dotyczącą korzystania z czatu Copilot.
Przykład: /help
Tak Tak
/optimize Analizowanie i ulepszanie czasu wykonywania wybranego kodu.
Przykłady:
- /optimize the AddItemToBasket method in BasketService.cs
- wybierz żądany kod i wprowadź /optimize
Tak Tak
/Testy Utwórz testy jednostkowe dla wybranego kodu.
Przykład: wybierz żądany kod i wprowadź /tests using XUnit Framework
Tak Tak

Zrzut ekranu przedstawiający polecenia ukośnika w wbudowanym widoku czatu i oknach czatu.

Odwołanie: zakres wyników copilot do określonego pliku lub całego rozwiązania

Możesz zadać pytania związane z kodowaniem w języku naturalnym, a funkcja GitHub Copilot Chat odpowie na te pytania w kontekście bazy kodu otwartej w programie Visual Studio. Przy użyciu odwołań możesz uzyskać bardziej szczegółowe informacje, które chcesz wziąć pod uwagę podczas odpowiadania na swoje pytanie.

Wybierając konkretny kontekst w bazie kodu, możesz łatwo tworzyć lepsze pytania bez konieczności zapisywania lub wklejania długich fragmentów informacji. Określenie kontekstu umożliwia również copilotowi dostarczenie bardziej odpowiednich odpowiedzi.

Odwołanie do pliku

Aby łatwo odwołać się do pliku w aplikacji GitHub Copilot Chat, wystarczy dodać # symbol na początku nazwy pliku. Jeśli na przykład masz plik o nazwie BasketService.cs, zapoznaj się z nim w rozmowie jako #BasketService.cs.

Zrzut ekranu przedstawiający odwołania w rozmowie copilot.

Odwołanie do metody, klasy lub funkcji

Za pomocą programu Visual Studio 2022 w wersji 17.11 można teraz odwołać się do określonej metody, klasy lub funkcji w funkcji w aplikacji GitHub Copilot Chat.

Aby łatwo odwołać się do metody, klasy lub funkcji w usłudze GitHub Copilot Chat, wystarczy dodać # symbol na początku metody, klasy lub nazwy funkcji. Jeśli na przykład masz metodę o nazwie BasketAddItem, zapoznaj się z nią w rozmowie jako #BasketAddItem.

Zrzut ekranu przedstawiający odwołania do metod w czacie Copilot w usłudze GitHub w programie Visual Studio.

Odwołanie do całego rozwiązania

Użyj @workspace , aby odwołać się do rozwiązania aktywnego w środowisku IDE na potrzeby kontekstu. W przypadku korzystania z @workspace na potrzeby kontekstu czat Copilot korzysta z informacji o plikach, projektach i konfiguracjach, które są obecnie otwarte i są opracowywane w środowisku IDE. Dzięki temu czat copilot zapewnia bardziej istotne i kontekstowe sugestie i odpowiedzi.

Zrzut ekranu przedstawiający odwoływanie się do kontekstu rozwiązania w rozmowie Copilot.

W programie Visual Studio 2022 w wersji 17.11 subskrybenci usługi GitHub Copilot Enterprise mogą teraz używać @github czatu w celu uwzględnienia kontekstu z całego repozytorium i wyszukiwania w Internecie (jeśli wyszukiwanie jest włączone przez administratora). Aby dowiedzieć się więcej o kolekcji umiejętności specyficznych dla usługi GitHub, których copilot może użyć do odpowiadania na swoje pytanie podczas korzystania z usługi @github, zobacz Korzystanie z umiejętności usługi GitHub dla copilot.

Zrzut ekranu przedstawiający korzystanie z umiejętności usługi GitHub w aplikacji Copilot Chat.

Przykłady użycia

Oto kilka przykładów użycia odwołań do kontroli kontekstu:

Przykład Kontekst używany przez Copilot do utworzenia pytania
Jaki jest cel #MyFile.cs: 66-72? Dokładna sekcja pliku
Gdzie są testy w #BasketService.cs? BasketService.cs
/wyjaśnij #AddItemToBasket w #BasketService.cs AddItemToBasket, metoda w BasketService.cs
Czy w tym miejscu znajduje się metoda usuwania koszyka @workspace Bieżące rozwiązanie otwarte w środowisku IDE
Mam metodę testową o nazwie #TestCalculator. Jak mogę upewnić się, że jest on prawidłowo wykonywany? TestCalculator, metoda
Czy można wyjaśnić różnice między klasami #BasketService i #OrderService? BasketService, klasa i klasa OrderService
W moim @workspace miejscu jest #AddItemToBasket? Bieżące rozwiązanie otwarte w środowisku IDE

Przeglądanie źródeł używanych przez Copilot Chat

Copilot Chat wyświetla kontekst używany po każdym wyniku, dzięki czemu można określić, co zostało uwzględnione podczas odpowiadania na pytanie. Gdy zadajesz pytanie copilot Chat i otrzymasz odpowiedź w oknie czatu, zostanie wyświetlona lista rozwijana Odwołania poniżej odpowiedzi. Wpisy na liście rozwijanej Odwołania pokazują kontekst, do którego odwołuje się czat copilot, aby wygenerować odpowiedź. Te informacje mogą pomóc w zmodyfikowaniu pytania, aby uzyskać lepsze i bardziej istotne odpowiedzi.

Zrzut ekranu przedstawiający listę rozwijaną Odwołania używane w czacie Copilot.

Organizowanie: izolowanie czatów z Copilot w wątki

Jeśli używasz czatu copilot szeroko do zadawania pytań podczas programowania, możesz zorganizować rozmowy w sposób, który utrzymuje je na temat. Czat Copilot dla programu Visual Studio umożliwia teraz łatwe rozpoczęcie nowych konwersacji (wątków), aby skupić się na zadaniu i zachować czytelność kontekstu, aby odpowiedzi były oparte na odpowiedniej historii.

Nowy wątek czatu

Możesz uruchomić nowy wątek, wybierając pozycję Utwórz nowy wątek w oknie czatu.

Zrzut ekranu przedstawiający ikonę Utwórz nowy wątek w rozmowie copilot.

Przełącz wątek czatu

Możesz wybrać między wieloma trwającymi wątkami, aby zapewnić odpowiedni kontekst historyczny dla danego pytania.

Zrzut ekranu przedstawiający przełączanie między trwającymi wątkami w rozmowie Copilot.

Podwyższanie poziomu wbudowanego czatu w oknie czatu

Dzięki programowi Visual Studio 2022 w wersji 17.11 możesz teraz zachować historię czatu wbudowanego, promując go w oknie czatu. Wybierz pozycję Kontynuuj w oknie czatu... aby zachować rekord i kontekst konwersacji i kontynuować w oknie czatu.

Zrzut ekranu przedstawiający promowanie trwającego wątku w tekście czatu w oknie czatu.

Najlepsze rozwiązania

Copilot Chat używa historii czatu, aby uzyskać kontekst dotyczący twojego żądania. Aby dać Copilot tylko odpowiednią historię:

  • Użyj wątków, aby rozpocząć nową konwersację dla nowego zadania.
  • Usuń żądania, które nie są już istotne lub które nie dają żądanego wyniku.

Zachowaj otwartą rozmowę na czacie i kontynuuj iterowanie i monitowanie Copilot o ulepszenie sugerowanego rozwiązania. Copilot ma zarówno kontekst wygenerowanego kodu, jak i bieżącą historię konwersacji. Podczas zadawania dodatkowych pytań Copilot dodatkowo uściśli odpowiedź zgodnie z wymaganiami. Zobacz Prompt engineering for Github Copilot (Monitowanie inżynierii dla narzędzia Github Copilot ), aby uzyskać strategie efektywnego monitowania o poprawę wyników rozwiązania Copilot.

Następne kroki