GitHub Copilot istemlerini ve anahtar sözcükleri inceleme

Tamamlandı

GitHub Copilot sohbet arabirimi, istemlerinizi yorumlamak ve ilgili yanıtlar sağlamak için doğal dil işleme ve makine öğrenmesi kullanır. İstemleriniz ve sağladığınız bağlam, doğru ve yararlı yanıtlar oluşturmak için gereklidir.

İstem kalitesi

GitHub Copilot için istemler yazarken, yanıtların kalitesini artırmak için aşağıdaki yönergeleri göz önünde bulundurun:

  • Gönderdiğiniz istemler net, kısa ve belirli olmalıdır. Örneğin, "Bu işlevi nasıl kullanırım?" sorusunu sormak yerine "İşlevin calculateTotal dosyada shoppingCart.js nasıl çalıştığını açıklayabilir misiniz?" sorusunu sorabilirsiniz.

  • Daha uzun bir istem yazmanız gerektiğinde, istem birkaç kısa cümle kullanılarak yazılmalıdır. Hedefinizi açıklayan bir genel bakışla başlayın ve ardından belirli ayrıntıları sağlayın.

  • Karmaşık istemleri daha küçük ve daha yönetilebilir parçalara ayırmayı göz önünde bulundurun. Karmaşık istemleri bölmek, yapay zekanın amacınızı anlamasına ve daha doğru yanıtlar sağlamasına yardımcı olur. Sonraki istemler önceki istemler üzerinde derlenebilir ve böylece isteğinizi daraltabilir ve daha ayrıntılı yanıtlar alabilirsiniz. Eş programcıyla çalışmak, bir kişiyle çalışmaya benzer. Her şeyi yanlış yorumlanabilecek tek bir istekte göndermek yerine önce konuşmanızı çerçeveli yapmak ve ardından belirli ayrıntıları açıklamak daha iyidir.

İstem anahtar sözcüklerini kullanma

GitHub Copilot Sohbet, doğal dil metnini işlemeye ek olarak, istemlerinizin bağlamını ve amacını belirtmenize yardımcı olmak için anahtar sözcükleri kullanır. Anahtar sözcükler, sohbet GitHub Copilot bağlamında belirli anlamlara sahip özel sözcükler veya tümceciklerdir. Anahtar sözcükleri kullanarak yapay zekanın ne istediğinizi anlamasına yardımcı olabilir ve daha ilgili yanıtlar sağlayabilirsiniz.

GitHub Copilot, istemlerinizin bağlamını ve amacını belirtmenize yardımcı olması için aşağıdaki anahtar sözcükleri kullanır:

  • Sohbet katılımcıları: Sohbet katılımcıları, GitHub Copilot daha iyi yanıtlar oluşturmalarına yardımcı olan belirli bir alandaki uzmanlar gibidir. Sohbet katılımcıları simgesi kullanılarak @ belirtilir.

  • Slash komutları: Slash komutları, komut isteminizin amacı (amaç veya hedef) açıklamaya yardımcı olur. GitHub Copilot Sohbet'in soruları yanıtlarken görevlerinden biri amacı belirlemek ve ne yapmak istediğinizi anlamaktır. Eğik çizgi komutları amacınızı netleştirmenize yardımcı olabilir.

  • Sohbet değişkenleri: Sohbet değişkenleri etki alanına özgü bağlam sağlar. Sohbet isteminize bir sohbet değişkeni eklemek için # sembolünü kullanabilirsiniz. Sohbet değişkeni kullanarak, sohbet isteminize eklediğiniz bağlam hakkında daha ayrıntılı olabilirsiniz.

Sohbet katılımcıları

GitHub Copilot Sohbet, ilgilendiğiniz bağlamı anladığında daha iyi yanıtlar sağlar ve en iyi kaynakları uygulayabilir. İstemlerinize bir Sohbet katılımcısı ekleyerek GitHub Copilot Chat'in daha iyi yanıtlar oluşturmasına yardımcı olabilirsiniz. Sohbet katılımcıları, daha iyi yanıtlar sağlayan belirli bir alandaki uzmanlar gibidir. Sohbet katılımcıları simgesi kullanılarak @ belirtilir.

Şu anda GitHub Copilot Sohbet aşağıdaki yerleşik sohbet katılımcılarını destekler:

  • @workspace: Katılımcı, @workspace çalışma alanınızdaki kod hakkındaki soruları yanıtlamaya yardımcı olabilir veya kodunuzu yeniden düzenlemenin veya geliştirmenin yollarını önerebilir.
  • @vscode: @vscode katılımcısı, Visual Studio Code düzenleyicisindeki komutları ve özellikleri bilir ve bunları kullanmanıza yardımcı olabilir.
  • @terminal: @terminal katılımcısı, entegre terminal kabuğu ve içeriği konusunda yardımcı olabilir.
  • @github: Katılımcı @github , web aramasında, kod aramasında ve kuruluşunuzun bilgi bankalarında temellenmiş yanıtlar almanıza yardımcı olabilir.

Belirli bir sohbet katılımcısının ön ekini isteminize ekleyerek GitHub Copilot'un daha ilgili bir yanıt üretmesine yardımcı olabilirsiniz.

Eğik çizgi komutları

Eğik çizgi komutları, bir soru sorduğunuzda GitHub Copilot Chat'in amacınızı anlamasına yardımcı olur. Bir kod tabanı (/explain ) hakkında bilgi ediniyor musunuz, bir sorunu giderme konusunda yardım mı istiyorsunuz (/fix veya test çalışmaları mı oluşturuyorsunuz (/tests)? GitHub Copilot Sohbet'e ne yapmaya çalıştığınızı bildirerek, yanıtını görevinize göre ayarlayabilir ve size yararlı komutlar, ayarlar ve kod parçacıkları sunabilir.

Sohbet katılımcıları genellikle eğik çizgi komutları ile birlikte gelir. Slash komutu, amacınızı sohbet katılımcısına açıklamanın kısa bir yoludur. Eğik çizgi /explain komutu genellikle @workspace sohbet katılımcısıyla birlikte paketlenir. Sohbet katılımcısı ile eğik çizgi komutunun birleşimi, amacınızı netleştirmenin güçlü bir yoludur.

Örneğin, aşağıdaki örnek istemi göz önünde bulundurun:

Create a new workspace that uses Node.js, the Express framework, the Pug template engine, and TypeScript.

GitHub Copilot bu istemi belirtilen teknolojiler kullanılarak oluşturulan yeni kod projesi isteği olarak yorumlayabilir, ancak GitHub Copilot anahtar sözcükleri kullanan aşağıdaki istemi anlamak daha kolaydır:

@workspace /new Node.js Express Pug TypeScript

İkinci istemi girerseniz, GitHub Copilot aşağıdaki dizin yapısını önerir. Dosya listesi, önerilen dosyaların önizlemesini görüntülemek için ve Çalışma Alanı Oluştur düğmesi de dosyaları yeni bir klasörde oluşturmak için kullanılabilir.

Sohbet görünümünde

Yerleşik eğik çizgi komutlarının örnekleri:

  • /help: GitHub Copilot kullanma hakkında yardım alın.
  • /doc: Kod belgeleri oluşturun.
  • /clear: Yeni bir sohbet oturumu başlatın.
  • /explain: Seçili kodun nasıl çalıştığını açıklayın.
  • /tests: Seçili kod için birim testleri oluşturun.
  • /fix: Seçili kod için bir düzeltme önerin.
  • /new: Yeni bir çalışma alanı için iskele kodu. Bağlam olarak yalnızca sohbet istemi kullanılır.
  • /newNotebook: Yeni bir Jupyter Notebook oluşturun. Bağlam olarak yalnızca sohbet istemi kullanılır.

Sohbet katılımcılarını eğik çizgi komutlarıyla kullanma örnekleri:

  • @workspace /explain: Çalışma alanının tamamının açıklamasını oluşturun.
  • @workspace /fix (veya /fix): Seçili koddaki sorunlar için bir düzeltme önerin.
  • @workspace /tests (veya /tests): Seçili kod için birim testleri oluşturun.
  • @vscode /api (veya /api): Visual Studio Code uzantı geliştirme hakkında sorun.
  • @workspace /new (veya /new): Yeni bir çalışma alanı için yapı iskelesi kodu.
  • @workspace /newNotebook (veya /newNotebook): Yeni bir Jupyter Notebook oluşturun.

Sohbet değişkenleri

Sohbet değişkenleri bağlamı belirtmek için kullanılır. Sohbet isteminizde bir sohbet değişkenine # sembolünü kullanarak başvurabilirsiniz. Örneğin, #selection değişken etkin düzenleyicide metin seçimini içerir.

Sohbet değişkeni kullanarak, sohbet isteminize eklediğiniz bağlam hakkında daha ayrıntılı olabilirsiniz. Örneğin, "hangi sıralama algoritmasının içinde #selectionkullanıldığı" istemi, sohbet isteğini seçili kod parçacığına odaklar.

veya @workspacegibi @vscode sohbet katılımcıları, etki alanına özgü bağlam sağlayan sohbet değişkenlerine katkıda bulunabilir.

Yerleşik sohbet değişkenlerine örnek olarak şunlar verilebilir:

  • #editor: etkin düzenleyicideki görünür kaynak kodu.
  • #selection: etkin düzenleyicideki geçerli seçim. Düzenleyici içeriği, Sohbet görünümü bağlamında örtük olarak bulunur.
  • #<file or folder name>: sohbet bağlamı olarak eklemek için #, ardından bir dosya veya klasör adı yazın.
  • #codebase: isteminize bağlam olarak ilgili çalışma alanı içeriğini ekleyin.
  • #terminalSelection: etkin terminalin seçimi.
  • #terminalLastCommand: etkin terminalin son çalıştırma komutu.

ile arasındaki @workspace#codebasefark nedir?

Kavramsal olarak, hem @workspace hem de #codebase, kod tabanınızın tamamı hakkında sorular sormanıza olanak tanır. Ancak, bunları nasıl kullanabileceğiniz konusunda bazı farklılıklar vardır:

Anahtar sözcük hakkında @workspace :

  • Anahtar @workspace sözcük, kod tabanınızla ilgili soruları yanıtlamaya adanmış bir sohbet katılımcısıdır.
  • anahtar @workspace sözcüğü, kullanıcı isteminin denetimini alır ve bir yanıt sağlamak için kod tabanını kullanır.
  • anahtar @workspace sözcüğü diğer araçları çağıramaz.
  • "@workspace anahtar sözcüğü yalnızca 'Sor' ajan modunu kullanırken kullanılabilir."
  • Örnek: "@workspace how can I validate a date?"

Anahtar sözcük hakkında #codebase :

  • anahtar #codebase sözcüğü, kullanıcı istemini temel alan bir kod tabanı araması gerçekleştiren ve ilgili kodu sohbet istemine bağlam olarak ekleyen bir araçtır.
  • #codebase anahtar sözcüğünü kullandığınızda, dil modeli kontrolü elinde tutar ve #codebase diğer araçlarla birleştirilerek düzenleme senaryoları için kullanılabilir.
  • Anahtar #codebase sözcük tüm sohbet modlarında (Ask, Agent ve Plan) kullanılabilir.
  • Örnekler: "add a tooltip to this button, consistent with other button #codebase", "add unit tests and run them #codebase"

GitHub, daha fazla esneklik sağladığı için sohbet istemlerinizde #codebase kullanmanızı önerir.

Özet

GitHub Copilot sohbet arabirimi, istemlerinizi yorumlamak ve ilgili yanıtlar sağlamak için doğal dil işleme ve makine öğrenmesi kullanır. İstemleriniz ve sağladığınız bağlam, doğru ve yararlı yanıtlar oluşturmak için gereklidir. Açık, özlü ve belirli istemler kullanarak, karmaşık istemleri daha küçük parçalara ayırarak ve sohbet katılımcıları, eğik çizgi komutları ve sohbet değişkenleri gibi anahtar sözcükleri kullanarak yanıtların kalitesini artırabilirsiniz.