mirror of
https://github.com/langgenius/dify-docs.git
synced 2026-03-27 13:28:32 +07:00
127 lines
7.4 KiB
Plaintext
127 lines
7.4 KiB
Plaintext
---
|
||
dimensions:
|
||
type:
|
||
primary: reference
|
||
detail: core
|
||
level: beginner
|
||
standard_title: Plugin info by Manifest
|
||
language: ja
|
||
title: マニフェスト
|
||
description: 作成者 Yeuoly、Allen このドキュメントでは、Difyプラグインのマニフェストファイルについて詳しく説明します。これは、プラグインの基本情報を定義するYAMLファイルです。ドキュメントには、完全なコード例と詳細な構造説明が含まれており、プラグインのバージョン、タイプ、作成者、名称、リソース使用、権限申請、機能定義、ランタイムなど、各方面の設定情報を網羅しています。
|
||
---
|
||
|
||
マニフェストは、yaml 仕様に準拠したファイルであり、プラグイン名、作成者、含まれるツール、モデルなどの情報を含む、**プラグイン**の最も基本的な情報を定義します。プラグインの全体的なアーキテクチャについては、[プラグイン開発の基本概念](/plugin-dev-ja/0111-getting-started-dify-plugin)および[開発者向けチートシート](/plugin-dev-ja/0131-cheatsheet)を参照してください。
|
||
|
||
このファイルの形式が間違っている場合、プラグインの解析とパッケージ化プロセスは失敗します。
|
||
|
||
### コード例
|
||
|
||
以下は、マニフェストファイルの簡単な例です。各データの意味と役割については、後ほど説明します。他のプラグインのコードを参照する必要がある場合は、[GitHub コードリポジトリ](https://github.com/langgenius/dify-official-plugins/blob/main/tools/google/manifest.yaml)を参照してください。
|
||
|
||
```yaml
|
||
version: 0.0.1
|
||
type: "plugin"
|
||
author: "Yeuoly"
|
||
name: "neko"
|
||
label:
|
||
en_US: "Neko"
|
||
created_at: "2024-07-12T08:03:44.658609186Z"
|
||
icon: "icon.svg"
|
||
resource:
|
||
memory: 1048576
|
||
permission:
|
||
tool:
|
||
enabled: true
|
||
model:
|
||
enabled: true
|
||
llm: true
|
||
endpoint:
|
||
enabled: true
|
||
app:
|
||
enabled: true
|
||
storage:
|
||
enabled: true
|
||
size: 1048576
|
||
plugins:
|
||
endpoints:
|
||
- "provider/neko.yaml"
|
||
meta:
|
||
version: 0.0.1
|
||
arch:
|
||
- "amd64"
|
||
- "arm64"
|
||
runner:
|
||
language: "python"
|
||
version: "3.10"
|
||
entrypoint: "main"
|
||
privacy: "./privacy.md"
|
||
```
|
||
|
||
### 構造
|
||
|
||
* `version`(version, 必須):プラグインのバージョン
|
||
* `type`(type, 必須):プラグインタイプ。現在は `plugin` のみをサポートし、将来的には `bundle` をサポート予定です。
|
||
* `author`(string, 必須):作成者。Marketplace では組織名として定義されます。
|
||
* `label`(label, 必須):多言語名称
|
||
* `created_at`(RFC3339, 必須):作成日時。Marketplace では、作成日時が現在時刻を超えてはなりません。
|
||
* `icon`(asset, 必須):アイコンのパス
|
||
* `resource` (object):申請が必要なリソース
|
||
* `memory` (int64):最大メモリ使用量。主に SaaS 上の AWS Lambda リソース申請に関連し、単位はバイトです。
|
||
* `permission`(object):権限申請
|
||
* `tool`(object):ツールを逆呼び出しする権限
|
||
* `enabled` (bool)
|
||
* `model`(object):モデルを逆呼び出しする権限
|
||
* `enabled`(bool)
|
||
* `llm`(bool)
|
||
* `text_embedding`(bool)
|
||
* `rerank`(bool)
|
||
* `tts`(bool)
|
||
* `speech2text`(bool)
|
||
* `moderation`(bool)
|
||
* `node`(object):ノードを逆呼び出しする権限
|
||
* `enabled`(bool)
|
||
* `endpoint`(object):`endpoint` の登録を許可する権限
|
||
* `enabled`(bool)
|
||
* `app`(object):`app` を逆呼び出しする権限
|
||
* `enabled`(bool)
|
||
* `storage`(object):永続ストレージを申請する権限
|
||
* `enabled`(bool)
|
||
* `size`(int64):許可される永続メモリの最大サイズ。単位はバイトです。
|
||
* `plugins`(object, 必須):プラグインが拡張する具体的な機能の `yaml` ファイルリスト。プラグインパッケージ内の絶対パスです。例えば、モデルを拡張する必要がある場合、`openai.yaml` のようなファイルを定義し、そのファイルパスをここに記入します。そのパス上のファイルは実際に存在しなければならず、そうでなければパッケージ化は失敗します。
|
||
* 形式
|
||
* `tools`(list\[string]):プラグインが拡張する[ツール](/plugin-dev-ja/0222-tool-plugin)プロバイダー
|
||
* `models`(list\[string]):プラグインが拡張する[モデル](/plugin-dev-ja/0131-model-plugin-introduction.ja)プロバイダー
|
||
* `endpoints`(list\[string]):プラグインが拡張する [Endpoints](/plugin-dev-ja/0432-endpoint) プロバイダー
|
||
* `agent_strategies` (list\[string]):プラグインが拡張する [Agent 戦略](/plugin-dev-ja/9433-agent-strategy-plugin)プロバイダー
|
||
* 制限
|
||
* ツールとモデルを同時に拡張することはできません
|
||
* 拡張機能がまったくない状態は許可されません。
|
||
* モデルと Endpoint を同時に拡張することはできません
|
||
* 現在、各タイプの拡張は最大1つのプロバイダーのみサポートしています
|
||
* `meta`(object)
|
||
* `version`(version, 必須):`manifest` フォーマットバージョン。初期バージョンは `0.0.1` です。
|
||
* `arch`(list\[string], 必須):サポートされるアーキテクチャ。現在は `amd64`、`arm64` のみをサポートしています。
|
||
* `runner`(object, 必須):ランタイム設定
|
||
* `language`(string):現在は python のみをサポートしています。
|
||
* `version`(string):言語のバージョン。現在は `3.12` のみをサポートしています。
|
||
* `entrypoint`(string):プログラムのエントリポイント。python では `main` であるべきです。
|
||
* `privacy` (string, オプション):オプション項目。プラグインのプライバシーポリシーファイルの相対パスまたは URL を指定します。例:`"./privacy.md"` または `"https://your-web/privacy"`。プラグインを Dify Marketplace に公開する予定がある場合、**このフィールドは必須です**。明確なユーザーデータの使用とプライバシーに関する声明を提供するために使用されます。詳細な記入ガイドラインについては、[プラグインのプライバシーデータ保護ガイドライン](/plugin-dev-ja/0312-privacy-protection-guidelines)を参照してください。
|
||
|
||
## 関連リソース
|
||
|
||
- [プラグイン開発の基本概念](/plugin-dev-ja/0111-getting-started-dify-plugin) - Difyプラグイン開発の全体像を理解する
|
||
- [新しいモデルを迅速に導入する](/plugin-dev-ja/0211-getting-started-new-model) - 既存のプロバイダーに新しいモデルを追加する方法を学ぶ
|
||
- [共通仕様定義](/plugin-dev-ja/0411-general-specifications) - プラグイン開発における共通構造を理解する
|
||
- [リリース概要](/plugin-dev-ja/0321-release-overview) - プラグインのリリースプロセスを学ぶ
|
||
|
||
{/*
|
||
Contributing Section
|
||
DO NOT edit this section!
|
||
It will be automatically generated by the script.
|
||
*/}
|
||
|
||
---
|
||
|
||
[このページを編集する](https://github.com/langgenius/dify-docs/edit/main/plugin-dev-ja/0411-plugin-info-by-manifest.mdx) | [問題を報告する](https://github.com/langgenius/dify-docs/issues/new?template=docs.yml)
|
||
|