Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Ten artykuł zawiera wskazówki dotyczące sposobu pisania najlepszych instrukcji dla agenta, gdy agent korzysta z orkiestracji generatywnej. Instrukcje są definiowane na stronie agenta Przegląd.
Instrukcje są używane przez agenta w następujący sposób:
- Aby zdecydować, z jakiego narzędzia lub jakiej wiedzy skorzystać w celu udzielenia odpowiedzi na zapytanie użytkownika lub w odpowiedzi na autonomiczny sygnał wyzwalający.
- Wypełnianie danych wejściowych dla narzędzia na podstawie dostępnego kontekstu.
- Generowanie odpowiedzi użytkownikowi końcowemu.
Język do pisania instrukcji
Użyj czasowników, takich jak Get lub Use , do pobierania i analizowania danych oraz słów, takich jak From i With, aby wykonywać działania na wynikach.
Następujące słowa są powszechnie używane do tworzenia prostych instrukcji:
| Cel | Słownictwo |
|---|---|
| Warunki | kiedy, jeśli, zapewnij, porównaj |
| Filtr | od, zawrzyj, wyklucz, porównaj, zidentyfikuj |
| Dane | dostarcz, pobierz, uzyskaj, użyj, przeanalizuj, wyodrębnij |
| Narzędzia | powiadom, kieruj, zapytaj, przypisz |
Instrukcje podstawowe w źródłach wiedzy i narzędziach
Ważne jest, aby zrozumieć, że agenty nie mogą wykonywać instrukcji użycia narzędzi ani wyszukiwania w źródle wiedzy, jeśli nie mają tych narzędzi ani źródeł wiedzy. Najpierw należy skonfigurować w agencie odpowiednie narzędzia i źródła wiedzy. Jeśli na przykład podasz agentowi instrukcję wyszukania często zadawanych pytań w witrynie internetowej, agent może ją wykonać tylko wtedy, jeśli dodasz często zadawane pytania w witrynie internetowej jako źródło wiedzy w temacie. Upewnij się, że wszystkie instrukcje podawane agentowi są ugruntowane w narzędziach i wiedzy skonfigurowanych dla agenta.
Notatka
Aby orkiestracja generatywna powodowała przeszukiwanie określonych źródeł wiedzy, włącz je do węzła odpowiedzi generatywnych w temacie. W przeciwnym razie generatywna orkiestracja przeszukuje wszystkie źródła wiedzy na poziomie agenta, co oznacza źródła wiedzy wymienione na stronie Wiedza.
Pomóż agentowi określić odpowiednie narzędzia i wiedzę, które powinien wywołać
Przed dodaniem instrukcji wywoływania odpowiednich narzędzi i źródła wiedzy dla agenta upewnij się, że każde narzędzie i źródło wiedzy są zgodnie z najlepszymi rozwiązaniami dotyczącymi tworzenia opisów. Aby uzyskać najlepsze wyniki, nazwa i opis muszą być dokładne i szczegółowe, ponieważ te pola są używane przez agenta do określania, co należy wywołać. Ponadto użyj opisu, aby wskazać, czego nie robić, jeśli widzisz, że agent je wywołuje w niewłaściwym czasie.
Nie trzeba definiować dostępnych narzędzi ani źródła wiedzy w instrukcjach, ponieważ te informacje są już dostępne dla agenta. Podczas pisania instrukcji można użyć /, aby określić konkretne narzędzie, temat, zmienną lub wyrażenie Power Fx dla agenta. Jednak agent korzysta również z nazw narzędzi lub źródeł wiedzy i opisów, aby ustalić, które z nich powinny być używane, więc nie trzeba wskazywać konkretnych dla agenta.
Zamiast tego dodawaj instrukcje tylko dla przypadków, gdy chcesz przekazać agentowi wskazówki, ponieważ odpowiednie narzędzie lub źródło wiedzy może być niejednoznaczne. Możesz również podać instrukcję, która odwołuje się do wielu narzędzi lub źródeł wiedzy.
Use the FAQ documents only if the question is not relevant to Hours, Appointments, or Billing.
Only use the ticket creation topic for creating tickets.
For other requests related to fixing issues, use the troubleshooting topic.
Pomóż agentowi w wyborze odpowiednich źródeł wiedzy
Aby agent skutecznie pozyskiwał informacje ze źródeł wiedzy, upewnij się, że w instrukcjach wyjaśniasz, na jakie dokumenty ma zwracać uwagę. Na przykład „wyszukaj dokument dotyczący dołączania pracowników w bazie wiedzy”. Choć taka szczegółowość nie jest absolutnie konieczna, może być pomocna w kierowaniu agentem. Ta specyfika jest przydatna, gdy istnieje wiele dokumentów, które agent musi przeszukać.
Pomaganie agentowi w wyborze odpowiedniej sekwencji narzędzi
Agent próbuje wybrać odpowiednie narzędzie i zazwyczaj mu się to udaje, ale warto podawać jak najbardziej jednoznaczne instrukcje. Jeśli na przykład chcesz, aby agent utworzył rekord zamówienia zakupu w usłudze Dataverse przy użyciu narzędzia create order, użyj / i dodaj to konkretne narzędzie do instrukcji. W tym scenariuszu podajesz jednoznaczną instrukcję: „Gdy użytkownik poda szczegóły swojego preferowanego laptopa, utwórz zamówienie zakupu przy użyciu /Zamówienie zakupu”. Ta szczegółowość jest przydatna, gdy do agenta jest dodawanych wiele narzędzi (więcej niż pięć).
Proszę ponumerować lub sporządzić listę (z wykorzystaniem punktorów) instrukcji i zaznaczyć, że agent musi je wykonywać w podanej kolejności. Możesz również zastosować format Markdown, by zwiększyć czytelność instrukcji i ułatwić generatywnej AI ich zrozumienie oraz przetwarzanie.
Notatka
Jeśli nie chcesz, aby agent kontaktował się z użytkownikiem, pomocne może być wyraźne określenie tego faktu w instrukcjach. Przykład: "Nie pytaj użytkownika o żadne szczegóły".
Podczas nadawania nazwy narzędziu w instrukcjach upewnij się, że używasz dokładnie takiej samej nazwy, jaką ma samo narzędzie. Niewielkie różnice w nazewnictwie mogą negatywnie wpłynąć na wyniki. Upewnij się również, że używasz / przy tworzeniu konkretnej nazwy narzędzia (/„Nazwa narzędzia”).
Jeśli chcesz, aby agent odpowiadał bardzo precyzyjnie na pytania użytkowników, warto utworzyć temat, który będzie dotyczył tego konkretnego przypadku. Na przykład, tworząc temat, który rozpoznaje frazy podobne do „czy są dostępne inne opcje?”. Agent odpowiada wtedy konkretnie: „W tej chwili nie ma innych opcji, wybierz jedną z dostępnych”.
Agent używa opisu narzędzia, aby zrozumieć, dlaczego ma używać tego narzędzia. Wypełniony opis narzędzia znacznie pomaga agentowi wybrać odpowiednie narzędzie. Wypełnij opis narzędzia, aby poinformować agenta, kiedy ma wywoływać to narzędzie, na przykład „wywołaj to narzędzie, gdy użytkownik poprosi o pobranie historii rezerwacji klienta”.
Wyzwalacze mogą być odpowiedzialne za ataki typu jailbreak. Ten typ ataku polega na tym, że osoba atakująca wysyła instrukcje dla agenta, aby postępował zgodnie z ładunkiem wyzwalacza. Na przykład osoba atakująca może poprosić agenta o wysłanie jej wiadomości e-mail z informacjami, do których agent ma dostęp.
Aby chronić agenta przed tym ryzykiem, upewnij się, że jego instrukcje zawierają następujące informacje:
Ograniczaj zakres narzędzi, których agent ma używać podczas odwoływania się do źródeł wiedzy. Na przykład informacje e-mail należy wysyłać tylko po sprawdzeniu kontekstu w źródle wiedzy.
Określ, jakich parametrów agent powinien używać w narzędziach. Na przykład wyślij wiadomość e-mail tylko do określonej listy osób.
Jeśli zauważysz, że przy włączonym filtrowaniu zawartości agent blokuje normalne zachowanie, możesz zaktualizować instrukcje agenta, aby wskazać, że to zachowanie jest dopuszczalne.
Pomaganie agentowi w uzupełnianiu danych wejściowych dla narzędzi
Agent może wywołać narzędzie, które ma parametry wejściowe wymagające uzupełnienia. W tym przypadku agent używa historii konwersacji i poprzednich wywołań do narzędzi i źródeł wiedzy, aby określić, jakie dane wejściowe powinny być. W przypadku, gdy agent nie zidentyfikuje wszystkich danych wejściowych, prosi użytkownika o pomoc w uzupełnieniu brakujących informacji.
W tym scenariuszu najpierw skonfiguruj wejścia dla agenta w oparciu o typy interakcji, które ma obsługiwać. Następnie, tylko w sytuacjach, w których agent powinien wypełnić najlepsze dostępne dane wejściowe, używa instrukcji, aby pomóc w wypełnieniu danych wejściowych.
Use the email address from the contact field of the lead when helping the user to draft an email to follow-up on a lead.
Pomoc agentowi w generowaniu odpowiedzi
Po pierwsze, użyj instrukcji, aby dać agentowi ograniczenia, kiedy nie powinien odpowiadać. Agent wygeneruje odpowiedź po wykonaniu wywołań do narzędzi lub źródeł wiedzy adekwatnych dla bieżącego scenariusza. Jeśli włączysz opcję Zezwól na odpowiedzi bez podania źródła w sekcji Wiedza w ustawieniach Generatywnej AI swojego agenta, agent będzie mógł generować odpowiedzi bez odwoływania się do jakiegokolwiek narzędzia lub źródła wiedzy.
Oto przykład użycia instrukcji dotyczących ograniczeń:
Only respond to messages that are relevant to Contoso corporation and ordering coffee.
Otherwise, tell the user you can't help with their inquiry.
Jeśli masz określony temat, który nie powinien być omawiany przez agenta, możesz dodać temat dla tego scenariusza z ręcznie utworzoną odpowiedzią. Ta metoda zapobiega konieczności polegania tylko na instrukcjach, aby uniknąć tego tematu.
Po drugie, możesz przekazać agentowi instrukcje, jak powinien formatować lub strukturyzować odpowiedzi. Na przykład:
Always give responses about order status in a table format.
Jeśli chcesz, aby Twój agent był profesjonalny i mówił uprzejmie, nie musisz wydawać instrukcji dotyczących tego tonu, ponieważ jest to domyślne zachowanie agenta. Podawaj instrukcje dotyczące tonu tylko dla określonych przypadków użycia.
Konwersacja oparta na rozmowie
Poniższy przykład ilustruje sposób formatowania instrukcji opartych na konwersacji, przy użyciu konstrukcji ograniczenia, format odpowiedzi i wytyczne. Te trzy są połączone w jeden, aby zapewnić kompletny zestaw instrukcji dla agenta.
Ograniczenia
Only respond to requests to provide information about educational, legal, wellness, wellbeing, health, dental care, and newborn benefits for employees and dependents.
Respond to benefit types with details, health plan comparisons available for employees and dependents in tabular format.
Answer in bold and underline fonts as necessary.
Format odpowiedzi
Respond to inquiries by providing benefit types along with details, health plan comparisons available for employees and dependents in tabular format.
Add a column for available options.
Include insurance provider details and provide a link for enrollment.
Answer in bold and underline fonts as necessary.
Wskazówki
Search only within specific country folders relevant to the employee's country.
Instrukcje autonomiczne
Poniższa grafika ilustruje kroki wykonywane przez agenta na podstawie instrukcji oparte na autonomiczności:
Instrukcje i zachowanie agenta
Instrukcje agenta w programie Copilot Studio mogą służyć do wpływania na podsumowanie odpowiedzi po pobraniu dokumentu. Poniżej wymieniono typowe błędne przekonania i najlepsze rozwiązania ułatwiające projektowanie niezawodnych środowisk agentów.
Notatka
System traktuje instrukcje agenta podobnie jak kod. Nieprawidłowy kod może zakłócić działanie systemu, szczególnie jeśli chodzi o cytowania i wybór, czy wyświetlać odpowiedzi. Jeśli masz skomplikowane instrukcje i nie możesz uzyskać odpowiedzi, spróbuj usunąć instrukcje agenta i stopniowo dodawać pojedyncze instrukcje z powrotem. Testuj po każdej dodanej instrukcji, aby upewnić się, że instrukcje działają.
Zachowanie karty adaptacyjnej
Instrukcje agenta nie mogą modyfikować sposobu wyzwalania kart adaptacyjnych.
Zamiast tego w przypadku używania kart adaptacyjnych:
- Edytuj kartę adaptacyjną bezpośrednio.
- Dostosuj frazy wyzwalające w konfiguracji karty, aby kontrolować, kiedy karta się pojawi.
Używaj kolejnych pytań
Używaj pytań uzupełniających, aby doprecyzować intencje, uzyskać brakujące dane oraz wydobyć istotne działania lub wiedzę. W przypadku korzystania z tego podejścia agent zadaje odpowiednie następne pytanie w oparciu o to, co może zrobić i co wie w czasie wykonywania.
Przy korzystaniu z pytań uzupełniających obowiązują następujące ograniczenia:
- Jeśli ustawienie Zezwalaj na odpowiedzi bez podstaw jest wyłączone, pytania uzupełniające nie działają.
- Jeśli wyłączysz to ustawienie, orkiestrator rozważa wyjaśnienie pytań, które nie mają podstawy cytowania, i je blokuje. Agent domyślnie udziela następującej odpowiedzi: „Przykro mi, nie wiem, jak pomóc w tej sprawie. Czy możesz inaczej sformułować pytanie?”
Agenty mogą przewidywać potrzeby użytkowników i sugerować kolejny logiczny krok na podstawie dostępnych narzędzi i wiedzy. Na przykład agent, który odpowiada na pytanie „Jaka jest dziś pogoda w Rzymie?”, może zaproponować „Czy chcesz poznać prognozę na jutro?” i odpowiednio zareagować na odpowiedź użytkownika „tak” bez dodatkowego wyjaśnienia.
To podejście zmniejsza konieczność tworzenia zakodowanych ścieżek dialogowych. Zamiast tego przenosi ciężar z tworzenia każdej możliwej gałęzi na kierowanie rozumowaniem agenta za pomocą instrukcji odwołujących się do jego możliwości.
Podczas zadawania pytań uzupełniających, stosuj następującą strategię:
Odwołuj się do narzędzi, wiedzy i zmiennych w instrukcjach, aby agent mógł wykorzystać je do generowania pytań uzupełniających dostosowanych do kontekstu. Instrukcje bezpośrednio wspierają odwołania do agentów, zmiennych, narzędzi, wiedzy oraz wyrażeń Power Fx.
Poproś agenta, aby kończył odpowiedzi odpowiednimi pytaniami uzupełniającymi dotyczącymi aktualnego kontekstu i aktywnych narzędzi agenta. Takie podejście umożliwia zachowania adaptacyjne zamiast stałych, kruchych procesów.
Umieszczaj widoczne przykłady i rozumowanie w instrukcjach, aby agent nauczył się oczekiwanego wzorca (co pytać i dlaczego). Wyliczenie dostępnych narzędzi zwiększa trafność i naturalność pytań uzupełniających, nawet jeśli orkiestrator już wie, które narzędzia są aktywne.
Zmiana domyślnej wiadomości bazowej
Niestandardowe instrukcje nie mogą zastąpić domyślnej wiadomości bazowej.
Domyślna wiadomość brzmi: „Przykro mi, nie wiem, jak pomóc w tej sprawie. Czy możesz inaczej sformułować pytanie?”
Aby zmienić domyślną wiadomość:
Przejdź do tematu Rezerwowy: Tematy → System → Rezerwowy.
Wewnątrz tematu Rezerwowy zmień treść w polu Wiadomość.
Niejednoznaczne pojęcia
Unikaj w instrukcjach niejasnych sformułowań, takich jak „pole pisania”. Tego rodzaju pojęcia są niejednoznaczne dla modelu językowego i mogą prowadzić do nieprzewidywalnego zachowania.
Pobieranie wyników wyszukiwania
Instrukcje agenta nie mogą modyfikować logiki pobierania wyników wyszukiwania. Usuń wszelkie instrukcje, które próbują wpłynąć na pobieranie dokumentów.
Udostępnianie pobranych dokumentów
Nie można zmienić sposobu udostępniania pobranych dokumentów. System kontroluje to zachowanie.
Uwzględnij wyzwalacz
Zmodyfikuj domyślny ładunek wyzwalacza, aby ułatwić agentowi zrozumienie, co zrobić po wywołaniu wyzwalacza. Użyj zmiennych, aby zmniejszyć rozmiar ładunku. Utwórz wyzwalacz, a następnie edytuj go za pomocą Power Automate, aby wybrać określone zmienne. Na przykład wyślij tylko pole tematu odebranej wiadomości e-mail, a nie całą zawartość wiadomości.
Notatka
Wyzwalacze można edytować tylko w Power Automate, a nie bezpośrednio w Copilot Studio.
Pomocne może być poinformowanie agenta, co ma zrobić z zawartością wyzwalacza w instrukcjach wyzwalacza. Na przykład, jeśli agent pomaga nowym pracownikom w dołączeniu do firmy, zdefiniuj ładunek wyzwalacza jako "Dołącz następującego pracownika". Po tej instrukcji następuje treść wyzwalacza, która zawiera szczegóły nowego pracownika. Gdy agent otrzyma zawartość, postępuje zgodnie ze zdefiniowanymi instrukcjami agenta dotyczącymi wdrażania pracowników.
Wiele wyzwalaczy
Możesz dodać wiele wyzwalaczy, z których każdy ma własne instrukcje. Instrukcje te mogą uzupełniać ogólne instrukcje agenta lub być używane do różnych przypadków użycia w ramach tego samego agenta, takich jak obsługa dołączania pracowników i raportów o incydentach. Pomocne może być upewnienie się, że każdy ładunek wyzwalacza instruuje agenta, co ma zrobić po uruchomieniu wyzwalacza.
Format e-maili
Poinstruuj swojego agenta, aby "wysyłał wiadomości e-mail z użyciem tekstu sformatowanego dla treści wiadomości e-mail" lub podobnego sformułowania. To żądanie można również dodać w opisie narzędzia, aby położyć dodatkowy nacisk.
Obsługa wielu języków
Instrukcje żądające obsługi wielojęzycznej mogą działać, ale nie ma takiej gwarancji. Funkcja wielojęzyczności nie została przetestowana ani nie jest oficjalnie wspierana.
Podjąć klucza
- Instrukcje agenta trzymaj jak najprostsze i najkrótsze jak to możliwe.
- Używaj instrukcji agenta do sumowania i przepływu konwersacyjnego, a nie do zachowań na poziomie systemu.
- Używaj konfiguracji tematów, a nie instrukcji, w celu używania zasobów rezerwowych i dostosowywania kart adaptacyjnych.
- Weryfikuj działanie funkcji, takich jak obsługa wielu języków, zanim obiecasz je użytkownikom.