ゼロからAI画像生成アプリの構築方法
Last updated
Last updated
著者:Steven Lynn. Difyのテクニカルライター
画像生成技術の発展に伴い、Dall-e、Flux、Stable Diffusionなどの優れた画像生成ツールが多数登場しています。
本記事では、Difyを使用してAI画像生成アプリを開発する方法について学びます。
Difyを使用してエイジェントの作り方
エイジェントの基本的なコンセプト
プロンプトエンジニアリングの基本
ツールの使用方法
大規模モデルの幻覚の概念
こちら をクリックして、ステイビリティAPIキー管理ページに移動します。
まだ登録していない場合は、API管理ページに入る前に登録を求められます。
管理ページに入ったら、キーをコピーするためにコピー
をクリックします。
次に、Dify - ツール - Stability にキーを入力する必要があります。以下の手順に従ってください:
Difyにログインする
ツールに入る
ステイビリティを選択する
キーを入力して保存
インタラクションを最適化するために、ユーザーの指示を具体化するための大規模言語モデル(LLM)が必要です。つまり、画像生成のためのプロンプトを記述します。次に、Difyでモデルプロバイダを設定します。
Difyの無料版では、200回の無料のOpenAIメッセージクレジットが提供されます。
メッセージクレジットが不足している場合は、以下の手順に従って他のモデルプロバイダをカスタマイズできます:
適切なモデルプロバイダが見つからない場合は、groqプラットフォームがLlamaなどのLLM用に無料のコールクレジットを提供しています。
groq API管理ページにログインします。
APIキーの作成をクリックし、希望の名前を設定してAPIキーをコピーします。
Dify - モデルプロバイダに戻り、groqcloudを選択し、設定をクリックします。
APIキーを貼り付けて保存します。
Dify - スタジオに戻り、空白から作成を選択します。
この実験では、エージェントの基本的な使用方法を理解するだけで十分です。
エージェントとは?
エージェントは、人間の行動と能力をシミュレートするAIシステムです。自然言語処理を通じて環境とやり取りし、入力情報を理解し、対応する出力を生成します。エージェントはまた「知覚」能力を持ち、さまざまな形式のデータを処理し・分析し、さまざまな外部ツールやAPIを呼び出して使用してタスクを完了することができます。この設計により、エージェントはより柔軟に複雑な状況を処理し、ある程度人間の思考や行動パターンをシミュレートできるようになります。
エージェントを選択し、名前を入力します。
以下のようにエージェントのオーケストレーションインターフェースに入ります。
LLMを選択します。このチュートリアルでは、groqが提供するLlama-3.1-70Bを例にします:
ツールでステイビリティを選択します:
プロンプトはエージェントの核心であり、出力結果に直接的な影響を与えます。一般的に、プロンプトが具体的であればあるほど、出力も向上しますが、過度に長いプロンプトは逆効果になることもあります。
プロンプトを調整する技術は「プロンプトエンジニアリング」と呼ばれています。
この実験では、プロンプトエンジニアリングを完全に習得していなくても心配する必要はありません。後で段階的に学ぶことができます。
まずは、最もシンプルなプロンプトから始めましょう:
ユーザーがコマンドを入力するたびに、エージェントはこのシステムレベルの指示を理解し、ユーザーの描画タスクを実行する際には、stabilityというツールを呼び出すことを認識します。
例:女の子が開いた本を持っているのを描く。
プロンプトの上部にある自動をクリックしてください。
指示に要件を入力し、自動をクリックします。右側に生成されたプロンプトがAIによって作成されます。
ただし、プロンプトについての理解を深めるためには、初期段階ではこの機能に頼るべきではありません。
右上の公開ボタンをクリックし、公開後にRunを選択して、オンラインで実行されるエージェント用のWebページを取得します。
このWebページのURLをコピーして、友人と共有することができます。
ユーザーの入力コマンドにスタイル指示を追加することができます。例えば:「アニメスタイルで、女の子が開いた本を描いてください。」
ただし、デフォルトのスタイルをアニメスタイルに設定したい場合は、システムプロンプトにその旨を追加することができます。なぜなら、システムプロンプトはユーザーコマンドが実行されるたびに認識され、優先されるからです。
多くのビジネスシナリオでは、いくつかの不適切なコンテンツの出力を避ける必要がありますが、LLMはしばしば「無知」であり、出力コンテンツが間違っていてもユーザーの指示に従います。このように、モデルが間違ったコンテンツを作り出してユーザーに答えようとする現象を「モデルの幻覚」と呼びます。したがって、必要に応じてモデルがユーザーのリクエストを拒否できることが重要です。
さらに、ユーザーがビジネスに関係のないコンテンツを要求することもあり、エージェントがそのようなリクエストを拒否する必要があります。
異なるプロンプトをカテゴリ別に整理するために、マークダウン形式を使用して、エージェントに不適切なコンテンツを拒否する方法を教えるプロンプトを「制約」のセクションに記述します。もちろん、このフォーマットは標準化のためのものであり、独自のフォーマットを持つこともできます。
よりフォーマルなビジネスシナリオでは、感情的な単語ライブラリを使用してユーザーのリクエストを拒否することができます。
Add Feature - Content Moderationにキーワード「dinner」を追加します。ユーザーがそのキーワードを入力すると、エージェントアプリは「申し訳ありませんが、その内容は理解できません。」と出力します。
承認をクリック
あなたのアバター - 設定 - モデルプロバイダの順にクリックします。
例えば、今夜の夕食は何ですか?と聞いてみましょう。