Del via


Bruk redigeringsprogrammet for kode til å skrive og redigere YAML i emner

Emner kan skrives og redigeres i koderedigeringsprogrammet, som støtter bruken av YAML, som står for «YAML Ain't Markup Language». YAML brukes til å skrive konfigurasjonsfiler, og har en tendens til å være enklere å lese enn XML eller JSON. YAML-filer bruker enten filtypen YAML eller YML. YAML-filer formateres med mellomrom og innrykk for å representere datastrukturer, for eksempel strenger, tall, boolsk, lister og ordlister.

For å få tilgang til kodeeditoren fra et emne, velg (...) Mer i verktøylinjen og velg deretter Open Code editor.

Se denne videoen for å få en oversikt over hvordan du bruker YAML i redigeringsprogrammet for kode:

Viktig!

Alle utviklere kan bruke koderedigeringsprogrammet til å utforske konfigurasjonen av et emne. Utviklere og avanserte brukere kan velge å utforme og redigere i redigeringsprogrammet for kode. Vi anbefaler imidlertid at du er svært forsiktig når du gjør endringer i koderedigeringsprogrammet, fordi feil i tegnsetting eller syntaks kan føre til komplekse feilmeldinger eller ødelegge den gjeldende samtalen. Våre tekniske støtteteam kan ikke hjelpe deg med å rette opp koderedigeringsfeil. Hvis du er en nybegynner når det gjelder å revidere YAML, lager du derfor en kopi av emnet før du gjør endringer.

Når skal redigeringsprogrammet for kode brukes

Du trenger aldri å skrive YAML fra grunnen av i Copilot Studio. YAML genereres i stedet automatisk når du oppretter objekter på emnelerretet. Du kan enten se gjennom konfigurasjonen i redigeringsprogrammet for kode for å få en bedre forståelse av innstillingene, eller du kan gjøre endringer i YAML-en. Her er noen eksempler på brukstilfeller for koderedigeringsprogrammet:

  • Kodeditoren viser den fullstendige konfigurasjonen av et emne uten at du trenger å samhandle med individuelle dialogelementer i emnet. Det er en one-stop-shop for å vise alle innstillingene i et emne.
  • Utviklere kan kopiere bestemte noder fra et emne og lime dem inn i andre emner i stedet for å bruke ikonene for Kopier og Lim inn. Det kan være enklere enn å velge flere noder i en konfigurasjon.
  • Utviklere kan oppdatere en Power Automate-flyt-ID i YAML i stedet for å vente på synkroniseringen med menyen for oppkall og handling.
  • Utviklere kan klone og revidere Spørsmål-noder eller Melding-noder når de ligner på hverandre. I slike tilfeller er det imidlertid viktig å sikre at alle ID-ene og variablene forblir unike. Husk å revidere klonede ID-er for å gjøre dem om til unike ID-er.
  • Opprettere kan velge å gjøre enkle endringer, for eksempel legge til et ord i emneuttrykk, i koderedigeringsprogrammet, siden det kan være raskere å skrive eller kopiere og lime inn teksten i YAML-koden.

Forstå YAML i redigeringsprogrammet for kode

Følgende bilde viser et eksempel på en typisk blokk med YAML.

Skjermbilde av en blokk med eksempel på YAML-kode i koderedigeringsprogrammet.

Slik gjelder denne koden for det tilsvarende emnet slik det vises på lerret.

  • Linje 1: Emnetypen
  • Linje 2-3: Angi starten på et samtalefremmende emne
  • Linje 7: angir en generativ svarnode
  • Linje 9: den relevante variabelen
  • Linjene 11-12: Detaljer om spørringen og spesielle instruksjoner
  • Linje 20-26: Kunnskapskildelenker
  • Linje 28–32: Betingelsesgruppe – hver betingelse har en unik ID, sammen med betingelsens formeldetaljer og omdirigeringer

Test YAML i redigeringsprogrammet for kode

Hvis du vil teste denne koden, kan du utføre følgende trinn i Copilot Studio:

  1. Opprett en agent.

  2. Gå til Innstillinger-siden for agenten, velg Generativ kunstig intelligens, og velg Generativ.

  3. Gå til Emner-siden, velg System, og velg emnet Samtaleforbedring.

  4. Åpne redigeringsprogrammet for kode.

  5. Erstatt den eksisterende koden med følgende eksempel på YAML-kode.

     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. Velg Lagre, og lukk redigeringsprogrammet for kode.

  7. Test agenten i Test-panelet ved å stille et sjakkrelatert spørsmål, for eksempel «Hvordan flyttes en hest?»