Použití editoru kódu k psaní a úpravám kódu YAML v tématech

Témata lze psát a upravovat v editoru kódu, který podporuje YAML. YAML znamená „YAML není značkovací jazyk“. YAML se typicky používá k zápisu konfiguračních souborů a je čitelnější než XML nebo JSON. Soubory YAML používají příponu .yaml nebo .yml. Soubory YAML formátujete pomocí mezer a odsazení, abyste reprezentovali datové struktury, jako jsou řetězce, čísla, logické hodnoty, seznamy a slovníky.

Chcete-li získat přístup k editoru kódu z tématu, vyberte () Další v panelu nástrojů a poté vyberte Otevřít editor kódu.

Podívejte se na toto video a získejte přehled, jak používat YAML v editoru kódu:

Důležité

Každý tvůrce může použít editor kódu k prozkoumání konfigurace tématu. Vývojáři a pokročilí uživatelé mohou vytvářet návrhy a upravovat je v editoru kódu. Buďte však opatrní při provádění revizí v editoru kódu. Chyby v interpunkci nebo syntaxi mohou způsobit složitá chybová hlášení nebo narušit probíhající konverzaci. Technická podpora nemůže pomoci s opravou chyb v editoru kódu. Pokud s revizí YAML začínáte, vytvořte si kopii tématu před provedením jakýchkoli změn.

Kdy použít editor kódu

Copilot Studio nevyžaduje, abyste psali YAML od začátku. Místo toho se YAML generuje automaticky, když vytváříte objekty na plátně tématu. Poté můžete buď zkontrolovat konfiguraci v editoru kódu, abyste lépe porozuměli nastavení, nebo se můžete rozhodnout provést změny kódu YAML. Příklady použití editoru kódu:

  • Editor kódu zobrazuje úplnou konfiguraci tématu, aniž by bylo nutné pracovat s jednotlivými prvky dialogu v tématu. Je to vše na jednom místě pro zobrazení všech nastavení v tématu.
  • Tvůrci se mohou rozhodnout zkopírovat konkrétní uzly z tématu a vložit je do jiných témat namísto použití ikon Kopírovat a Vložit. Může to být jednodušší než výběr více uzlů konfigurace.
  • Tvůrci se můžou rozhodnout aktualizovat ID toku Power Automate v YAML místo čekání na synchronizaci v nabídce Volání a akce.
  • Tvůrci se mohou rozhodnout klonovat a revidovat uzly Otázka nebo Zpráva, pokud jsou podobné. V takových případech je však zásadní zajistit, aby všechna ID a proměnné zůstaly jedinečné. Nezapomeňte upravit klonovaná ID, tak aby byla jedinečná.
  • Tvůrci mohou provádět jednoduché úpravy v editoru kódu, například přidat termín k frázím tématu, protože je často rychlejší text napsat nebo zkopírovat a vložit přímo do YAML kódu.

Porozumění kódu YAML v editoru kódu

Na následujícím obrázku je příklad typického bloku YAML.

Snímek obrazovky ukázkového bloku YAML kódu v editoru kódu.

Tady je, jak se tento kód vztahuje na odpovídající téma, jak se zobrazuje na plátnu.

  • Řádek 1: Typ tématu.
  • Řádky 2–3: Označují začátek tématu pro vylepšení konverzace.
  • Řádek 7: Označuje uzel generativních odpovědí.
  • Řádek 9: Příslušná proměnná.
  • Řádky 11–12: Informace o promptu a speciálních pokynech.
  • Řádky 20–26: Odkazy na zdroje vědomostí.
  • Řádky 28–32: Skupina podmínek. Každá podmínka má jedinečné ID spolu s detaily vzorce podmínky a jejími přesměrováními.

Testování kódu YAML v editoru kódu

Chcete-li tento kód otestovat, proveďte následující kroky v Copilot Studio:

  1. Vytvořte agenta.

  2. Přejděte na stránku Nastavení pro agenta, vyberte Generativní AI a vyberte Generativní.

  3. Přejděte na stránku Témata, vyberte Systém a vyberte téma Vylepšení konverzací.

  4. Otevřete editor kódu.

  5. Nahraďte existující kód následujícím ukázkovým kódem YAML.

     kind: AdaptiveDialog
     beginDialog:
      kind: OnUnknownIntent
      id: main
      priority: -1
      actions:
        - kind: SearchAndSummarizeContent
          id: search-content
          userInput: =System.Activity.Text
          variable: Topic.Answer
          moderationLevel: Medium
          additionalInstructions: Include emojis to make responses more fun.
          publicDataSource:
            sites:
              - "www.chessusa.com/"
              - "www.chess.com/"
              - "www.lichess.org/"
    
          sharePointSearchDataSource: {}
    
        - kind: ConditionGroup
          id: has-answer-conditions
          conditions:
            - id: has-answer
              condition: =!IsBlank(Topic.Answer)
              actions:
                - kind: EndDialog
                  id: end-topic
                  clearTopicQueue: true
    
  6. Vyberte Uložit a zavřete editor kódu.

  7. Otestujte agenta na panelu Test položením otázky související se šachy, například „Jak se pohybuje jezdec?“