difyで作成したワークフローをAPIとして呼び出す – 2024年7月15日

社内でdifyを利用できる環境があって少しずつ触ってみていたのだけれども(本質ではないけれども)ワークフローを作成するワークフローエンジンとしても面白いなと思いつつ外部のAPIを呼び出したり、その結果とLLMを絡めたピタゴラスイッチ1を作りやすく、更に作成したワークフロー自体もAPIとして外部から呼べることもわかったので簡単にメモ。

手順としては以下の通り、

  1. ワークフローを作成する
  2. ワークフロー編集画面の左手の APIアクセス を開き、右上にある APIキー のUIからAPIキーを生成して取得する
  3. ワークフロー編集画面右上の 公開する ボタンを押してワークフローを公開(または更新)する
    1. で取得したAPIキーをBearerとして認証ヘッダに設定してPOSTする
      • POSTする際にinputsの中にワークフローの「開始」で設定した入力フィールドの変数名にそろえて入力する

curlコマンドでワークフローをAPI経由で呼び出すには以下の様な形になる。
(今回はプロダクトに組み込むとかの目的ではないのでblockingモードで呼び出しているけれども推奨はstreamingモードになっている。)

ちなみに自分が躓いたところは、

  • ワークフローの「終了」のブロックで出力変数を指定していないので結果が帰ってこない
  • ワークフローを画面上で編集した後、「公開する」のメニューから「更新」を行わないため修正前のワークフローの結果が帰ってきてしまう

の2点でこれにいつまでも気づかずいくら呼び出しても結果が返ってこない、あるいは修正が反省されないと悩み、もしかすると世の中に2名くらいは同じ失敗をした人の役に立つかも知れないと思ったのでここに残しておく。

実行例

ワークローの「開始」に入力フィールドとして "form1", "form2" を設けていた場合、

curl -X POST 'https://difyホスト名/v1/workflows/run' \
--header 'Authorization: Bearer app-xxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
    "inputs": {
        "form1": "123",
        "form2": "abc"
    },
    "response_mode": "blocking",
    "user": "hideack"
}'

上でAPIへリクエストするとblockingモードの場合は以下の様なJSONが戻ってくる。ワークフローの処理結果が完了するまでブロックされるのでoutputsにワークフローの出力(= 終了ブロックの出力変数)が含まれる。

{
    "data": {
        "created_at": 1721012680,
        "elapsed_time": 20.174075001035817,
        "error": null,
        "finished_at": 1721012700,
        "id": "f4166b4b-1234-xxxx-yyyy-zzzz",
        "outputs": {
            "result": "結果がここに入ります"
        },
        "status": "succeeded",
        "total_steps": 6,
        "total_tokens": 893,
        "workflow_id": "cba8a879-1234-xxxx-yyyy-zzzz"
    },
    "task_id": "f8c804e5-1234-xxxx-yyyy-zzzz",
    "workflow_run_id": "f4166b4b-1234-xxxx-yyyy-zzzz"
}
  1. この比喩も通じる人が少なくなってきた。詳しくはこちらを参照[]

徒然日記 – 2024年7月14日

土曜日の気分であったのだけれども日曜日であった。午前中にTBSラジオで安住紳一郎の日曜天国を聴いたのにすっかり忘れていた。出張で多少お疲れ気味というのもあって家にこもって本をひたすら読んでいた。

神と人と言葉と 評伝・立花隆 (単行本)」読了。2021年に亡くなったジャーナリスト、評論家である立花隆の評伝。戦後の混乱、キリスト教に対する宗教観に加えて学生運動が繰り広げられていた学生時代を経て徐々に確立されていくスタンツとそこから多岐にわたる著作が生み出されていたことが知れた。また、2000年以降に出版された複数の氏への批判的著作に対してスタンツも記載されていて興味深かった。

福岡へ出張 – 2024年7月12日

会社の四半期報告会が開催される日に合わせて福岡出張となったので2泊3日で福岡へ。

オフィスのロケーション上、普段コミュニケーションがSlackなどのオンライン主体で取ることが多い方と直接お話できる機会ができたのでとてもよかった。あと、普段の予定もすべて多くをリスケしたりしていたところもあって少し腰を据えて数字を眺めてみてみたり、少し長いスパンで物事を考えてみるきっかけになった。

福岡はちょうど博多祇園山笠の時期で7月15日の早朝が追い山なので雰囲気がそれ一色だった。朝のニュース番組だったりも生中継の予告を出していたりして短い期間ではあるけど学生時代を過ごした福岡の感覚を思い出した。

博多祇園山笠、新天町の飾り山

博多祇園山笠、新天町の飾り山は「サザエさん」だった

2024年6月に読んだ本を振り返る

2024年6月は4冊。体調が悪いのかと思うくらい読めていなかったのだけど、思い返すと通勤中の車内で寝てしまっていたり、動画見たりしていたことが多かった気がしてきた。反省。

崖っぷちだったアメリカ任天堂を復活させた男」より。

リーダーは組織と深く関わることで、みんなを停滞させている問題を見つけてチームの心をつかまなければならないものの、なかなか時間をかけてこれに取り組もうとしない。私は「前線」に立つリーダーシップの力を信じている。自分の指揮命令系統を超えて、会社の各部署にこうしたリーダーシップを波及させなければならない。そこから生まれた洞察力は、オペレーションを簡素化して収益と利益を促す大きな力を持つ。

レジー・フィサメィ. 崖っぷちだったアメリカ任天堂を復活させた男 (p.126). Kindle 版.

リーダー論、キャリア形成論としてこの本はおもしろかった。あと任天堂という会社がやっぱりおもしろいなとおもうと同時にもう一度、岩田さん: 岩田聡はこんなことを話していた。 (ほぼ日ブックス)を読み直したくなった。この本で出てくるエピソードから一層興味を持ってきた。

2024年6月に読んだ本

徒然日記 – 2024年6月11日

出張で東京にきていた同僚といっしょに韓国料理を食べに行く。量がかなりしっかりあって大満足だった。辛めの料理も多かったけど意外と大丈夫だった。ご飯を食べながらいろいろ話をしている中で前向きに一緒に仕事ができているのは嬉しいなと思ったりするのと、そんなことを思う様になった自分も年を重ねたなとも思ったりする。生ビールとマッコリをそこそこ消費してお開き。

2024年5月に読んだ本を振り返る

2024年5月は13冊。ゴールデンウィークもあったので読めた本の冊数も多め。

管理職失格: 新世代リーダーへの条件」 より抜粋。

これからの管理職に求められるのは、既存路線での正解を提示することではなく、新たな方向性を提示する能力です。そうであれば、目の前のことだけに集中するのではなく、より多様なところに視野を広げる、そういう能力開発こそが有効です。

木村尚敬,柳川範之. 管理職失格 新世代リーダーへの条件 (Japanese Edition) (p.120). Kindle 版.

逆にいうと新しい方向性を提示するだけでも駄目で、目の前のこともきちんとできることが必要なスキルなのだろうなと思ったし、会社全体を見る視点、事業責任管掌を見る視点の両方を持たねばならないといったことも記述があったりして、いまの自分に刺さるところが多かった。

2024年5月に読んだ本

スヌーピーミュージアム – 2024年5月25日

朝、ミスタードーナツで朝ご飯を食べる。ミスタードーナツなんだけどドーナッツではなくモーニングとして用意されているホットドッグを頼んだ。意外とソフトフランスパンとソーセージが美味しく個人的に満足度が高い。

気分転換をするべく、今日は南町田のスヌーピーミュージアムにいった。リニューアルしてから行ってなかったのだけれども大体毎年1回聖地巡礼のごとく通っているのでこの時期に行ってみた。今は企画展で「旅するピーナッツ」という展示がされていて、ピーナッツの中で各キャラクターが行った旅の物語の原画がたくさん。
あと、リニューアル後からだと思うのだけれども入場時に渡される入場証となるチケットがその日に掲載されたピーナッツの漫画が印字されているのがとてもよい。

スヌーピーミュージアムの入場券

スヌーピーミュージアムの入場券、1996年5月25日のピーナッツ

ミュージアムで見学を終えて、スヌーピーミュージアムは南町田グランベリーパーク内になるのでミュージアムのすぐ側には映画館やGiGOグループのゲームセンターがあるのだけれども、そこのゲームセンターにはスヌーピーグッズが収められたクレーンゲームがあってものすごく久しぶりにやってみたら初回で取れてしまった。ここで運を使ってどうする。

クレーンゲームで獲得したスヌーピーのぬいぐるみ

クレーンゲームで1発獲得してしまったスヌーピーのぬいぐるみ

徒然日記 – 2024年5月19日

久しぶりに夢を見ておきた。何故かアジを釣っていたのだけれども鰻が釣れてびっくりしたら目が覚めた。なんだこの夢は。そもそも自分は釣りにいかないのに。
午前中に散歩してファミレスで朝ご飯食べる。

午後から「日々臆測 (飛ぶ教室の本)」を読む。読むというか眺める。勝手に憶測している様な日々を思っていたら眠くなって昼寝する。

徒然日記 – 2024年5月18日

昨夜、帰りが遅くなってしまったのだけれども7時に起きて散歩4.0Km。空気が澄んでいて歩きやすかった。
マクドナルドで朝マックのセットを買って帰ろうと立ち寄って久しぶりに店頭注文したらカウンターに掲載されているメニューから選ぶのに店員さんを待たせてしまっている様に感じてしまって結構慌ててしまった。事前にオーダーする方法に慣れすぎてしまっている。

午後、外出。用事を済ませて帰宅。
移動中、電車の中やバスや待合室で待っている間など、今週は疲れていたのか隙間の時間ができては仮眠的に居眠りすることを繰り返してしまった。