ただ一つのプロンプトによるタスク指向型対話システムの実現

昨今，GPT-4[1]を始めとした大規模言語モデル（LLM）は，文章生成と論理推論において高い能力を示している．LLMによって柔軟で自然な対話が可能になりつつあるが，その一方で，明示的な対話制御が難しいという問題がある．そのため，システム運用者，利用者の双方に共有された，明確な対話目的が存在するタスク指向型対話では，対話シナリオを具体的に設計した上で，システムを構築することが一般的であり，ルールベースとLLMによる生成ベースを併用した対話システムを構築することが多い[2,3]．すなわち，システム発話にはLLMの生成を用いているが，対話遷移にはルールベースの制御を用いているのである．しかしながら，このとき，ルールで定義されたフェーズを逸脱するような発話がユーザーからなされた場合に，対話全体の流れに復帰することが難しいという問題が発生する．そこで，我々は，LLMを用いることで，人間同士の対話において人間が行っているように，より俯瞰的な視点での対話制御を実現することはできないかと考えた．本稿では，システム側の発話生成と対話フロー制御をただ一つのプロンプト（DialogueFlowPrompt（DFP）と呼ぶこととする）によって制御されたLLMで実現する方法を提案する．実装上の具体例として，アンドロイドロボットを用いた対話ロボットコンペティション2023（DRC2023）[4]で設定されたタスクで検証した．これは，旅行代理店に訪れたお客さんと対話しながら，京都市内の2つの観光地を巡る旅行プランを設計し，提案するというものである．自己紹介やヒアリングなど雑談的要素も取り入れつつ，お客様が納得するような旅行プランを提案するという目的を達成することが求められる．この旅行代理店タスクを題材として，プロンプトを実装し，その結果，対話破綻を起こすことなく所望の対話を実現できた．