コンテンツにスキップ

Pythonトランジションの使い方を簡単に解説

[

Pythonトランジション

Pythonトランジションは、応答するテキストを受け取るための基本的な構造を設定し、テキストのパーシングのためのルールベースのシステムを構築します。以下は、トランジション状態の一部を定義するためのステップバイステップのサンプルコードの例です。

# ポリシールールの初期化
policy_rules = {
(("INIT", "place_order"),): ("AUTHED", "What is your number?", "number"),
# 他のルールはpending_stateをNoneに設定します
# ...他のルールをここに追加
}
# send_message関数を定義
def send_message(state, pending_state, message):
print("User message:", message)
new_state = state
new_pending_state = None
# 現在の状態と受信したインテントに基づいて次の状態と応答を判断
if (state, message) in policy_rules:
new_state, response, pending_state = policy_rules[(state, message)]
if pending_state:
new_pending_state = pending_state
else:
response = "I'm sorry, I don't understand."
print("Bot response:", response)
return new_state, new_pending_state
# send_messages関数を定義
def send_messages(messages):
state = "INIT"
pending_state = None
# メッセージをボットに送信
for message in messages:
state, pending_state = send_message(state, pending_state, message)
print("")
# メッセージのリストを定義
messages = ["place_order"]
# send_messages関数を実行
send_messages(messages)

上記のサンプルコードは、ユーザーが”place_order”というインテントを送信した場合、初期状態(“INIT”)から”AUTHED”状態に遷移し、“What is your number?”という応答が返されるように定義されています。他のインテントでは、“I’m sorry, I don’t understand.”という応答が返されます。