Udostępnij za pośrednictwem


Używaj edytora kodu do pisania i edytowania YAML w tematach

Tematy można pisać i edytować w edytorze kodu, który obsługuje użycie YAML. YAML oznacza "YAML Ain't Markup Language". YAML służy zazwyczaj do zapisu plików konfiguracyjnych i jest łatwiejszy do odczytania niż JSON czy XML. Pliki YAML mają rozszerzenie .yaml albo .yml. Formatujesz pliki YAML z odstępami i wcięciami, aby reprezentować struktury danych, takie jak stringi, liczby, wartości boolowskie, listy i słowniki.

Aby uzyskać dostęp do edytora kodu z tematu, wybierz (...) Więcej na pasku narzędzi, a następnie wybierz Open code editor.

Obejrzyj to wideo, aby dowiedzieć się, jak korzystać z YAML w edytorze kodów:

Ważne

Każdy twórca może użyć edytora kodu, aby zapoznać się z konfiguracją tematu. Deweloperzy i użytkownicy zaawansowani mogą wybrać opcję projektowania i edycji w edytorze kodu. Jednak bądź ostrożny podczas wprowadzania poprawek w edytorze kodu. Błędy interpunkcyjne lub składniowe mogą prowadzić do skomplikowanych komunikatów o błędach lub zakłócać bieżącą rozmowę. Nasze zespoły wsparcia technicznego nie są w stanie pomóc w naprawianiu błędów edytora kodu. Jeśli dopiero zaczynasz poprawiać YAML, zrób kopię tematu przed wprowadzeniem jakichkolwiek zmian.

Kiedy używać edytora kodu

program Copilot Studio nie wymaga pisania kodu YAML od podstaw. Zamiast tego YAML jest generowany automatycznie podczas tworzenia obiektów na kanwie tematycznej. Można następnie przejrzeć konfigurację w edytorze kodu, aby lepiej zrozumieć ustawienia, lub wprowadzić zmiany w pliku YAML. Oto przykładowe przypadki użycia edytora kodu:

  • Edytor kodu wyświetla pełną konfigurację tematu bez konieczności interakcji z poszczególnymi elementami okna dialogowego w temacie. Jest to uniwersalna platforma do wyświetlania wszystkich ustawień w temacie.
  • Twórcy mogą zdecydować się na skopiowanie określonych węzłów z tematu i wklejenie ich do innych tematów zamiast używania ikon Kopiuj i Wklej. Może to być łatwiejsze niż wybranie wielu węzłów konfiguracji.
  • Twórcy mogą zdecydować się na zaktualizowanie identyfikatora przepływu Power Automate w YAML, zamiast czekać na synchronizację z menu Wywołanie i Akcja.
  • Twórcy mogą zdecydować się na sklonowanie i zmianę węzłów Pytanie lub Wiadomość, jeśli są one podobne. Jednak w takich przypadkach ważne jest, aby upewnić się, że wszystkie identyfikatory i zmienne pozostają unikatowe. Pamiętaj, aby skonwertować sklonowane identyfikatory, aby przekształcić je w unikatowe identyfikatory.
  • Twórcy mogą zdecydować się na proste poprawki w edytorze kodu, takie jak dodawanie terminu do fraz tematycznych, ponieważ jest szybsze pisanie lub kopiowanie i wklejanie tekstu do kodu YAML.

Interpretacja YAML w edytorze kodu

Poniższy obrazek przedstawia przykładowy blok YAML.

Zrzut ekranu bloku przykładowego kodu YAML w edytorze kodu.

Oto jak ten kod ma zastosowanie do odpowiedniego tematu, który pojawia się na kanwie.

  • Linia 1: Rodzaj tematu.
  • Linie 2-3: Wskazywanie początku tematu pobudzającego rozmowę.
  • Linia 7: Wskazuje węzeł odpowiedzi generatywnych.
  • Linia 9: Istotna zmienna.
  • Linie 11-12: Szczegóły dotyczące polecenia i specjalnych instrukcji.
  • Linie 20-26: Linki źródeł wiedzy.
  • Wiersze 28-32: grupa warunkowa. Każdy warunek ma unikalny identyfikator, wraz z jego formułą i przekierowaniami.

Testowanie języka YAML w edytorze kodu

Jeśli chcesz przetestować ten kod, wykonaj następujące kroki w programie Copilot Studio:

  1. Utwórz agenta.

  2. Przejdź do strony Ustawienia swojego agenta, wybierz Generatywna sztuczna inteligencja, a następnie wybierz Generatywna.

  3. Przejdź do strony Tematy, wybierz Systemowe i wybierz opcję Wzmocnienie konwersacji.

  4. Otwórz edytor kodu.

  5. Zastąp istniejący kod poniższym przykładowym kodem 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. Wybierz przycisk Zapisz i zamknij edytor kodu.

  7. Przetestuj agenta w okienku testowym, zadając pytanie związane z szachami, takie jak: „Jak porusza się skoczek?”