Skip to main content

このドキュメントは AI によって自動翻訳されています。不正確な部分がある場合は、英語版 を参照してください。

モデルプラグインは 2 つのエンティティで自身を記述します。認証を処理しサポートするモデルを列挙する Provider と、モデルごとにそのタイプ、機能、パラメータを宣言する AIModelEntity です。

Note

以下のすべてのエンティティは、dify_plugin.entities.model モジュールの Pydantic BaseModel サブクラスです。

簡易判断ガイド#

認証のみ:事前定義モデル

ユーザーが API キーを貼り付けると、用意したモデル一覧をすべて利用できます。configurate_methods: [predefined-model] を設定し、各モデルの AIModelEntity を YAML で定義します。

ユーザー指定モデル

ユーザーが独自のモデル名とベース URL(OpenAI 互換エンドポイント、カスタムデプロイなど)を設定します。configurate_methods: [customizable-model] を使用し、カスタマイズ可能モデル を参照してください。

混在

組み込みのカタログに加えて、ユーザーが追加するカスタムモデルにも対応します。両方の configurate_methods の値を組み合わせます。

チュートリアル

エンドツーエンドの例については、新しいモデルプロバイダーの作成 を参照してください。

Provider#

providerstring#

プロバイダー識別子。例:openai。

labelobject#

プロバイダーの表示名(i18n)。en_US(英語)と zh_Hans(中国語)をサポートします。

zh_Hansstring#

中国語ラベル。設定されていない場合は en_US にフォールバックします。

en_USstringrequired#

英語ラベル

descriptionobject#

プロバイダーの説明(i18n)。

zh_Hansstring#

中国語の説明。

en_USstringrequired#

英語の説明。

icon_smallobject#

プロバイダーの小アイコン。プロバイダー実装ディレクトリ下の _assets ディレクトリに保存します。

zh_Hansstring#

中国語アイコン。

en_USstringrequired#

英語アイコン。

icon_largeobject#

プロバイダーの大アイコン。プロバイダー実装ディレクトリ下の _assets ディレクトリに保存します。

zh_Hansstring#

中国語アイコン。

en_USstringrequired#

英語アイコン。

backgroundstring#

背景色の値。例:#FFFFFF。空の場合はフロントエンドのデフォルト色が使用されます。

helpobject#

ヘルプ情報。

titleobject#

ヘルプタイトル(i18n)。

zh_Hansstring#

中国語タイトル。

en_USstringrequired#

英語タイトル。

urlobject#

ヘルプリンク(i18n)。

zh_Hansstring#

中国語リンク。

en_USstringrequired#

英語リンク。

supported_model_typesarray[ModelType]required#

サポートするモデルタイプ。

configurate_methodsarray[ConfigurateMethod]required#

設定方法。

provider_credential_schemaProviderCredentialSchemarequired#

プロバイダー認証情報の仕様。

model_credential_schemaModelCredentialSchema#

モデル認証情報の仕様。

AIModelEntity#

modelstringrequired#

モデル識別子。例:gpt-3.5-turbo。

labelobject#

モデルの表示名(i18n)。en_US(英語)と zh_Hans(中国語)をサポートします。

zh_Hansstring#

中国語ラベル。

en_USstringrequired#

英語ラベル。

model_typeModelTyperequired#

モデルタイプ。

featuresarray[ModelFeature]#

サポートする機能。

model_propertiesobjectrequired#

モデルプロパティ。

modeLLMMode#

モード(モデルタイプ llm)。

context_sizeinteger#

コンテキストサイズ(モデルタイプ llm および text-embedding)。

max_chunksinteger#

最大チャンク数(モデルタイプ text-embedding および moderation)。

file_upload_limitinteger#

最大ファイルアップロードサイズ(単位:MB、モデルタイプ speech2text)。

supported_file_extensionsstring#

サポートするファイル拡張子。例:mp3,mp4(モデルタイプ speech2text)。

default_voicestring#

デフォルト音声。alloy、echo、fable、onyx、nova、shimmer のいずれか(モデルタイプ tts)。

voicesarray#

利用可能な音声(モデルタイプ tts)。

modestring#

音声モデル。

namestring#

音声モデルの表示名。

languagestring#

音声モデルがサポートする言語。

word_limitinteger#

1 回の変換あたりの単語数の上限。デフォルトでは段落単位で分割します(モデルタイプ tts)。

audio_typestring#

サポートするオーディオファイル拡張子。例:mp3,wav(モデルタイプ tts)。

max_workersinteger#

テキストからオーディオへの変換の同時タスク数(モデルタイプ tts)。

max_characters_per_chunkinteger#

チャンクあたりの最大文字数(モデルタイプ moderation)。

parameter_rulesarray[ParameterRule]#

モデル呼び出しパラメータのルール。

pricingPriceConfig#

価格情報。

deprecatedboolean#

モデルが非推奨かどうか。非推奨のモデルはモデル一覧に表示されなくなりますが、既存の設定は引き続き動作します。デフォルトは False です。

ModelType#

llmstring#

テキスト生成モデル。

text-embeddingstring#

テキスト埋め込みモデル。

rerankstring#

リランクモデル。

speech2textstring#

音声からテキスト。

ttsstring#

テキストから音声。

moderationstring#

コンテンツモデレーション。

ConfigurateMethod#

predefined-modelstring#

事前定義モデル。ユーザーは統一されたプロバイダー認証情報を一度設定するだけで、そのプロバイダー下のすべての事前定義モデルを使用できます。

customizable-modelstring#

カスタマイズ可能モデル。ユーザーはモデルごとに認証情報の設定を追加します。

fetch-from-remotestring#

リモートから取得。predefined-model と同様に統一されたプロバイダー認証情報のみが必要ですが、モデル一覧はその認証情報を使用してプロバイダーから取得されます。

ModelFeature#

agent-thoughtstring#

Agent 推論。一般的に 70B を超えるモデルは思考連鎖(chain-of-thought)の能力を備えています。

visionstring#

ビジョン(画像理解)。

tool-callstring#

ツール呼び出し。

multi-tool-callstring#

複数ツール呼び出し。

stream-tool-callstring#

ストリーミングツール呼び出し。

FetchFrom#

predefined-modelstring#

事前定義モデル。

fetch-from-remotestring#

リモートモデル。

LLMMode#

completionstring#

テキスト補完。

chatstring#

チャット。

ParameterRule#

namestringrequired#

モデル呼び出しで使用される実際のパラメータ名。

use_templatestring#

使用するテンプレート。

5 つのパラメータテンプレートが事前定義されています。

  • temperature
  • top_p
  • frequency_penalty
  • presence_penalty
  • max_tokens

これらの名前のいずれかを use_template に設定すると、entities.defaults.PARAMETER_RULE_TEMPLATE のデフォルト設定を継承します。その場合に必要なのは name と use_template のみです。追加で設定したパラメータは、テンプレートのデフォルト値を上書きします。openai/llm/gpt-3.5-turbo.yaml と 新しいモデルプロバイダーの作成 の例を参照してください。

labelobject#

ラベル(i18n)。

zh_Hansstring#

中国語ラベル。

en_USstringrequired#

英語ラベル。

typestring#

パラメータタイプ。

intstring#

整数。

floatstring#

浮動小数点。

stringstring#

文字列。

booleanstring#

ブール値。

helpobject#

ヘルプ情報(i18n)。

zh_Hansstring#

中国語ヘルプテキスト。

en_USstringrequired#

英語ヘルプテキスト。

requiredboolean#

パラメータが必須かどうか。デフォルトは False です。

defaultint/float/string/boolean#

デフォルト値。

minint/float#

最小値。数値タイプのみ。

maxint/float#

最大値。数値タイプのみ。

precisioninteger#

保持する小数桁数。数値タイプのみ。

optionsarray[string]#

ドロップダウンのオプション値。type が string の場合のみ適用されます。設定されていないか null の場合、値は制限されません。

PriceConfig#

inputfloat#

入力(プロンプト)の単価。

outputfloat#

出力(返されるコンテンツ)の単価。

unitfloat#

価格の単位。例えば 100 万トークンあたりの価格設定の場合、単価に対応する単位トークン数は 0.000001 です。

currencystring#

通貨単位。

ProviderCredentialSchema#

credential_form_schemasarray[CredentialFormSchema]required#

認証情報フォームの仕様。

ModelCredentialSchema#

modelobjectrequired#

モデル識別子。デフォルトの変数名は model です。

labelobjectrequired#

モデルフォーム項目の表示名。

en_USstringrequired#

英語。

zh_Hansstring#

中国語。

placeholderobjectrequired#

モデルフォーム項目のプレースホルダーテキスト。

en_USstringrequired#

英語。

zh_Hansstring#

中国語。

credential_form_schemasarray[CredentialFormSchema]required#

認証情報フォームの仕様。

CredentialFormSchema#

variablestringrequired#

フォーム項目の変数名。

labelobjectrequired#

フォーム項目のラベル。

en_USstringrequired#

英語。

zh_Hansstring#

中国語。

typeFormTyperequired#

フォーム項目のタイプ。

requiredboolean#

フォーム項目が必須かどうか。

defaultstring#

デフォルト値。

optionsarray[FormOption]#

ドロップダウンの内容。select および radio タイプに固有です。

placeholderobject#

フォーム項目のプレースホルダー。text-input タイプに固有です。

en_USstringrequired#

英語。

zh_Hansstring#

中国語。

max_lengthinteger#

最大入力長。text-input タイプに固有です。0 は制限なしを意味します。

show_onarray[FormShowOnObject]#

他のフォーム項目の値が指定した条件を満たす場合にのみこの項目を表示します。空の場合は常に表示します。

FormType#

text-inputstring#

テキスト入力コンポーネント。

secret-inputstring#

パスワード入力コンポーネント。

selectstring#

単一選択ドロップダウン。

radiostring#

ラジオコンポーネント。

switchstring#

スイッチコンポーネント。true と false のみサポートします。

FormOption#

labelobjectrequired#

ラベル。

en_USstringrequired#

英語。

zh_Hansstring#

中国語。

valuestringrequired#

ドロップダウンのオプション値。

show_onarray[FormShowOnObject]#

他のフォーム項目の値が指定した条件を満たす場合にのみこのオプションを表示します。空の場合は常に表示します。

FormShowOnObject#

variablestringrequired#

他のフォーム項目の変数名。

valuestringrequired#

他のフォーム項目の変数値。

関連リソース#