このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。このページでは、すべてのプラグインタイプに共通する構造を説明します。全体的なアーキテクチャを把握するには、プラグイン開発の基本概念 および 開発者チートシート と併せてお読みください。
パス仕様
Manifest やその他の YAML ファイルにおけるファイルパスは、ファイルの種類に応じて 2 つのルールに従います。- 画像や動画などのマルチメディアファイル(例: プラグインの
icon)は、プラグインのルートディレクトリ下にある_assetsフォルダに配置します。 .pyや.yamlなどの通常のテキストファイルは、プラグインプロジェクト内の絶対パスで参照します。
共通構造
一部のデータ構造は、ツール、モデル、Endpoints の間で共有されます。これらをここで定義します。I18nObject
I18nObject は IETF BCP 47 標準に準拠した国際化構造です。次の 4 つの言語をサポートします。
string
英語(米国)。
string
簡体字中国語。
string
日本語。
string
ポルトガル語(ブラジル)。
ProviderConfig
ProviderConfig は、Tool と Endpoint の両方で使用される共通のプロバイダーフォーム構造です。
string
フォーム項目名。
I18nObject
required
表示ラベル。IETF BCP 47 標準に準拠します。
provider_config_type
required
フォームフィールドのタイプ。フィールドが UI でどのようにレンダリングされるかを決定します。
provider_config_scope
オプションの範囲指定。
type の値によって異なります。boolean
フィールドを空にできないかどうか。
any
デフォルト値。
float、int、string の基本型のみをサポートします。array[provider_config_option]
利用可能なオプション。
type が select の場合のみ使用します。object
ヘルプドキュメントのリンクラベル。IETF BCP 47 に準拠します。
string
ヘルプドキュメントのリンク。
object
複数言語のプレースホルダーテキスト。IETF BCP 47 に準拠します。
ProviderConfigOption (object)
string
required
オプションの値。
object
required
オプションの表示ラベル。IETF BCP 47 に準拠します。
ProviderConfigType (string)
string
暗号化される設定情報。
string
プレーンテキスト入力フィールド。
string
ドロップダウン選択フィールド。
boolean
スイッチ/トグルコントロール。
object
モデル設定セレクター。プロバイダー名、モデル名、モデルパラメータを含みます。
object
アプリケーション ID セレクター。
object
ツール設定セレクター。ツールプロバイダー、名前、パラメータを含みます。
string
データセットセレクター(TBD)。
ProviderConfigScope (string)
type が model-selector の場合:
string
すべてのモデルタイプ。
string
大規模言語モデルのみ。
string
テキスト埋め込みモデルのみ。
string
リランクモデルのみ。
string
テキスト読み上げモデルのみ。
string
音声テキスト変換モデルのみ。
string
コンテンツモデレーションモデルのみ。
string
ビジョンモデルのみ。
type が app-selector の場合:
string
すべてのアプリケーションタイプ。
string
チャットアプリケーションのみ。
string
Workflow アプリケーションのみ。
string
補完アプリケーションのみ。
type が tool-selector の場合:
string
すべてのツールタイプ。
string
プラグインツールのみ。
string
API ツールのみ。
string
ワークフローツールのみ。
ModelConfig
string
plugin_id を含むモデルプロバイダー名。langgenius/openai/openai の形式です。string
特定のモデル名。
NodeResponse
dict
最終的にノードに渡される変数。
dict
ノードの出力結果。
dict
ノードの実行中に生成されるデータ。
ToolSelector
string
ツールプロバイダー名。
string
ツール名。
string
ツールの説明。
dict[string, any]
ツール設定情報。
dict[string, dict]
関連リソース
- プラグイン開発の基本概念:Dify プラグイン開発の概要
- 開発者チートシート:よく使うコマンドと概念のクイックリファレンス
- ツールプラグイン開発の詳細:プラグイン情報の定義方法とツールプラグイン開発プロセス
- モデル設計ルール:モデル設定の標準