Skip to content

Commit 06203db

Browse files
🌐 Initial translations for PR #737
Auto-generated translations for documentation changes in PR #737. Last-Processed-Commit: 7ac0849 Original-PR: #737 Languages: Chinese (zh), Japanese (ja) 🤖 Generated with GitHub Actions
1 parent e7f8fb4 commit 06203db

13 files changed

Lines changed: 3735 additions & 3813 deletions

ja/api-reference/openapi_chat.json

Lines changed: 344 additions & 344 deletions
Large diffs are not rendered by default.

ja/api-reference/openapi_chatflow.json

Lines changed: 614 additions & 614 deletions
Large diffs are not rendered by default.

ja/api-reference/openapi_completion.json

Lines changed: 163 additions & 163 deletions
Large diffs are not rendered by default.

ja/api-reference/openapi_knowledge.json

Lines changed: 722 additions & 722 deletions
Large diffs are not rendered by default.

ja/use-dify/knowledge/connect-external-knowledge-base.mdx

Lines changed: 70 additions & 104 deletions
Large diffs are not rendered by default.
Lines changed: 127 additions & 132 deletions
Original file line numberDiff line numberDiff line change
@@ -1,177 +1,172 @@
11
---
2-
title: 外部知識API
2+
title: 外部ナレッジAPI
3+
description: Difyと統合するために外部ナレッジサービスが実装する必要があるAPI仕様
34
---
45

56
<Note> ⚠️ このドキュメントはAIによって自動翻訳されています。不正確な部分がある場合は、[英語版](/en/use-dify/knowledge/external-knowledge-api)を参照してください。</Note>
67

7-
## エンドポイント
8+
このページでは、Difyが外部ナレッジサービスからコンテンツを取得するために実装する必要があるAPIコントラクトを定義します。APIの準備ができたら、[外部ナレッジベースへの接続](/ja/use-dify/knowledge/connect-external-knowledge-base)を参照してDifyに登録してください。
89

9-
```
10-
POST <your-endpoint>/retrieval
11-
```
10+
## 認証
1211

13-
## ヘッダー
12+
Difyは、設定したAPIキーをBearerトークンとしてすべてのリクエストで送信します:
1413

15-
このAPIは、Difyとは独立して開発者が維持管理するナレッジベースに接続するために使用されます。詳細については、[外部ナレッジベースへの接続](/ja/use-dify/knowledge/connect-external-knowledge-base)を参照してください。`Authorization` HTTPヘッダーで `API-Key` を使用して権限を検証できます。認証ロジックは、以下のように検索APIで定義します:
16-
17-
```
14+
```text
1815
Authorization: Bearer {API_KEY}
1916
```
2017

21-
## リクエストボディ要素
22-
23-
リクエストは以下のJSON形式のデータを受け入れます。
24-
25-
| プロパティ | 必須 || 説明 | 例値 |
26-
|------------|------|-----|------|------|
27-
| knowledge_id | TRUE | string | ナレッジベースの一意ID | AAA-BBB-CCC |
28-
| query | TRUE | string | ユーザーのクエリ | Difyとは何ですか? |
29-
| retrieval_setting | TRUE | object | 知識の検索パラメータ | 以下参照 |
30-
| metadata_condition | TRUE | object | 元の配列のフィルタリング | 以下参照 |
31-
32-
`retrieval_setting` プロパティは以下のキーを含むオブジェクトです:
18+
認証ロジックは開発者側で定義します。Difyはキーを渡すだけで、検証は行いません。
3319

34-
| プロパティ | 必須 || 説明 | 例値 |
35-
|------------|------|-----|------|------|
36-
| top_k | TRUE | int | 検索結果の最大数 | 5 |
37-
| score_threshold | TRUE | float | クエリに対する結果の関連性スコアの閾値、範囲:0〜1 | 0.5 |
20+
## リクエスト
3821

39-
`metadata_condition` プロパティは以下のキーを含むオブジェクトです:
40-
41-
| 属性 | 必須かどうか || 説明 ||
42-
|------|----------|------|------|--------|
43-
| logical_operator | いいえ | 文字列 | 論理演算子、値は `and` または `or`、デフォルトは `and` | and |
44-
| conditions | はい | 配列(オブジェクト) | 条件リスト | 以下参照 |
45-
46-
`conditions` 配列の各オブジェクトには以下のキーが含まれます:
47-
48-
| 属性 | 必須かどうか || 説明 ||
49-
|------|----------|------|------|--------|
50-
| name | はい | 配列(文字列) | フィルタリングするmetadataの名前 | `["category", "tag"]` |
51-
| comparison_operator | はい | 文字列 | 比較演算子 | `contains` |
52-
| value | いいえ | 文字列 | 比較値、演算子が `empty``not empty``null``not null` の場合は省略可能 | `"AI"` |
53-
54-
サポートされている `comparison_operator` 演算子:
55-
56-
- `contains`:特定の値を含む
57-
- `not contains`:特定の値を含まない
58-
- `start with`:特定の値で始まる
59-
- `end with`:特定の値で終わる
60-
- `is`:特定の値と等しい
61-
- `is not`:特定の値と等しくない
62-
- `empty`:空である
63-
- `not empty`:空ではない
64-
- `=`:等しい
65-
- ``:等しくない
66-
- `>`:より大きい
67-
- `<`:より小さい
68-
- ``:以上
69-
- ``:以下
70-
- `before`:特定の日付より前
71-
- `after`:特定の日付より後
22+
```text
23+
POST {your-endpoint}/retrieval
24+
Content-Type: application/json
25+
Authorization: Bearer {API_KEY}
26+
```
7227

73-
## リクエスト構文
28+
Difyは設定したエンドポイントURLに`/retrieval`を追加します。`https://your-service.com`を登録した場合、Difyは`https://your-service.com/retrieval`にリクエストを送信します。
29+
30+
### ボディ
31+
32+
| プロパティ | 必須 || 説明 |
33+
|:---------|:---------|:-----|:------------|
34+
| `knowledge_id` | はい | string | 外部システムにおけるナレッジソースの識別子。これは接続時に**外部ナレッジID**フィールドに入力した値です。クエリを正しいナレッジソースにルーティングするために使用します。 |
35+
| `query` | はい | string | ユーザーの検索クエリ。 |
36+
| `retrieval_setting` | はい | object | 検索パラメータ。[下記](#retrieval_setting)を参照。 |
37+
| `metadata_condition` | いいえ | object | メタデータフィルタリング条件。[下記](#metadata_condition)を参照。 |
38+
39+
#### `retrieval_setting`
40+
41+
| プロパティ | 必須 || 説明 |
42+
|:---------|:---------|:-----|:------------|
43+
| `top_k` | はい | int | 返す結果の最大数。 |
44+
| `score_threshold` | はい | float | 最小類似度スコア(0-1)。Difyでスコアしきい値が無効になっている場合、この値は`0.0`になります。 |
45+
46+
#### `metadata_condition`
47+
48+
<Info>
49+
Difyはメタデータ条件をAPIに渡しますが、現在ユーザーが設定するためのUIは提供していません。このパラメータはプログラムによる使用のみ可能です。
50+
</Info>
51+
52+
| プロパティ | 必須 || 説明 |
53+
|:---------|:---------|:-----|:------------|
54+
| `logical_operator` | いいえ | string | `and`または`or`。デフォルト:`and`|
55+
| `conditions` | はい | array[object] | フィルタ条件のリスト。 |
56+
57+
`conditions`内の各オブジェクト:
58+
59+
| プロパティ | 必須 || 説明 |
60+
|:---------|:---------|:-----|:------------|
61+
| `name` | はい | string | フィルタリングするメタデータフィールド名。 |
62+
| `comparison_operator` | はい | string | 比較演算子。下記のサポートされている値を参照。 |
63+
| `value` | いいえ | string, number, または array[string] | 比較値。`empty``not empty``null`、または`not null`を使用する場合は省略。 |
64+
65+
<Accordion title="サポートされている比較演算子">
66+
67+
| 演算子 | 説明 |
68+
|:---------|:------------|
69+
| `contains` | 値を含む |
70+
| `not contains` | 値を含まない |
71+
| `start with` | 値で始まる |
72+
| `end with` | 値で終わる |
73+
| `is` | 値と等しい |
74+
| `is not` | 値と等しくない |
75+
| `in` | リスト内のいずれかの値に一致 |
76+
| `not in` | リスト内のいずれの値にも一致しない |
77+
| `empty` | 空である |
78+
| `not empty` | 空ではない |
79+
| `=` | 等しい(数値) |
80+
| `` | 等しくない(数値) |
81+
| `>` | より大きい |
82+
| `<` | より小さい |
83+
| `` | 以上 |
84+
| `` | 以下 |
85+
| `before` | 日付より前 |
86+
| `after` | 日付より後 |
87+
88+
</Accordion>
89+
90+
### リクエスト例
7491

7592
```json
76-
POST <your-endpoint>/retrieval HTTP/1.1
77-
-- ヘッダー
78-
Content-Type: application/json
79-
Authorization: Bearer your-api-key
80-
-- データ
8193
{
8294
"knowledge_id": "your-knowledge-id",
83-
"query": "your question",
84-
"retrieval_setting":{
85-
"top_k": 2,
95+
"query": "What is Dify?",
96+
"retrieval_setting": {
97+
"top_k": 3,
8698
"score_threshold": 0.5
8799
}
88100
}
89101
```
90102

91-
## レスポンス要素
103+
## レスポンス
92104

93-
アクションが成功した場合、サービスはHTTP 200レスポンスを返します
105+
`records`配列を含むJSONボディとともにHTTP 200を返します。クエリに一致する結果がない場合は、空の配列を返します:`{"records": []}`
94106

95-
サービスは以下のデータをJSON形式で返します。
107+
### `records`
96108

97-
| プロパティ | 必須 || 説明 | 例値 |
98-
|------------|------|-----|------|------|
99-
| records | TRUE | List[Object] | ナレッジベースのクエリ結果のレコードリスト | 以下参照 |
109+
| プロパティ || 説明 |
110+
|:---------|:-----|:------------|
111+
| `content` | string | 取得したテキストチャンク。DifyはこれをLLMに渡すコンテキストとして使用します。 |
112+
| `score` | float | 類似度スコア(0–1)。スコアしきい値フィルタリングと結果のランキングに使用されます。 |
113+
| `title` | string | ソースドキュメントのタイトル。 |
114+
| `metadata` | object | Difyによって保持される任意のキーと値のペア。 |
100115

101-
`records` プロパティは以下のキーを含むリストオブジェクトです:
116+
Difyはフィールドが欠落しているレコードを拒否しませんが、`content`または`score`を省略すると、不完全またはランク付けされていない結果が生成されます。
102117

103-
| プロパティ | 必須 || 説明 | 例値 |
104-
|------------|------|-----|------|------|
105-
| content | TRUE | string | ナレッジベースのデータソースからのテキストチャンクを含む | Dify:GenAIアプリケーションのイノベーションエンジン |
106-
| score | TRUE | float | クエリに対する結果の関連性スコア、範囲:0〜1 | 0.5 |
107-
| title | TRUE | string | ドキュメントタイトル | Dify紹介 |
108-
| metadata | FALSE | json | データソース内のドキュメントのメタデータ属性とその値を含む | 例参照 |
118+
<Warning>
119+
レコードに`metadata`を含める場合、それは`null`ではなくオブジェクト(`{}`)である必要があります。`null`のメタデータ値はDifyの検索パイプラインでエラーを引き起こします。
120+
</Warning>
109121

110-
## レスポンス構文
122+
### レスポンス例
111123

112124
```json
113-
HTTP/1.1 200
114-
Content-type: application/json
115125
{
116-
"records": [{
117-
"metadata": {
118-
"path": "s3://dify/knowledge.txt",
119-
"description": "dify知識ドキュメント"
120-
},
121-
"score": 0.98,
122-
"title": "knowledge.txt",
123-
"content": "これは外部知識のドキュメントです。"
124-
},
125-
{
126-
"metadata": {
127-
"path": "s3://dify/introduce.txt",
128-
"description": "dify紹介"
129-
},
130-
"score": 0.66,
131-
"title": "introduce.txt",
132-
"content": "GenAIアプリケーションのイノベーションエンジン"
126+
"records": [
127+
{
128+
"content": "This is the document for external knowledge.",
129+
"score": 0.98,
130+
"title": "knowledge.txt",
131+
"metadata": {
132+
"path": "s3://dify/knowledge.txt",
133+
"description": "dify knowledge document"
133134
}
135+
},
136+
{
137+
"content": "The Innovation Engine for GenAI Applications",
138+
"score": 0.66,
139+
"title": "introduce.txt",
140+
"metadata": {}
141+
}
134142
]
135143
}
136144
```
137145

138-
## エラー
146+
## エラーハンドリング
139147

140-
アクションが失敗した場合、サービスは以下のエラー情報をJSON形式で返します:
148+
Difyはレスポンスの HTTP ステータスコードをチェックします。200以外のステータスはユーザーに表示されるエラーを発生させます。
141149

142-
| プロパティ | 必須 || 説明 | 例値 |
143-
|------------|------|-----|------|------|
144-
| error_code | TRUE | int | エラーコード | 1001 |
145-
| error_msg | TRUE | string | API例外の説明 | 無効な認証ヘッダー形式です。`Bearer <api-key>` 形式が期待されます。 |
150+
オプションでJSON形式の構造化エラー情報を返すことができます:
146151

147-
`error_code` プロパティには以下の種類があります:
152+
| プロパティ || 説明 |
153+
|:---------|:-----|:------------|
154+
| `error_code` | int | 開発者が定義するアプリケーションレベルのエラーコード。 |
155+
| `error_msg` | string | 人間が読めるエラーの説明。 |
148156

149-
| コード | 説明 |
150-
|--------|------|
157+
以下は推奨されるエラーコードです。これらは慣例であり、Difyによって強制されるものではありません:
158+
159+
| コード | 推奨される使用方法 |
160+
|:-----|:----------------|
151161
| 1001 | 無効な認証ヘッダー形式 |
152162
| 1002 | 認証失敗 |
153-
| 2001 | 知識が存在しません |
154-
155-
## 開発例
156-
157-
以下の動画では、LlamaCloudを例として外部ナレッジベースプラグインの開発方法を学ぶことができます:
163+
| 2001 | ナレッジベースが見つからない |
158164

159-
<iframe
160-
src="https://www.youtube.com/embed/FaOzKZRS-2E"
161-
width="100%"
162-
height="315"
163-
allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture"
164-
allowFullScreen
165-
/>
165+
### エラーレスポンス例
166166

167-
詳細については、プラグインの[GitHubリポジトリ](https://github.com/langgenius/dify-official-plugins/tree/main/extensions/llamacloud)を参照してください。
168-
169-
### HTTPステータスコード
170-
171-
**AccessDeniedException**
172-
アクセス権限がないため、リクエストが拒否されました。権限を確認して再試行してください。
173-
HTTPステータスコード:403
174-
175-
**InternalServerException**
176-
内部サーバーエラーが発生しました。リクエストを再試行してください。
177-
HTTPステータスコード:500
167+
```json
168+
{
169+
"error_code": 1002,
170+
"error_msg": "Authorization failed. Please check your API key."
171+
}
172+
```

0 commit comments

Comments
 (0)