ルーター

Prev Next

Classic/VPC環境で利用できます。

特定のルーターの APIを呼び出して入力されたリクエストを適切なドメインに分類し、設定されたフィルタ条件を満たすかかどうか判別します。

リクエスト

リクエスト形式を説明します。リクエスト形式は次の通りです。

メソッド URI
POST /v1/routers/{router-id}/versions/{version}/route

リクエストヘッダ

リクエストヘッダの説明は次の通りです。

フィールド 必須の有無 説明
Authorization Required 認証用 APIキー<例> Bearer nv-************
X-NCP-CLOVASTUDIO-REQUEST-ID Optional リクエスト ID
Content-Type Required リクエストデータの形式
  • application/json

リクエストパスパラメータ

リクエストパスパラメータの説明は次の通りです。

フィールド タイプ 必須の有無 説明
router-id String Required ルーター ID
version Integer Required ルーターのバージョン
  • 1 ≤ version

リクエストボディ

リクエストボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
query String Required 入力
chatHistory Array Optional 会話メッセージ履歴: chatHistory

chatHistory

chatHistoryの説明は次の通りです。

フィールド タイプ 必須の有無 説明
chatHistory.role Enum Required 会話メッセージのロール
  • user: ユーザーの発話/質問
chatHistory.content String Required 会話メッセージの内容

リクエスト例

リクエストのサンプルコードは次の通りです。

curl --location --request POST 'https://clovastudio.stream.ntruss.com/v1/routers/{router-id}/versions/{version}/route' \
--header 'Authorization: Bearer {API Key}' \
--header 'X-NCP-CLOVASTUDIO-REQUEST-ID: {Request ID}' \
--header 'Content-Type: application/json' \
--data '{
  "query" : "PM2.5情報を教えて",
  "chatHistory" : [ {
    "role" : "user",
    "content" : "明日のソウルの降水予報を教えて"
  } ]
}'

レスポンス

レスポンス形式を説明します。

レスポンスヘッダ

レスポンスヘッダの説明は次の通りです。

ヘッダ 必須の有無 説明
Content-Type - レスポンスデータの形式
  • application/json

レスポンスボディ

レスポンスボディの説明は次の通りです。

フィールド タイプ 必須の有無 説明
status Object - レスポンスステータス
result Object - レスポンス結果
result.domain Object - ドメイン結果
result.domain.result String - ドメインの判別結果
  • 一致するドメインがない場合、空の文字列を表示
result.domain.called Boolean - ドメイン判別を行うかどうか
  • false
  • true
result.blockedContent Object - コンテンツフィルタ結果
result.blockedContent.result Array - コンテンツフィルタの判別結果
  • 一致するフィルタがない場合、空のリストを表示
result.blockedContent.called Boolean - コンテンツフィルタ判別を行うかどうか
  • false
  • true
result.safety Object - セーフティフィルタの結果
result.safety.result Array - セーフティフィルタの判別結果
  • 一致するフィルタがない場合、空のリストを表示
result.safety.called Boolean - セーフティフィルタ判別を行うかどうか
  • false
  • true
result.usage Object - トークン数情報
result.usage.promptTokens Integer - 入力トークン数
result.usage.completionTokens Integer - 生成トークン数
result.usage.totalTokens Integer - トークンの総数
  • promptTokens + completionTokens

レスポンス例

レスポンスのサンプルコードは次の通りです。

成功

呼び出しに成功した場合のレスポンスのサンプルコードは次の通りです。

{
  "status": {
    "code": "20000",
    "message": "OK"
  },
  "result": {
    "domain": {
      "result": "地域検索",
      "called": true
    },
    "blockedContent": {
      "result": ["UnsupportedRegion"],
      "called": true
    },
    "safety": {
      "result": [],
      "called": true
    },
    "usage": {
      "promptTokens": 425,
      "completionTokens": 62,
      "totalTokens": 487
    }
  }
}

失敗

呼び出しに失敗した場合のレスポンスのサンプルコードは次の通りです。