🔰

【コピペOK】Dify『コード実行』ノード|ChatGPT/Geminiで失敗しないコード生成方法

に公開

この記事で解決できること

  • ChatGPT や Gemini でコードを作ったけど、Dify で動かない😭
  • 「なんか知らないけどエラーが出る」を解決したい
  • Python よくわからないけど、Dify でコードを使いたい

結論:専用の「魔法の呪文」をコピペして使えば、初心者でも確実に動くコードが作れます!


なぜ普通に頼むと失敗するの?

❌ よくある失敗パターン

ChatGPT に「文字数を数えるコードを書いて」と頼むと、こんなコードが返ってきます:

text = input("文字を入力してください: ")
print(f"文字数は {len(text)} です")

これは Dify では動きません!

🤔 なぜ動かないの?

Dify の「コード実行」ノードには特別なルールがあるからです:

  1. 入力の受け取り方が特殊input() は使えない
  2. 結果の返し方が特殊print() じゃダメ
  3. 決まった形式でコードを書く必要がある

普通の Python と Dify 用 Python は別物だと思ってください!


Dify で動くコードの「お約束」

✅ 守るべき3つのルール

  1. 関数は def main(**kwargs): で始める
  2. 入力は kwargs.get('名前', '') で受け取る
  3. 結果は return {'result': 答え} で返す

🎯 基本の形(これをベースにする)

def main(**kwargs) -> dict:
    try:
        # 1. 入力を受け取る
        text = kwargs.get('text', '')
        
        # 2. 何かの処理をする
        result = len(text)  # 文字数を数える
        
        # 3. 結果を返す
        return {'result': result, 'ok': True, 'error': ''}
    except:
        # エラーが起きても止まらないようにする
        return {'result': 0, 'ok': False, 'error': 'エラーが発生しました'}

難しく考えなくて OK!この形をコピペして、真ん中の処理だけ変えればいいんです。


🪄 コピペ用指示プロンプト

以下のプロンプトをコピーしてGeminiやChatGPTで自分がコードでつくりたいアイデアと一緒にメッセージを投げてみてください!

Pythonコードを生成する際は、以下のDifyコードノードの基本構造を必ず守ってください。

# 必要なライブラリをインポート
import json
import re

# Difyが呼び出すメイン関数
def main(**kwargs) -> dict:
  """
  処理の概要を記述
  """
  # 1. 入力変数をkwargsから安全に取得
  # 例:
  # user_input = kwargs.get('user_input', '')

  # 2. メインの処理

  # 3. 辞書形式で結果を返す(キーが出力変数名になる)
  return {
    'output_name': 'result_value'
  }

入力変数は、kwargs という辞書から .get() メソッドを使って安全に取得してください。

使用した入力変数名や出力変数名と型(StringやObject, Arrayなど)もユーザー向けに書き出してください。

1.コード実行ノードを追加

  1. 「+」ボタンから「コード実行」を選択
  2. 入力変数は提示された入力変数名を追加
  3. 生成されたコードをコピペ
  4. 出力変数は提示された出力変数名と型を追加

2.テスト実行

  1. 右上の「実行」ボタンをクリック
  2. テキストボックスに何か入力
  3. 結果が表示されれば成功!

😅 よくある失敗と解決法

問題1:「保存できません」エラー

原因: コードの形が間違っている
解決: プロンプトをもう一度使って、正しい形のコードを生成する

問題2:「実行エラー」が出る

原因: 入力の名前が違う
解決: 開始ノードの変数名と、コードの kwargs.get('ここ', '') を同じにする

問題3:結果が表示されない

原因: 出力変数の設定忘れ
解決: コード実行ノードの「出力変数」の名前や型(StringやObject)をチェックする


🎉 応用例:こんなことができる

簡単な例

  • 文字数を数える
  • 大文字・小文字変換
  • 文字を逆順にする
  • 特定の文字を置き換える

ちょっと高度な例

  • JSON データを整理する
  • 日付の形式を変換する
  • 簡単な計算をする
  • テキストから特定の情報を抜き出す

全部、上のプロンプトを使えば作れます!


まとめ

  1. 普通の Python と Dify 用 Python は別物
  2. 決まった形(テンプレート)がある
  3. プロンプトをコピペして生成すれば確実
  4. 入力名と出力名を合わせることが重要

Python がわからなくても大丈夫!プロンプトをコピペして使えば、誰でも Dify で動くコードが作れます。

ここまでお読みいただきありがとうございます😊お役に立てば嬉しいです!✨

Discussion