Dify
日本語
日本語
  • 入門
    • Difyへようこそ
      • 特性と技術仕様
      • モデルプロバイダーリスト
    • クラウドサービス
    • コミュニティ版
      • Docker Compose デプロイ
      • ローカルソースコードで起動
      • aaPanelでのデプロイ方法
      • フロントエンドDockerコンテナを単独起動
      • 環境変数の説明
      • よくある質問
    • Dify Premium
    • Dify 教育版
  • マニュアル
    • モデル
      • 新しいプロバイダーの追加
      • 事前定義されたモデルの追加
      • カスタムモデルの追加
      • インタフェース
      • 配置ルール
      • 負荷分散
    • アプリ・オーケストレーション
      • アプリの作成
      • チャットボット
        • 複数モデルのデバッグ
      • エージェント
      • ツールキット
        • コンテンツモデレーション
    • ワークフロー
      • キーコンセプト
      • 変数
      • ノードの説明
        • 開始
        • 終了
        • 回答
        • LLM
        • 知識検索
        • 質問分類
        • 条件分岐
        • コード実行
        • テンプレート
        • テキスト抽出ツール
        • リスト処理
        • 変数集約
        • 変数代入
        • 反復処理(イテレーション)
        • パラメータ抽出
        • HTTPリクエスト
        • エージェント
        • ツール
        • 繰り返し処理(ループ)
      • ショートカットキー
      • オーケストレートノード
      • ファイルアップロード
      • エラー処理
        • 事前定義されたエラー処理ロジック
        • エラータイプの概要
      • 追加機能
      • プレビューとデバッグ
        • プレビューと実行
        • ステップ実行
        • 対話/実行ログ
        • チェックリスト
        • 実行履歴
      • アプリケーション公開
      • JSON形式での出力
      • 変更通知:画像アップロード機能がファイルアップロード機能に統合されました
    • ナレッジベース
      • ナレッジベース作成
        • 1. オンラインデータソースの活用
          • 1.1 Notion からデータをインポート
          • 1.2 Webサイトからデータをインポート
        • 2. チャンクモードの指定
        • 3. インデックス方式と検索オプションの設定
      • ナレッジベースの管理
        • ナレッジベース内ドキュメントの管理
        • APIを活用したナレッジベースのメンテナンス
      • メタデータ
      • アプリ内でのナレッジベース統合
      • リコールテスト/引用帰属
      • ナレッジベースの要求頻度制限
      • 外部ナレッジベースとの接続
      • 外部ナレッジベースAPI
    • ツール
      • クイック統合ツール
      • 高度統合ツール
      • ツールの設定
        • Google
        • Bing
        • SearchApi
        • StableDiffusion
        • Perplexity Search
        • AlphaVantage 株式分析
        • Dall-e
        • Youtube
        • Serper
        • SearXNG
        • SiliconFlow(Flux AI サポート)
        • ComfyUI
    • アプリ公開
      • シングルページWebアプリとして公開
        • Web アプリの設定
        • テキスト生成アプリ
        • 対話型アプリ
      • Webサイトへの埋め込み
      • API基づく開発
      • フロントエンドテンプレートに基づいた再開発
    • アノテーション
      • ログとアノテーション
      • アノテーション返信
    • モニタリング
      • データ分析
      • 外部Opsツール統合
        • LangSmithを統合
        • LangFuseを統合
        • Opikを統合
    • 拡張
      • API 拡張
        • Cloudflare Workers を使用した API ツールのデプロイ
        • コンテンツモデレーション
      • コード拡張
        • 外部データツール
        • コンテンツモデレーション
    • コラボレーション
      • 発見
      • メンバーの招待と管理
    • 管理
      • アプリの管理
      • チームメンバーの管理
      • 個人アカウントの管理
      • サブスクリプション管理
      • バージョン管理
  • ハンドオン工房
    • 初級編
      • ゼロからAI画像生成アプリの構築方法
      • AIエージェントの実践:個人のオンライン旅行アシスタントの構築方法
    • 中級編
      • チャットストリームエージェントを使用した Twitter アカウントの分析方法
      • ファイルアップロードを使用した記事理解アシスタントの構築方法
  • コミュニティ
    • サポートの求め
    • 貢献者ガイド
    • ドキュメントへの貢献
  • プラグイン
    • 機能紹介
    • クイックスタート
      • プラグインのインストールと活用
      • プラグイン開発の入門
        • 開発環境のセットアップ
        • ツール型プラグイン
        • モデル型プラグイン
          • モデルプロバイダーの構築
          • 定義済みモデルの組み込み
          • カスタムモデルの組み込み
        • エージェント戦略プラグイン
        • 拡張機能型プラグイン
        • バンドル
      • プラグインのデバッグ方法
    • プラグイン管理方法
    • スキーマ仕様
      • Manifest(マニフェスト)
      • Endpoint(エンドポイント)
      • Tool(ツール)
      • Agent(エージェント)
      • Model(モデル)
        • モデル設計規則
        • モデルスキーマ
      • 一般的な標準仕様
      • 永続化されたストレージ
      • Difyサービスの逆呼び出し
        • アプリ
        • モデル
        • ツール
        • ノード
    • ベストプラクティス
      • Slack Bot プラグインの開発
      • Dify MCP プラグインガイド:ワンクリックで Zapier に接続してメールを自動送信
    • プラグインの公開
      • プラグインの自動公開
      • Difyマーケットプレイスへの公開
        • プラグイン開発者ガイドライン
        • プラグインのプライバシー保護に関するガイドライン
      • 個人GitHubリポジトリへの公開
      • ローカルでの公開と共有
      • 第三者署名検証のためにプラグインに署名する
    • よくある質問
  • 開発
    • バックエンド
      • DifySandbox
        • 貢献ガイド
    • モデルの統合
      • Hugging Faceのオープンソースモデルを統合
      • Replicateのオープンソースモデルを統合
      • Xinferenceでデプロイしたローカルモデルを統合
      • OpenLLMでデプロイしたローカルモデルを統合
      • LocalAIでデプロイしたローカルモデルを統合
      • Ollamaでデプロイしたローカルモデルを統合
      • LiteLLM Proxyを使用してモデルを統合する
      • GPUStackとの統合によるローカルモデルのデプロイ
      • AWS Bedrock上のモデル(DeepSeek)の接続
    • 移行
      • コミュニティ版を v1.0.0 に移行する
  • もっと読む
    • 活用事例
      • DeepSeek & Dify連携ガイド:多段階推論を活用したAIアプリケーション構築
      • Ollama + DeepSeek + Dify のプライベートデプロイ:あなた自身のAIアシスタントの構築方法
      • あなた専用のQAチャットボットのトレーニング方法
      • コードなしでMidjourney プロンプトボットを作成する方法
      • Notion AI アシスタントを構築する
      • 数分で業務データを持つ公式サイトのAIチャットボットを作成する方法
      • DifyチャットボットをWixサイトに統合する方法
      • AWS Bedrockのナレッジベースに統合する方法
      • Difyで大規模言語モデルの「競技場」を体験する方法:DeepSeek R1 VS o1 を例に
      • Difyスケジューラーの構築
      • DifyクラウドでAI Thesis Slack Botを構築
    • さらに読む
      • LLMOpsとは何ですか?
      • 配列変数とは何ですか?
      • 検索拡張生成(RAG)
        • ハイブリッド検索
        • Rerank
        • リトリーバルモード
      • プロンプトエンジニアリング
      • DifyでJSONスキーマ出力を使用する方法
    • FAQ
      • ローカルデプロイに関するFAQ
      • LLM設定と使用に関するFAQ
      • プラグイン
  • ポリシー
    • オープンソースライセンス
    • ユーザ規約
      • 利用規約
      • プライバシーポリシー
      • 合規性レポートの入手方法
Powered by GitBook
On this page
  • 今回の学ぶポイント
  • 1. 準備
  • 2. ツールの設定
  • 3. エージェントの構築
  • 4. サンプル出力
  • 問題1:ユーザー入力の規範化方法
  1. ハンドオン工房
  2. 初級編

AIエージェントの実践:個人のオンライン旅行アシスタントの構築方法

PreviousゼロからAI画像生成アプリの構築方法Next中級編

Last updated 3 months ago

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

前回の実験では、エージェントの概念を初めて理解し、システムのプロンプトワードを試してみました。

今回は、エージェントのプロンプトワードをさらに深く探求し、より体系的なプロンプトワードの書き方を学んでいきます。

今回の学ぶポイント

  • Difyを使用したエージェントの構築方法

  • 構造化されたプロンプトワードの書き方

  • 変数の使用方法

1. 準備

エージェントを新しく作成する前に、以下の手順を完了させてください:

  • に登録とログインします。ローカルに展開したい場合は、を参照してください。

  • 少なくとも1つのモデルプロバイダを設定します(Difyは200回のOpenAIメッセージクレジットを提供していますが、実験を円滑に進行させるためには、独自にLLMのAPIキーを設定することをお勧めします)。

2. ツールの設定

Google

オンライン旅行アシスタントを構築するには、ネットワークに接続された検索エンジンを参考資料として使用する必要があります。この記事では、Googleを例に説明します。

もちろん、他の検索エンジン、例えばや、AI駆動のを使用することも可能です。

Difyが提供するGoogleツールはSerpAPIに基づいており、事前にSerpAPIのAPIキー管理ページにアクセスしてAPIキーを申請し、Dify - ツールの該当箇所に貼り付ける必要があります。

具体的な手順は以下の通りです:

  1. SerpAPIのAPIキーを追加:

SerpAPIは1か月に100回の無料呼び出しを提供しており、この実験を完了するのに十分です。追加クレジットが必要な場合は、残高を追加するか、他のオープンソースのソリューションを使用できます。

  1. Dify - ツール - Googleに移動:

認可に進むをクリックし、APIキーを入力して保存します。

webscraper

この実験では、特定のウェブページからコンテンツを抽出するためのスクレイピングツールが必要ですが、Difyは組み込みのツールを提供しているため、追加の設定は不要です。

Wikipedia

目的地の知識を正確に紹介するために、Wikipediaは非常に良い情報源です。Difyにもこのツールが組み込まれており、追加の設定は不要です。

3. エージェントの構築

まず、空のアプリ - エージェントを作成を選択します。

ツールとしてGoogle、webscraper、Wikipediaを追加して有効にします。

4. サンプル出力

サンプル出力は必須ではありませんが、エージェントに期待する出力の形式を示す参考になります。

以下は旅行アシスタントのサンプル出力です:

## サンプル

### 詳細な旅行計画

**ホテルのおすすめ**
1. ケンジントンホテル(詳細はこちら:www.doylecollection.com/hotels/the-kensington-hotel)
   - 評価:4.6⭐
   - 価格:1泊約350ドル
   - 紹介:摂政時代の連棟住宅に位置し、南ケンジントン駅まで徒歩5分、ヴィクトリア&アルバート博物館まで徒歩10分の優雅なホテルです。

2. レンブラントホテル(詳細はこちら:www.sarova-rembrandthotel.com)
   - 評価:4.3⭐
   - 価格:1泊約130ドル
   - 紹介:1911年に建てられた元ハロッズ百貨店のアパートで、現代的なホテルはヴィクトリア&アルバート博物館の向かいにあり、南ケンジントン駅(ヒースロー空港行き直通)まで徒歩5分です。

**1日目 - 到着と落ち着き**
- **午前**:空港に到着。冒険の旅の始まりです!弊社の代表が空港でお迎えし、スムーズなチェックインをサポートいたします。
- **午後**:ホテルにチェックインし、少し休んでエネルギーを回復します。
- **夜**:周辺の宿泊施設を散策し、地元の雰囲気に浸ってください。近くの飲食店を見つけて、初めての楽しい夕食をお楽しみください。

**2日目 - 文化と自然の旅**
- **午前**:世界でもトップクラスの学府である帝国カレッジから1日をスタートしましょう。キャンパスツアーをお楽しみください。
- **午後**:自然史博物館(その魅力的な展示で知られています)またはヴィクトリア&アルバート博物館(芸術とデザインを称える)を訪れる選択肢があります。その後、静かなハイドパークでリラックスし、蛇形湖でボートに乗ることもできます。
- **夜**:地元の料理を探索しましょう。伝統的なイギリスのパブで夕食をお召し上がりいただくことをお勧めします。

**追加サービス:**
- **コンシェルジュサービス**:滞在中に、レストランの予約、チケット購入、交通手配、特別なリクエストへの対応を行うコンシェルジュサービスをご利用いただけます。
- **24時間サポート**:旅行中に発生する可能性のある問題や要望に対応するため、24時間対応のサポートを提供しています。

楽しい旅を!豊かな経験と素晴らしい思い出でいっぱいになりますように!

問題1:ユーザー入力の規範化方法

通常、私たちがエージェントに入力する内容は自然言語ですが、自然言語の欠点の一つはその規範化が難しいことです。時には、エージェントにとって不要な情報や価値のない情報が含まれている可能性があります。この場合、変数を導入することで入力を規範化することができます。

Difyは現在、短文、段落、ドロップダウンオプション、数値、APIベースの変数といった種類の変数をサポートしています。

本実験では、短文タイプの変数を選択するだけで十分です。

変数の中から適切な変数タイプを選ぶことで、ユーザーに目的地、旅行日数、予算を尋ねることができます。

変数キー
変数タイプ
フィールド名
必須

destination

短文

目的地

はい

day

短文

旅行日数

はい

budget

短文

旅行予算

はい

注意が必要なのは、変数キー、つまり変数の名前は、大文字小文字の英字、数字、アンダースコアのみをサポートしている点です。フィールド名は、ユーザーが見ることのできるヒントの内容です。

変数を追加した後、ユーザーはアプリ開発者の意図に従って必要な背景情報をアプリに提供できるようになります。その結果は以下のようになります:

にアクセスし、まだ登録していない場合は登録ページにリダイレクトされます。

AI画像生成アプリの構築方法
Dify
コミュニティ版 - Docker Composeデプロイ
Bing
Perplexity
SerpAPI - API Key