スライディングウィンドウ

Prev Next

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

Chat Completions API利用時、最大トークン数を超える文を消します。古い順に会話ターンを削除してトークンを確保するため、会話が途切れることなく生成できるようになります。

参考

スライディングウィンドウの動作方式と作業過程の詳細は、CLOVA Studioご利用ガイドのAPIの活用をご参照ください。

リクエスト

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

メソッド URI
POST /v1/api-tools/sliding/chat-messages/{modelName}

リクエストヘッダ

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

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

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

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

フィールド タイプ 必須の有無 説明
modelName String Required モデル名
  • <例> HCX-003

リクエストボディ

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

フィールド タイプ 必須の有無 説明
maxTokens Integer Required 最大トークン生成数
  • 0 < maxTokens ≤ 4096 (デフォルト: 100)
  • messages Array Required 会話メッセージリスト
    • 最大トークン数に合わせて調整が必要
    messages.role Enum Required 会話メッセージのロール
    • system | user | assistant
      • system: ロールを規定する指示文
      • user: ユーザーの発話または質問
      • assistant: ユーザーの発話/質問に対する返答
    messages.content String Required 会話メッセージの内容
    参考

    一部フィールドの入力時、下記の内容をご確認ください。

    • messages: 入力したトークン数とmaxTokensで入力したトークン数の合計は4096トークンを超えることはできません。messagesで入力したトークン数は、トークン計算 APIを呼び出すと確認できます。

    リクエスト例

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

    curl --location --request POST 'https://clovastudio.stream.ntruss.com/v1/api-tools/sliding/chat-messages/{modelName}' \
    --header 'Authorization: Bearer {API Key}' \
    --header 'X-NCP-CLOVASTUDIO-REQUEST-ID: {Request ID}' \
    --header 'Content-Type: application/json' \
    --data '{
          "maxTokens" : 200,
          "messages" : [ {
            "role" : "user",
            "content" : "hello"
          } ]
    }'
    

    レスポンス

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

    レスポンスボディ

    ボディの説明は次の通りです。

    フィールド タイプ 必須の有無 説明
    result Object - レスポンス結果
    • 最大トークン数に合わせて調整した結果
    result.messages Array - 会話メッセージリスト
    result.messages.role Enum - 会話メッセージのロール
    • system | user | assistant
      • system: ロールを規定する指示文
      • user: ユーザーの発話または質問
      • assistant: ユーザーの発話/質問に対する返答
    result.messages.content String - 会話メッセージの内容

    レスポンス例

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

    成功

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

    {
        "status": {
            "code": "20000",
            "message": "OK"
        },
        "result": {
            "messages": [
                {
                    "role": "user",
                    "content": "hello"
                }
            ]
        }
    }
    

    失敗

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