モデル

リバースモデルリクエストとは、プラグインがDify内のLLM機能に対してリバースリクエストを行う能力を指し、TTS、Rerankなど、プラットフォーム上のすべてのモデルタイプと機能が含まれます。

モデルのリクエストには、ModelConfigタイプのパラメータを渡す必要があることに注意してください。その構造は共通仕様定義で参照でき、この構造は異なるタイプのモデルで若干の違いがあります。

例えば、LLMタイプのモデルの場合、completion_paramsmodeパラメータを含める必要があります。この構造は手動で構築するか、model-selectorタイプのパラメータまたは設定を使用することができます。

LLMのリクエスト

エントリー

self.session.model.llm

エンドポイント:

def invoke(
    self,
    model_config: LLMModelConfig,
    prompt_messages: list[PromptMessage],
    tools: list[PromptMessageTool] | None = None,
    stop: list[str] | None = None,
    stream: bool = True,
) -> Generator[LLMResultChunk, None, None] | LLMResult:
    pass

注意:リクエストするモデルにtool_call機能がない場合、ここで渡されるツールは効果を持ちません。

ツールでOpenAIのgpt-4o-miniモデルをリクエストする場合は、以下のサンプルコードを参照してください:

コードではtool_parametersからqueryパラメータが渡されていることに注意してください。

ベストプラクティス

LLMModelConfigを手動で構築することは推奨されません。代わりに、UIでユーザーが希望のモデルを選択できるようにします。この場合、以下の設定に従ってmodelパラメータを追加することでツールのパラメータリストを変更できます:

この例では、モデルのスコープがllmとして指定されているため、ユーザーはllmタイプのパラメータのみを選択できることに注意してください。これにより、上記の例のコードを以下のように変更できます:

要約のリクエスト

このエンドポイントを使用してテキストを要約することができます。現在のワークスペースのシステムモデルを使用してテキストを要約します。

エントリー

エンドポイント

  • text: 要約するテキスト

  • instruction: 追加の指示。要約のスタイルをカスタマイズできます

テキスト埋め込みのリクエスト

エントリー

エンドポイント

Rerankのリクエスト

エントリー

エンドポイント

TTSのリクエスト

エントリー

エンドポイント

注意:TTSエンドポイントが返すバイトストリームはmp3オーディオバイトストリームで、各イテレーションで完全なオーディオを返します。より高度な処理タスクを実行したい場合は、適切なライブラリを選択してください。

音声認識のリクエスト

エントリー

エンドポイント

ここで、fileはmp3エンコードされたオーディオファイルです。

モデレーションのリクエスト

エントリー

エンドポイント

このエンドポイントがtrueを返す場合、textに機密コンテンツが含まれていることを示します。

Last updated