Visual Studio'da GitHub Copilot Sohbeti bağlamını ayarlayarak daha iyi yanıtlar alın

IDE'den çıkmadan söz dizimi, programlama kavramları, bağlama özgü kod yardımı, test çalışmaları, hata ayıklama ve daha fazlası gibi kodlama bilgilerini ve desteği almak için Visual Studio'da GitHub Copilot Sohbeti'ni kullanabilirsiniz. Copilot Chat, Visual Studio ile tümleşiktir. Bu, IDE'de sahip olduğunuz bilgilerle ilgili yararlı ipuçları toplayarak ne üzerinde çalıştığınızı anlayabileceği anlamına gelir.

Copilot, isteminize ek olarak yanıt oluşturmak için geçerli dosyanızdaki kod ve sohbet geçmişi gibi ek bağlamı kullanır. Bu makalede, Copilot Chat'e aşağıdakiler de dahil olmak üzere daha fazla bilgi sağlayarak daha iyi yanıtlar almayı öğreneceksiniz:

Visual Studio'da yapay zeka destekli geliştirme ve Visual Studio'da Copilot Sohbeti'ni kullanma hakkında daha fazla bilgi edinin.

Önkoşullar

Visual Studio'da GitHub Copilot Sohbet'i kullanmaya başlamak için şunları yapmanız gerekir:

GitHub Copilot Chat desteği GitHub tarafından sağlanacaktır ve adresinden https://support.github.comulaşılabilir.

Ortak görevler için Copilot Chat'te eğik çizgi komutlarını kullanma

Copilot Sohbeti'ndeki eğik çizgi komutları, yaygın geliştirme görevleri için amacı hızla ayarlamanıza yardımcı olur. Sorunuzu oluşturmak için belirli eğik çizgi komutlarını kullanarak uzun sorular yazmak zorunda kalmadan daha iyi yanıtlar alabilirsiniz.

Satır içi kod yardımını kullanarak sohbet penceresinde eğik çizgi komutlarını veya değiştirmek istediğiniz kodun doğrudan satır içi komutlarını kullanabilirsiniz. Düzenleyicide açtığınız kod dosyasını değiştirmeye veya dosyaya eklemeye yardımcı olan komutlar hem satır içi kod yardımcısında hem de sohbet pencerelerinde çalışırken, daha genel kodlama sorularına yönelik komutlar yalnızca sohbet bölmesinde çalışır.

Komut Kullanım Sohbet penceresi Satır içi sohbet
/doc Belirtilen veya seçili kod için açıklamalar ekleyin.
Örnekler:
- /doc DeleteBasketAsync method in BasketService.cs
- istediğiniz kodu seçin ve /doc
Yes Yes
/açıklamak Kod açıklamalarını alın.

Örnekler:
- /explain the AddItemToBasket method in BasketService.cs
- istediğiniz kodu seçin ve /explain
Yes Yes
/düzeltmek Seçili koddaki sorunlar için bir düzeltme önerin.
Örnekler:
- /fix the SetQuantities method in BasketService.cs
- istediğiniz kodu seçin ve /fix
Yes Yes
/oluşturmak Belirtilen soruyu yanıtlamak için kod oluşturun.
Örnek: /generate code to add two numbers in Calculator.cs
Yes Yes
/help Copilot Sohbeti'nin kullanımıyla ilgili yardım alın.
Örnek: /help
Yes Yes
/optimize Seçili kodun çalışma süresini analiz edin ve geliştirin.
Örnekler:
- /optimize the AddItemToBasket method in BasketService.cs
- istediğiniz kodu seçin ve /optimize
Yes Yes
/Test Seçili kod için birim testleri oluşturun.
Örnek: İstediğiniz kodu seçip /tests using XUnit Framework
Yes Yes

Satır içi sohbet görünümünde ve sohbet pencerelerinde eğik çizgi komutlarının ekran görüntüsü.

Başvuru: Copilot sonuçlarını belirli bir dosyaya veya çözümün tamamına kapsam

Kodlamayla ilgili sorularınızı doğal dilde sorabilirsiniz ve GitHub Copilot Chat bunları Visual Studio'da açık olan kod tabanı bağlamında yanıtlar. Başvurularla, Copilot'un sorunuzu yanıtlarken göz önünde bulundurmasını istediğiniz bilgiler hakkında daha ayrıntılı bilgi edinebilirsiniz.

Kod tabanınızda belirli bir bağlamı seçerek, uzun bilgi parçaları yazmak veya yapıştırmak zorunda kalmadan kolayca daha iyi sorular oluşturabilirsiniz. Bağlamın belirtilmesi, Copilot'un size daha ilgili yanıtlar sağlamasına da olanak tanır.

Dosyaya başvurma

GitHub Copilot Chat'te bir dosyaya kolayca başvurmak için, dosya adının başına bir # simge eklemeniz yeterlidir. Örneğin, BasketService.cs adlı bir dosyanız varsa sohbette bu dosyaya #BasketService.cs olarak başvurun.

Copilot Sohbeti'ndeki başvuruların ekran görüntüsü.

Yönteme, sınıfa veya işleve başvurma

Visual Studio 2022 sürüm 17.11 ile artık GitHub Copilot Chat'te belirli bir yönteme, sınıfa veya işleve başvurabilirsiniz.

GitHub Copilot Chat'te bir yönteme, sınıfa veya işleve kolayca başvurmak için yöntem, sınıf veya işlev adının başına bir # simge eklemeniz yeterlidir. Örneğin, BasketAddItem adlı bir yönteminiz varsa sohbette bunu #BasketAddItem olarak adlandırın.

Visual Studio'da GitHub Copilot Sohbeti'ndeki yöntemlere yapılan başvuruların ekran görüntüsü.

Çözümün tamamına başvurma

bağlam için IDE'de etkin olan çözüme başvurmak için @workspace kullanın. Bağlam için @workspace kullanırken, Copilot Chat şu anda açık olan ve IDE'nizde üzerinde çalışılan dosyalar, projeler ve yapılandırmalar hakkındaki bilgilerden yararlanıyor. Bu, Copilot Sohbet'in daha ilgili ve bağlama duyarlı öneriler ve yanıtlar sağlamasına olanak tanır.

Copilot Sohbeti'nde çözüm bağlamını belirtme işleminin ekran görüntüsü.

Visual Studio 2022 sürüm 17.11 ile GitHub Copilot Enterprise aboneleri artık @github sohbette kullanarak depolarının tamamından bağlam ekleyebilir ve web'de arama yapabilir (arama yöneticiniz tarafından etkinleştirildiyse). Copilot'un kullanırken @githubsorunuzu yanıtlamak için kullanabileceği GitHub'a özgü becerilerin koleksiyonu hakkında daha fazla bilgi edinmek için bkz . Copilot için GitHub becerilerini kullanma.

Copilot Chat'te GitHub becerilerini kullanmanın ekran görüntüsü.

Kullanım örnekleri

Bağlam denetimi için başvuruların kullanılmasına ilişkin bazı örnekler aşağıda verilmiştir:

Örnek Soruyu oluşturmak için Copilot tarafından kullanılan bağlam
#MyFile.cs amacı nedir: 66-72? Dosyanın tam bölümü
#BasketService.cs'daki testler nerede? BasketService.cs
/#AddItemToBasket #BasketService.cs açıklayın BasketService.cs'de AddItemToBasket yöntemi
Bu işlemde bir silme sepeti yöntemi var mı? @workspace Geçerli çözüm IDE'de açık
#TestCalculator adlı bir test yöntemim var. Doğru şekilde yürütülmesini nasıl sağlayabilirim? TestCalculator yöntemi
Sınıflar #BasketService ile #OrderService arasındaki farkları açıklayabilir misiniz? BasketService sınıfı ve OrderService sınıfı
#AddItemToBasket nerede?@workspace Geçerli çözüm IDE'de açık

Copilot Chat tarafından kullanılan kaynakları gözden geçirin

Copilot Chat her sonuçtan sonra kullandığı bağlamı görüntüler, böylece sorunuzu yanıtlarken nelerin dikkate alındığını anlayabilirsiniz. Bir Copilot Sohbeti'ne soru sorduğunuzda ve sohbet penceresinde yanıt aldığınızda, yanıtın altında Bir Başvurular açılan listesi görüntülenir. Başvurular açılan listesindeki girdiler, Copilot Chat tarafından bu yanıtı oluşturmak için başvuruda bulunan bağlamı gösterir. Bu bilgiler, sorunuzu daha iyi ve daha ilgili yanıtlar elde etmek için değiştirmenize yardımcı olabilir.

Copilot Sohbeti'nde kullanılan başvurular açılan listesinin ekran görüntüsü.

Düzenleme: Copilot ile sohbetleri yazışmalar halinde yalıtma

Kod yazarken soru sormak için Copilot Chat'i kapsamlı bir şekilde kullanıyorsanız, konuşmalarınızı konu başlığı altında olacak şekilde düzenleyebilirsiniz. Visual Studio için Copilot Sohbeti artık yeni konuşmalar (iş parçacıkları) başlatarak eldeki göreve odaklanmalarını ve yanıtların ilgili geçmişe dayanması için bağlamı net tutmanın kolay bir yolunu sunuyor.

Yeni sohbet yazışması

Sohbet penceresinde Yeni yazışma oluştur'u seçerek yeni bir yazışma başlatabilirsiniz.

Copilot Sohbeti'nde Yeni yazışma oluştur simgesinin ekran görüntüsü.

Sohbet yazışması değiştirme

Sorunuz için doğru geçmiş bağlamı sağlamak üzere devam eden birden çok iş parçacığı arasından seçim yapabilirsiniz.

Copilot Sohbeti'nde devam eden iş parçacıkları arasında geçiş yapma işleminin ekran görüntüsü.

Satır içi sohbeti sohbet penceresine yükseltme

Visual Studio 2022 sürüm 17.11 ile artık sohbet penceresine tanıtarak satır içi sohbetinizin geçmişini koruyabilirsiniz. Sohbet penceresinde devam et... öğesini seçerek konuşmanın kaydını ve bağlamını koruyun ve sohbet penceresinde devam edin.

Satır içi sohbette devam eden yazışmayı sohbet penceresine yükseltme işleminin ekran görüntüsü.

En iyi yöntemler

Copilot Chat, isteğinizle ilgili bağlamı almak için sohbet geçmişini kullanır. Copilot'a yalnızca ilgili geçmişi vermek için:

  • Yeni bir görev için yeni bir konuşma başlatmak için iş parçacıklarını kullanın.
  • Artık ilgili olmayan veya size istenen sonucu vermeyen istekleri silin.

Sohbet konuşmasını açık tutun ve önerilen çözümü geliştirmek için Copilot'ı yinelemeye ve istemde bulunun. Copilot hem oluşturulan kodun bağlamını hem de geçerli konuşma geçmişinizi içerir. Siz ek sorular sormaya devam ettikçe, Copilot yanıtı gereksinimlerinize göre daha da iyileştirmektedir. Copilot sonuçlarınızı iyileştirmeye yönelik etkili istem stratejileri için bkz. Github Copilot için mühendislik istemi.

Sonraki adımlar