In der Playbook-Anleitung wird der Prozess definiert, der zum Erreichen des Playbook-Ziels ausgeführt werden muss.
Jeder Schritt enthält eine Anweisung in natürlicher Sprache, die Folgendes enthalten kann:
- Eine grundlegende Anweisung, die das LLM verstehen kann.
- Eine Anweisung zum Weiterleiten des Nutzers zu einem anderen Playbook.
Playbooks werden im Format
${PLAYBOOK: playbook_name}
referenziert. - Eine Anleitung zur Verwendung eines bestimmten Playbook-Tools.
Für Tools wird das Format
${TOOL: tool_name}
verwendet. - Eine Anweisung, um den Nutzer zu einem Ablauf weiterzuleiten.
Auf Abläufe wird im Format
${FLOW: flow_name}
verwiesen. - Ein Verweis auf einen Playbook-Parameter.
Parameter werden im Format
$parameter_name
referenziert. - Eine Anweisung zum Aufrufen eines Codeblocks.
Codeblöcke werden im Format
`function_name`
referenziert.
Jede Schrittbeschreibung beginnt mit -
und einem optionalen nummerierten Schritt. Sie können Unteranweisungen mithilfe des Einzugs definieren.
Beispiel:
- greet the customer and ask them how you can help.
- If the customer wants to book flights, route them to ${PLAYBOOK: flight_booking}.
- If the customer wants to book hotels, route them to ${PLAYBOOK: hotel_booking}.
- If the customer wants to know trending attractions, use the ${TOOL: attraction_tool} to show them the list.
- help the customer to pay for their booking by routing them to ${FLOW: make_payment}.
Anleitung
Wenn Sie Ihre Anleitungen strukturieren möchten, können Sie optional Schritte mit einem hierarchischen Nummerierungssystem definieren. Wenn Sie keine Schrittnummern angeben und ein Codeblock auf einen bestimmten Schritt verweist, wird die Reihenfolge der Schritte verwendet, um die Werte der Schrittposition zu bestimmen.
Beispiel:
- Step 1. Greet the user and ask how you can assist them today.
- Step 2. Collect the user's basic flight information in the following order
from (a) to (f). Do not deviate from this order, and do not proceed until the
user has specified each piece of information. Ask clarifying questions if
necessary, and make sure that the answers the user give make sense.
- Step 2.1 The traveler's $origin city. Do not proceed until the user has
made this clear.
- Step 2.2 The traveler's $destination city. Do not proceed until the user
has made this clear.
- Step 2.3 When the traveler will leave their origin city. If the user
specifies one departure date, collect their $earliest_departure_date. If
the user specifies a range of departure dates, collect their
$earliest_departure_date and $latest_departure_date. Unless otherwise
specified, assume all dates are from 2024 to 2025. If the user provides
a vague departure date, ask them follow-up questions to determine their
precise departure date(s). All dates should be in YYYY-MM-DD format. If
the user does not provide their departure date(s) in YYYY-MM-DD format,
then convert the dates for them.
- Step 2.4 When the traveler will leave from their destination city and
return home. If the user specifies one return date, collect their
$earliest_return_date. If the user specifies a range of return dates,
collect their $earliest_return_date and $latest_return_date. Unless
otherwise specified, assume all dates are from 2024 to 2025. If the user
provides a vague return date or a vague return date range, ask them
follow-up questions to determine their precise return date(s). All dates
should be in YYYY-MM-DD format. If the user does not provide their return
dates in YYYY-MM-DD format, then convert the dates for them.
- Step 2.5 The $num_adult_passengers the user wishes to buy tickets for. All
people 12 years old or older are adult passengers. This value must be a
precise whole number. Do not proceed until the user has provided a valid
number of adult passengers.
- Step 2.6 The $num_child_passengers the user wishes to buy tickets for.
This value must be a precise whole number. Do not proceed until the user
has provided a valid number of child passengers.
- Assume the user is an adult.