このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。モデルプラグインは 2 つのエンティティで自身を記述します。認証を処理しサポートするモデルを列挙する Provider と、モデルごとにそのタイプ、機能、パラメータを宣言する AIModelEntity です。
以下のすべてのエンティティは、
dify_plugin.entities.model モジュールの Pydantic BaseModel サブクラスです。簡易判断ガイド
認証のみ:事前定義モデル
ユーザーが API キーを貼り付けると、用意したモデル一覧をすべて利用できます。
configurate_methods: [predefined-model] を設定し、各モデルの AIModelEntity を YAML で定義します。ユーザー指定モデル
ユーザーが独自のモデル名とベース URL(OpenAI 互換エンドポイント、カスタムデプロイなど)を設定します。
configurate_methods: [customizable-model] を使用し、カスタマイズ可能モデル を参照してください。混在
組み込みのカタログに加えて、ユーザーが追加するカスタムモデルにも対応します。両方の
configurate_methods の値を組み合わせます。チュートリアル
エンドツーエンドの例については、新しいモデルプロバイダーの作成 を参照してください。
Provider
string
プロバイダー識別子。例:
openai。object
string
背景色の値。例:
#FFFFFF。空の場合はフロントエンドのデフォルト色が使用されます。object
array[ModelType]
required
サポートするモデルタイプ。
array[ConfigurateMethod]
required
設定方法。
ProviderCredentialSchema
required
プロバイダー認証情報の仕様。
ModelCredentialSchema
モデル認証情報の仕様。
AIModelEntity
string
required
モデル識別子。例:
gpt-3.5-turbo。ModelType
required
モデルタイプ。
array[ModelFeature]
サポートする機能。
object
required
モデルプロパティ。
LLMMode
モード(モデルタイプ
llm)。integer
コンテキストサイズ(モデルタイプ
llm および text-embedding)。integer
最大チャンク数(モデルタイプ
text-embedding および moderation)。integer
最大ファイルアップロードサイズ(単位:MB、モデルタイプ
speech2text)。string
サポートするファイル拡張子。例:
mp3,mp4(モデルタイプ speech2text)。string
デフォルト音声。
alloy、echo、fable、onyx、nova、shimmer のいずれか(モデルタイプ tts)。integer
1 回の変換あたりの単語数の上限。デフォルトでは段落単位で分割します(モデルタイプ
tts)。string
サポートするオーディオファイル拡張子。例:
mp3,wav(モデルタイプ tts)。integer
テキストからオーディオへの変換の同時タスク数(モデルタイプ
tts)。integer
チャンクあたりの最大文字数(モデルタイプ
moderation)。array[ParameterRule]
モデル呼び出しパラメータのルール。
PriceConfig
価格情報。
boolean
モデルが非推奨かどうか。非推奨のモデルはモデル一覧に表示されなくなりますが、既存の設定は引き続き動作します。デフォルトは
False です。ModelType
string
テキスト生成モデル。
string
テキスト埋め込みモデル。
string
リランクモデル。
string
音声からテキスト。
string
テキストから音声。
string
コンテンツモデレーション。
ConfigurateMethod
string
事前定義モデル。ユーザーは統一されたプロバイダー認証情報を一度設定するだけで、そのプロバイダー下のすべての事前定義モデルを使用できます。
string
カスタマイズ可能モデル。ユーザーはモデルごとに認証情報の設定を追加します。
string
リモートから取得。
predefined-model と同様に統一されたプロバイダー認証情報のみが必要ですが、モデル一覧はその認証情報を使用してプロバイダーから取得されます。ModelFeature
string
Agent 推論。一般的に 70B を超えるモデルは思考連鎖(chain-of-thought)の能力を備えています。
string
ビジョン(画像理解)。
string
ツール呼び出し。
string
複数ツール呼び出し。
string
ストリーミングツール呼び出し。
FetchFrom
string
事前定義モデル。
string
リモートモデル。
LLMMode
string
テキスト補完。
string
チャット。
ParameterRule
string
required
モデル呼び出しで使用される実際のパラメータ名。
string
使用するテンプレート。
temperaturetop_pfrequency_penaltypresence_penaltymax_tokens
use_template に設定すると、entities.defaults.PARAMETER_RULE_TEMPLATE のデフォルト設定を継承します。その場合に必要なのは name と use_template のみです。追加で設定したパラメータは、テンプレートのデフォルト値を上書きします。openai/llm/gpt-3.5-turbo.yaml と 新しいモデルプロバイダーの作成 の例を参照してください。
boolean
パラメータが必須かどうか。デフォルトは
False です。int/float/string/boolean
デフォルト値。
int/float
最小値。数値タイプのみ。
int/float
最大値。数値タイプのみ。
integer
保持する小数桁数。数値タイプのみ。
array[string]
ドロップダウンのオプション値。
type が string の場合のみ適用されます。設定されていないか null の場合、値は制限されません。PriceConfig
float
入力(プロンプト)の単価。
float
出力(返されるコンテンツ)の単価。
float
価格の単位。例えば 100 万トークンあたりの価格設定の場合、単価に対応する単位トークン数は
0.000001 です。string
通貨単位。
ProviderCredentialSchema
array[CredentialFormSchema]
required
認証情報フォームの仕様。
ModelCredentialSchema
object
required
array[CredentialFormSchema]
required
認証情報フォームの仕様。
CredentialFormSchema
string
required
フォーム項目の変数名。
FormType
required
フォーム項目のタイプ。
boolean
フォーム項目が必須かどうか。
string
デフォルト値。
array[FormOption]
ドロップダウンの内容。
select および radio タイプに固有です。integer
最大入力長。
text-input タイプに固有です。0 は制限なしを意味します。array[FormShowOnObject]
他のフォーム項目の値が指定した条件を満たす場合にのみこの項目を表示します。空の場合は常に表示します。
FormType
string
テキスト入力コンポーネント。
string
パスワード入力コンポーネント。
string
単一選択ドロップダウン。
string
ラジオコンポーネント。
string
スイッチコンポーネント。
true と false のみサポートします。FormOption
string
required
ドロップダウンのオプション値。
array[FormShowOnObject]
他のフォーム項目の値が指定した条件を満たす場合にのみこのオプションを表示します。空の場合は常に表示します。
FormShowOnObject
string
required
他のフォーム項目の変数名。
string
required
他のフォーム項目の変数値。
関連リソース
- モデルアーキテクチャの詳細:モデルプラグインのアーキテクチャ仕様
- 新しいモデルをすばやく統合する:これらのルールを適用して新しいモデルを追加する
- 一般仕様:プラグインマニフェストの設定
- 新しいモデルプロバイダーを作成する:新しいモデルプロバイダープラグインを開発する