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

Visual Studio'da GitHub Copilot Sohbet kullanarak 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ğini IDE'den çıkmadan alabilirsiniz. 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:

  • Kod açıklamalarını almak için gibi yaygın görevleri hızla belirtmek için /explain kullanın.
  • Visual Studio 17.12 veya sonraki sürümlerinde bağlamı iyileştirmek için destekli sohbet deneyimini ve özel yönergeleri kullanın.
  • başvurularını kullanarak sohbetin kapsamını belirli dosyalarla daraltın.
  • Yanıtı oluşturmak için Copilot tarafından kullanılan kaynağını gözden geçirin.
  • Her birinde farklı bağlamları koruyabilmeniz için Copilot sohbetlerinizin her biri için farklı yazışmaları kullanın.

Visual Studio 'da yapay zeka destekli geliştirme ve Visual Studio 'da Copilot Sohbeti'nikullanma 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 Sohbeti desteği GitHub tarafından sağlanacaktır ve https://support.github.comadresinden erişilebilir.

Yönlendirme rehberi

Visual Studio 17.12 ve sonraki sürümlerdeki destekli sohbet deneyimi, daha iyi yanıtlar için bağlamı netleştirmek için istemlerinizi iyileştirmenize yardımcı olur. GitHub Copilot Sohbeti artık bağlam belirsiz olduğunda size net sorular konusunda yol gösteriyor.

GitHub Copilot Chat ile destekli sohbet deneyiminin ekran görüntüsü.

Özel yönergeleri etkinleştirme

Özel yönergeler özelliği, sohbet sorularınıza önceden belirtilen bağlamsal ayrıntıları otomatik olarak eklemenize olanak tanır. Copilot Chat, yanıt oluştururken ekibinizin çalışma şekli, kullandığınız araçlar veya projenizin özellikleri gibi belirli bağlamınıza göre uyarlanmış bu yönergeleri kullanır.

Özel yönergeleri yapılandırmak için:

  1. Depo kökünde özel yönergeler dosyası oluşturun/ekleyin .github/copilot-instruction.md.
  2. Araçları>Seçenekleri>GitHub>Copilot aracılığıyla Visual Studio'da özelliği etkinleştirin>seçin (Önizleme) .github/copilot-instructions.md dosyalarından özel yönergelerin yüklenmesini ve isteklere eklenmesini etkinleştirin..

Özel yönergeler Sohbet görünümünde veya satır içi sohbette görünmez. Ancak, Copilot tarafından kullanıldığında,.github/copilot-instructions.md dosyası bir yanıtın Başvurular listesinde listelenir.

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

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.

sohbet penceresinde eğik çizgi komutlarınıveya değiştirmek istediğiniz kodda doğrudan satır içi kod desteğinikullanarak satır içinde 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
/Doktor Belirtilen veya seçili kod için açıklamalar ekleyin.
Örnekler:
- /doc DeleteBasketAsync method in BasketService.cs
- İstediğiniz kodu seçin ve /doc girin
Evet Evet
/açıklamak Kod açıklamalarını alın.

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

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

Copilot sonuçlarını belirli bir dosyayla veya çözümün tamamıyla sınırla

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. Referanslarla, Copilot'un sorunuzu yanıtlarken dikkate almasını istediğiniz bilgiler hakkında daha belirgin hale gelebilirsiniz.

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.

Bir dosyaya atıfta bulunma

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

Copilot Sohbeti'ndeki referansların ekran görüntüsü.

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

Visual Studio 2022 sürüm 17.11artı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 # simgesi eklemeniz yeterlidir. Örneğin, BasketAddItemadlı bir yönteminiz varsa sohbette bunu #BasketAddItemolarak adlandırın.

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

Tüm çözümü referans al

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ı başvuru ekran görüntüsü.

Visual Studio 2022 sürüm 17.11 ile GitHub Copilot Enterprise aboneleri artık sohbetteki @github kullanarak depolarının tamamından bağlam ekleyebilir ve web'de arama yapabilir (yönetici tarafındanarama etkinleştirildiyse). Copilot'un @githubkullanırken sorunuzu 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 Copilot'un soru oluşturması için kullandığı bağlam
#MyFile.cs amacı nedir: 66-72? Dosyanın tam bölümü
#BasketService.cs'daki testler nerede? BasketService.cs
/#AddItemToBasket öğesini #BasketService.cs dosyasında açıklayın BasketService.cs'de AddItemToBasket yöntemi
Bu @workspace sepet silme yöntemi var mı? 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ı
@workspace'ımda #AddItemToBasket nerede? 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 Chat'e soru sorduğunuzda ve sohbet penceresinde yanıt aldığınızda, yanıtın altında Referanslar açılan menüsü görüntülenir. Referanslar açılan listesindeki girdiler, Copilot Chat tarafından bu yanıtı oluşturmak için referans alınan 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 kaynaklar açılır listesinin ekran görüntüsü.

Düzenle: Copilot ile yapılan sohbetleri konu başlıklarına ayırma

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 eldeki göreve odaklanmak için yeni konuşma dizileri başlatmanın ve yanıtların ilgili geçmişe dayalı olması için bağlamı net tutmanın kolay bir yolunu sunuyor.

Yeni sohbet yazışması

Sohbet penceresinde Yeni konu oluştur 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 yazışmalar arasında geçiş yapma ekran görüntüsü.

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

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

Devam eden satır içi sohbeti sohbet penceresine yükseltme 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öreve başlamak için konuları kullanarak yeni bir konuşma başlatı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'ı tekrarlamaya devam edin 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 istemlerle ilgili stratejiler için bkz. GitHub Copilot için komut istemi mühendisliği.

Sonraki adımlar