![見出し画像](https://assets.st-note.com/production/uploads/images/141509215/rectangle_large_type_2_4735c85f2563876af6275708cdf9dbb5.png?width=800)
【Pythonコード付き】Difyでコードブロックを使い、独自データの分析のフローを構築しよう!
日々アップデートや色々な試行錯誤・議論が行われているDifyですが、もっと独自のデータをワークフローに入れて使いたいという方も多いのではないでしょうか。
今回は、コードブロックを使ってデータの下処理を行ったりスプレッドシートのデータをGAS使ってAPIとして公開し、DifyからアクセスしてLLMに渡しデータ分析を行う方法について紹介します。
コードブロックとは?
![](https://assets.st-note.com/img/1716390592551-WRKdv0BMl3.png?width=800)
ワークフローの新規ブロックを作るタブから選択できる、独自の処理を実装するためにPythonまたNodeJSコードを実行する機能です。
Code Interpreterとの違い
Code InterpreterはLLMの出力したコードを実行するので動的に生成したコードを実行します。
それに対してコードブロックは予め実装したコードを固定で実行するので、例えばAPIからのレスポンスを整形するなどの用途に使います。
また、requestsやhttpxモジュールが追加されたため、直接外部APIにリクエストする処理を実装することもできます。
モジュールの追加方法
新しいアプリの作成からチャットボット→Chatflowを選択し、名前を入力して作成をするをクリックしてください。
![](https://assets.st-note.com/img/1716390594097-m9Bk2lRYNk.png?width=800)
次に、表示されている全てのノードを消してから+のマークを押してブロック選択タブを開き、コードを選択してください。
![](https://assets.st-note.com/img/1716390593002-FsoLNLB1Ht.png)
ここを編集することでコードブロックを使います。
![](https://assets.st-note.com/img/1716390593078-et2DmubcoE.png)
入力変数にはユーザーの入力やAPIの出力・APIの応答などいろいろな変数を入れることができます。