# Alli Retrieval API

Retrieval APIを使用すると、Alliにアップロードされているドキュメントの中から、質問に関連するページ情報のトップNを取得できます。

<mark style="color:blue;">`POST`</mark> `https://backend-ja.alli.ai/webapi/retrieval`

#### Parameters

| Name    | Type   | Description                                                                                                                                                                 |
| ------- | ------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| API-KEY | string | <p>割り当てられたAPIキーです。</p><p><br>ダッシュボードの設定メニュー>一般タブから確認してください。<br>詳しくは<a href="https://docs.allganize.ai/alli-userguide/settings/general/general-settings#api-key">こちら</a></p> |

#### Request Body <a href="#request-body" id="request-body"></a>

| Name                                       | Type    | Description                                                                                                                                                                   |
| ------------------------------------------ | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| question<mark style="color:red;">\*</mark> | string  | 質問文の文字列です。                                                                                                                                                                    |
| max\_document\_clues                       | integer | <p>質問に関連するページをいくつインポートするかを設定します。 <br>デフォルト値は 3 です。</p>                                                                                                                        |
| bm25\_score\_weight (optional)             | float   | <p>キーワード検索の重みを設定します。<br>その値が高いほど、キーワードスコアが検索に反映されます。 0〜9までの値で設定してください。<br>0はキーワード検索を使用しないことを意味します。 <br>デフォルト値は 9 です。</p>                                                      |
| text\_vector\_score\_weight (optional)     | float   | <p>文書の<strong>内容に対する</strong>セマンティック検索の重みを設定します。</p><p>その値が高いほど内容に対するセマンティック検索の結果が反映されます。<br>同様に、0〜9の値が設定できます。</p><p>0は文書コンテンツのセマンティック検索を使用しないことを意味します。 <br>デフォルト値は 1 です。</p> |
| title\_vector\_score\_weight (optional)    | float   | <p><strong>文書タイトルに対する</strong>セマンティック検索の重みを設定します。</p><p>同様に、0〜9の値が設定できます。<br>0は文書タイトルのセマンティック検索を使用しないことを意味します。 デフォルト値は 0 です。</p>                                              |

{% tabs %}
{% tab title="200: OK " %}
リクエストを送信して成功すると、JSONで結果を取得できます。

**ranking** : 質問に関連するページのランク

**title** : 質問に関連するドキュメントのタイトル

**text** : 質問に関するドキュメントのページ内容

**page\_no** : ページ番号
{% endtab %}
{% endtabs %}

#### 備考

* キーワード検索
  * ドキュメントの内の文章をトークンに分割し、ワードが質問文と一致するかをスコアリングする方法です。
* セマンティック検索
  * ドキュメントの内の文章を埋め込みベクトルに変換して、質問との類似度をスコアリングする方法です。同義語にも対応可能な検索方法です。

関連検索については[こちら](https://blog-ja.allganize.ai/retriever_optimization/)のブログ記事で詳しく説明しています。

### 応答例

&#x20;APIキーを利用する際は、`REST API KEY`をプロジェクトのAPIキーに置き換える必要があります。\
APIキーはダッシュボードの\[プロジェクト設定]＞\[全般]タブにございます。

詳しくは[こちら](https://docs.allganize.ai/alli-userguide/settings/general/general-settings#api-key)

ここでは例文をもとに応答例を記載します。

```
curl -X POST -d '{ 
  "question": "介護休暇について教えてください。",
  "bm25_score_weight": 9
}' \
-H 'API-KEY: REST_API_KEY' \
-H 'Content-Type: application/json' \
```

### Response Example

```
{
  "result": [
    {
      "ranking": 1, 
      "title": "就業規則.pdf, 
      "text": "第２８条 労働者のうち必要のある者は、育児・介護休業法に基づく育児休業、出生時育児休業、介護休業、子の看護休暇、介護休暇、育児・介護のための所定時間外労働、時間外労働及び深夜業の制限並びに所定労働時間の短縮措置等（以下「育児・介護休業等」という。）の適用を受けることができる。", 
      "pageNo": 6
    }, 
    {
      "ranking": 2, 
      "title": "育児・介護休業について.pdf", 
      "text": "要介護状態にある家族を介護する従業員（日雇従業員を除く）は、この規則に定めるところにより介護休業をすることができる。ただし、有期雇用従業員にあっては、申出時点において、介護休業を開始しようとする日（以下、「介護休業開始予定日」という。）から 93 日経過日から 6 か月を経過する日までに労働契約期間が満了し、更新されないことが明らかでない者に限り、介護休業をすることができる", 
      "keywords": "育児・介護休業について", 
      "pageNo": 20
    }, 
    {
      "ranking": 3, 
      "title": "就業規則.pdf", 
      "text": "育児・介護休業法に基づく育児休業期間、介護休業期間、子の看護休暇期間及び介護休暇期間、慶弔休暇、病気休暇、裁判員等のための休暇の期間、休職の期間を無給とするか有給とするかについては、各事業場において決め、就業規則に定めてください。また、有給とする場合は、例えば「通常の賃金を支払う」、「基本給の○○％を支払う」とするなど、できるだけ具体的に定めてください。", 
      "keywords": "就業規則", 
      "pageNo": 10
    }
  ]
}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.allganize.ai/api-reference/ja-1/alli-retrieval-api.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
