日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

使用Token計算API

您可以通過本文檔了解如何通過API估計您在調用模型時使用的token數目。

說明
  • 在語言模型中,token是指將輸入的文本分割成的最小單位;token可以是一個單詞、一個詞組、一個標點符號、一個字符等,不同模型可能有自己的切分方法;

  • Token計算API僅用于計量和計費的估計,調用不收取費用,請勿在生產環境依賴token計算API。

Token計算

Token計算API是幫助您估算指定文本對應多少token數目的API。在DashScope中,包括通義千問、Llama2等在內的語言模型都是基于用戶輸入和輸出的token數目來進行計量和計費的。在語言模型使用中,字符數目和token數目并不一定是一一對應的,例如在通義千問開源7B模型中:

  • "蘋果"對應1個token;

  • "my friends"對應2個token;

  • " 周"對應3個token。

因此DashScope提供token計算API供您參考。

您也可以通過DashScope提供的token計算器頁面,直接獲取token的計算結果。

已支持模型列表

說明

其它模型正在支持中,敬請期待。

模型分類

對應模型名稱

通義千問

語言模型數學模型代碼模型

通義千問開源系列

語言模型(僅包括Qwen2.5、Qwen2、Qwen1.5)

數學模型

代碼模型(僅Qwen2.5-Coder)

LlaMa2 系列大語言模型

llama2-7b-chat-v2

llama2-13b-chat-v2

百川開源大語言模型

baichuan2-13b-chat-v1

baichuan2-7b-chat-v1

baichuan-7b-v1

ChatGLM開源雙語對話語言模型

chatglm-6b-v2

chatglm3-6b

姜子牙通用大模型

ziya-llama-13b-v1

BELLE開源中文對話大模型

belle-llama-13b-2m-v1

元語功能型對話大模型V2

chatyuan-large-v2

BiLLa開源推理能力增強模型

billa-7b-sft-v1

SDK使用

前提條件

Token計算

以下示例展示了調用qwen-turbo模型的tokenizer對一個用戶指令進行token計算的代碼。

from http import HTTPStatus
import dashscope
import os

def tokenizer():
    response = dashscope.Tokenization.call(
        model='qwen-turbo',
        messages=[{'role': 'user', 'content': '你好?'}],
        api_key=os.getenv("DASHSCOPE_API_KEY"),
        )
    if response.status_code == HTTPStatus.OK:
        print('Result is: %s' % response)
    else:
        print('Failed request_id: %s, status_code: %s, code: %s, message:%s' %
              (response.request_id, response.status_code, response.code,
               response.message))


if __name__ == '__main__':
    tokenizer()
// Copyright (c) Alibaba, Inc. and its affiliates.
import java.lang.System;
import com.alibaba.dashscope.common.Message;
import java.util.Arrays;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.tokenizers.Tokenization;
import com.alibaba.dashscope.tokenizers.TokenizationResult;
import com.alibaba.dashscope.utils.JsonUtils;

public class Main {
    public static void tokenizer() throws ApiException, NoApiKeyException, InputRequiredException {
        Tokenization tokenizer = new Tokenization();
        Message userMsg = Message.builder()
                .role(Role.USER.getValue())
                .content("你好?")
                .build();
        GenerationParam param = GenerationParam.builder()
                .model(Tokenization.Models.QWEN_TURBO)
                .messages(Arrays.asList(userMsg))
                .apiKey(System.getenv("DASHSCOPE_API_KEY")) // 如果您沒有配置環境變量,可以在這里配置API-KEY
                .build();
        TokenizationResult result = tokenizer.call(param);
        System.out.println(JsonUtils.toJson(result));
    }

    public static void main(string[] args) {
        try {
            tokenizer();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.out.println(string.format("Exception %s", e.getMessage()));
        }
        System.exit(0);
    }
}

參數配置

參數

類型

默認值

說明

model

string

-

用戶使用model參數指明對應的模型,目前可選的模型見已支持模型列表

prompt

string

-

用戶當前輸入的期望模型執行指令。

messages

list

-

用戶與模型的對話歷史。list中的每個元素形式為{"role":角色,"content": 內容}。角色當前可選值:systemuserassistant,其中,僅messages[0]中支持rolesystemuserassistant需要交替出現。

返回結果

  • 返回結果示例

    {
        "status_code": 200,
        "request_id": "2ecfce1f-b7af-9b3a-9482-01e4a5511e8f",
        "code": "",
        "message": "",
        "output": {
            "token_ids": [
                108386,
                11319
            ],
            "tokens": [
                "你好",
                "?"
            ]
        },
        "usage": {
            "input_tokens": 2
        }
    }
  • 返回參數說明

    返回參數

    類型

    說明

    status_code

    int

    200(HTTPStatus.OK)表示請求成功,否則表示請求失敗,可以通過code獲取錯誤碼,通過message字段獲取錯誤詳細信息。

    request_Id

    string

    系統生成的標志本次調用的ID。

    code

    string

    表示請求失敗,表示錯誤碼,成功忽略。

    message

    string

    失敗,表示失敗詳細信息,成功忽略。

    output

    dict

    調用結果信息。

    output.token_ids

    list[int]

    本次輸入文本對應的Token_ids。

    output.tokens

    list[string]

    本次輸入文本對應的Tokens。

    usage.input_tokens

    int

    輸入文本對應的Token數目。

HTTP調用接口

功能描述

Token計算API也同時提供了HTTP接口,您可以根據自己的需求選擇。

說明

為了方便用戶的使用,DashScope提供的Token計算API和具體模型的調用API幾乎一致,唯一不同的地方是服務的URL不同。用戶完全可以復用之前調用模型的參數,更換接口的URL即可。

前提條件

提交接口調用

POST https://dashscope.aliyuncs.com/api/v1/tokenizer

入參描述

傳參方式

字段

類型

必選

描述

示例值

Header

Content-Type

string

請求類型:application/json。

application/json

Authorization

string

API-Key,例如:Bearer d1**2a。

Bearer d1**2a

Body

model

string

指明需要調用的模型,目前可選的模型見“已支持模型列表”。

qwen-turbo

input.prompt

string

prompt和messages僅二選一。

輸入文本。為了避免用戶調用模型API和token API拼接不同的參數格式,Token API在參數上兼容了模型API的寫法,prompt和messages均可作為輸入文本。

hello, who are you?

input.messages

list

{

"messages":[{

"role":"user",

"content":"北京有哪些好玩地方?"

},{

"role":"assistant",

"content":"故宮、頤和園、天壇等都是可以去游玩的景點哦。"

},{

"role":"user",

"content":"幫我安排一些行程"

}]

}

input.messages[i].role

string

messages存在的時候不能為空。

input.messages[i].content

string

出參描述

字段

類型

描述

示例值

output.token_ids

list

本次輸入文本對應的token_ids。

[68990,104719,108257,100371,11319,113508,5373,113085,33108,99354,5373,35727,101152,49567,100132,73670,85336,109280,9370,105869,104170,1773,108965,103956,101883,106318]

output.tokens

list

本次輸入文本對應的tokens。

["北京","有哪些","好玩","地方","?","故宮","、","頤","和","園","、","天","壇","等","都是","可以","去","游玩","的","景點","哦","。","幫我","安排","一些","行程"]

usage.input_tokens

int

輸入文本對應的token數目。

26

request_id

string

本次請求的系統唯一碼。

415018a6-4c64-95ea-8ec7-98436f4c16b6

請求示例

以下示例展示通過CURL命令來調用token計算API的腳本。

curl --location 'https://dashscope.aliyuncs.com/api/v1/tokenizer' \
--header "Authorization: Bearer $DASHSCOPE_API_KEY" \
--header 'Content-Type: application/json' \
--data '{
    "model": "qwen-plus",
    "input":{
        "messages":[
            {
                "role": "user",
                "content": "北京有哪些好玩地方?"
            },
            {
                "role": "assistant",
                "content": "故宮、頤和園、天壇等都是可以去游玩的景點哦。"
            },
            {
                "role": "user",
                "content": "幫我安排一些行程"
            }
        ]
    },
    "parameters": {
    }
}'

響應示例

{
  "output": {
    "token_ids": [
      68990,
      104719,
      108257,
      100371,
      11319,
      113508,
      5373,
      113085,
      33108,
      99354,
      5373,
      35727,
      101152,
      49567,
      100132,
      73670,
      85336,
      109280,
      9370,
      105869,
      104170,
      1773,
      108965,
      103956,
      101883,
      106318
    ],
    "tokens": [
      "北京",
      "有哪些",
      "好玩",
      "地方",
      "?",
      "故宮",
      "、",
      "頤",
      "和",
      "園",
      "、",
      "天",
      "壇",
      "等",
      "都是",
      "可以",
      "去",
      "游玩",
      "的",
      "景點",
      "哦",
      "。",
      "幫我",
      "安排",
      "一些",
      "行程"
    ]
  },
  "usage": {
    "input_tokens": 26
  },
  "request_id": "aeabe685-5e87-9c32-93f4-21396c5656f2"
}

異常響應示例

在訪問請求出錯的情況下,輸出的結果中會通過codemessage指明出錯原因。

{
    "code":"InvalidApiKey",
    "message":"Invalid API-key provided.",
    "request_id":"fb53c4ec-1c12-4fc4-a580-cdb7c3261fc1"
}

狀態碼說明

DashScope通用狀態碼請查閱:返回狀態碼說明