著者:Steven Lynn. Difyのテクニカルライター

画像生成技術の発展に伴い、Dall-e、Flux、Stable Diffusionなどの優れた画像生成ツールが多数登場しています。

本記事では、Difyを使用してAI画像生成アプリを開発する方法について学びます。

プロンプトの書き方

プロンプトはエージェントの核心であり、出力結果に直接的な影響を与えます。一般的に、プロンプトが具体的であればあるほど、出力も向上しますが、過度に長いプロンプトは逆効果になることもあります。

プロンプトを調整する技術は「プロンプトエンジニアリング」と呼ばれています。

この実験では、プロンプトエンジニアリングを完全に習得していなくても心配する必要はありません。後で段階的に学ぶことができます。

まずは、最もシンプルなプロンプトから始めましょう:

ユーザーのプロンプトに従って、指定された内容を stability_text2image を使用して描画してください。

ユーザーがコマンドを入力するたびに、エージェントはこのシステムレベルの指示を理解し、ユーザーの描画タスクを実行する際には、stabilityというツールを呼び出すことを認識します。

例:女の子が開いた本を持っているのを描く。

プロンプトを書くのかしなくても可能ですか?もちろん可能です!

プロンプトの上部にある自動をクリックしてください。

指示に要件を入力し、自動をクリックします。右側に生成されたプロンプトがAIによって作成されます。

ただし、プロンプトについての理解を深めるためには、初期段階ではこの機能に頼るべきではありません。

発表

右上の公開ボタンをクリックし、公開後にRunを選択して、オンラインで実行されるエージェント用のWebページを取得します。

このWebページのURLをコピーして、友人と共有することができます。

質問1:生成された画像のスタイルを指定する方法は?

ユーザーの入力コマンドにスタイル指示を追加することができます。例えば:「アニメスタイルで、女の子が開いた本を描いてください。」

ただし、デフォルトのスタイルをアニメスタイルに設定したい場合は、システムプロンプトにその旨を追加することができます。なぜなら、システムプロンプトはユーザーコマンドが実行されるたびに認識され、優先されるからです。

ユーザーのプロンプトに従って、指定された内容をstability_text2imageを使用して描画してください。画像はアニメスタイルです。

質問2:特定のユーザーからのリクエストを拒否する方法は?

多くのビジネスシナリオでは、いくつかの不適切なコンテンツの出力を避ける必要がありますが、LLMはしばしば「無知」であり、出力コンテンツが間違っていてもユーザーの指示に従います。このように、モデルが間違ったコンテンツを作り出してユーザーに答えようとする現象を「モデルの幻覚」と呼びます。したがって、必要に応じてモデルがユーザーのリクエストを拒否できることが重要です。

さらに、ユーザーがビジネスに関係のないコンテンツを要求することもあり、エージェントがそのようなリクエストを拒否する必要があります。

異なるプロンプトをカテゴリ別に整理するために、マークダウン形式を使用して、エージェントに不適切なコンテンツを拒否する方法を教えるプロンプトを「制約」のセクションに記述します。もちろん、このフォーマットは標準化のためのものであり、独自のフォーマットを持つこともできます。

## タスク
ユーザーのプロンプトに従って、指定された内容をstability_text2imageを使用して描画してください。画像はアニメスタイルです。

## 制約
もしユーザーが描画に関係のないコンテンツを要求した場合、「申し訳ありませんが、その内容は理解できません。」と返答してください。

例えば、今夜の夕食は何ですか?と聞いてみましょう。

よりフォーマルなビジネスシナリオでは、感情的な単語ライブラリを使用してユーザーのリクエストを拒否することができます。

Add Feature - Content Moderationにキーワード「dinner」を追加します。ユーザーがそのキーワードを入力すると、エージェントアプリは「申し訳ありませんが、その内容は理解できません。」と出力します。