🍉

現状のDifyでは「デフォルト値」が動作せず、「None」が返される

に公開

はじめに

プログデンスの圓佛です。Difyでアプリケーションを作成する際、入力が省略された場合の値を指定する「デフォルト値」という設定があります。ですが、この機能は手元で試した限り、バージョン1.8.9から最新の1.10.0までの全てで動作しないようです。今回はこの機能に関して「具体的にどの部分が・どのように機能しないか」を確認します。

尚、Dropdown Variable Default Value and Options Management Issues #27965というIssueで修正コードはPRされているようですので今後の修正に期待します。

この記事で分かること

  • Difyでデフォルト値機能を利用しても、期待値通りに動作しない
  • 具体的には値が省略された場合に(指定されたデフォルト値では無く)「None」が返される

検証環境

今回の検証ではDifyのオンプレミス版(コンテナ版)を利用しています。

対象 バージョン
Dify 1.10.0
AWS Bedrockプラグイン 0.0.50

デフォルト値では無く「None」が返されてしまう

今回はテキストジェネレータを使ってデフォルト値の挙動を試します。今回は以下のプロンプトを利用します。

{{food}}の{{numberr}}個分カロリーを教えてください。

number変数は以下のように定義しました。必須では無い設定とし、デフォルト値は「1」としました。

image

「食べ物」には「りんご」を、「個数」(number変数)は何も入力せずに実行してみます。個数は入力を省略したので「デフォルト値である1」が採用されることを期待しているのですが、結果を確認すると「None個」と扱われています…

image

冒頭に記載したDropdown Variable Default Value and Options Management Issues #27965で修正されることを期待しますが、当面は「デフォルト値を利用しない」運用で回避するか、もしくは「プロンプト内で値が無い場合の処理をうまく記載する」しか無さそうです…

株式会社プログデンス
設定によりコメント欄が無効化されています