全部产品
Search
文档中心

大模型服务平台百炼:大模型产品计费

更新时间:Dec 02, 2024

在百炼平台,调用大模型实现文本生成任务时,会产生模型推理(调用)费用。

计费项

计费项

计费说明

计费方式

计费公式

大模型推理(调用)

所有模型的调用单价和免费额度,请参考模型列表

调用场景包括:模型调用应用调用Prompt 自动优化(内置为 Qwen-Plus)。

适合按使用量购买大模型推理服务的需求。

后付费(按量)

模型推理(调用)费用 = 模型调用消耗 x 模型推理(调用)单价

在免费额度内,不会产生费用。查看免费额度请参考新人免费额度

模型推理(调用计费

完整的模型调用价格和免费额度,请参考模型列表

计费公式:

文本

文本生成费用 = 模型输入 Token 数 x 模型输入单价 + 模型输出 Token 数 x 模型输出单价(最低为 0.0003元/千Token)

图像转成Token:每28x28像素对应一个Token;一张图最少4个Token。

文本向量、多模态向量、文本分类、文本抽取、文本排序费用 = 模型输出 Token 数 x 模型单价(最低为 0.0007元/千Token)

模型推理(调用)的免费额度

如何获取免费额度以及如何查看剩余免费额度请参考新人免费额度

旗舰模型推理(调用)计费细则

其他模型的调用价格和免费额度,请参考模型列表

计费常见问题

在哪里为百炼平台的使用付费?

使用时发生余额不足、欠费等情况请直接前往费用与成本页面充值需要的金额。

Token和字符串之间怎么换算?

Token是模型用来表示自然语言文本的基本单位,可以直观地理解为“字”或“词”。

  • 对于中文文本,1个Token通常对应一个汉字或词语。例如,“你好,我是通义千问”会被转换成['你好', ',', '我是', '通', '义', '千', '问']。

  • 对于英文文本,1个Token通常对应3至4个字母或1个单词。例如,"Nice to meet you."会被转换成['Nice', ' to', ' meet', ' you', '.']。

不同的大模型切分Token的方法可能不同。您可以使用SDK在本地查看经过通义千问模型切分后的Token数据。

查看经过通义千问模型切分后的Token数据

# 运行前请 pip install tiktoken
from dashscope import get_tokenizer  # dashscope版本 >= 1.14.0

# 获取tokenizer对象,目前只支持通义千问系列模型
tokenizer = get_tokenizer('qwen-turbo')

input_str = '通义千问具有强大的能力。'

# 将字符串切分成token并转换为token id
tokens = tokenizer.encode(input_str)
print(f"经过切分后的token id为:{tokens}。")
print(f"经过切分后共有{len(tokens)}个token")

# 将token id转化为字符串并打印出来
for i in range(len(tokens)):
    print(f"token id为{tokens[i]}对应的字符串为:{tokenizer.decode(tokens[i])}")
// Copyright (c) Alibaba, Inc. and its affiliates.
// dashscope SDK版本 >= 2.13.0
import java.util.List;
import com.alibaba.dashscope.exception.NoSpecialTokenExists;
import com.alibaba.dashscope.exception.UnSupportedSpecialTokenMode;
import com.alibaba.dashscope.tokenizers.Tokenizer;
import com.alibaba.dashscope.tokenizers.TokenizerFactory;

public class Main {
  public static void testEncodeOrdinary(){
    Tokenizer tokenizer = TokenizerFactory.qwen();
    String prompt ="如果现在要你走十万八千里路,需要多长的时间才能到达? ";
    // encode string with no special tokens
    List<Integer> ids = tokenizer.encodeOrdinary(prompt);
    System.out.println(ids);
    String decodedString = tokenizer.decode(ids);
    assert decodedString == prompt;
  }

  public static void testEncode() throws NoSpecialTokenExists, UnSupportedSpecialTokenMode{
    Tokenizer tokenizer = TokenizerFactory.qwen();
    String prompt = "<|im_start|>system\nYour are a helpful assistant.<|im_end|>\n<|im_start|>user\nSanFrancisco is a<|im_end|>\n<|im_start|>assistant\n";
    // encode string with special tokens <|im_start|> and <|im_end|>
    List<Integer> ids = tokenizer.encode(prompt, "all");
    // 24 tokens [151644, 8948, 198, 7771, 525, 264, 10950, 17847, 13, 151645, 198, 151644, 872, 198, 23729, 80328, 9464, 374, 264, 151645, 198, 151644, 77091, 198]
    String decodedString = tokenizer.decode(ids);
    System.out.println(ids);
    assert decodedString == prompt;

  }

  public static void main(String[] args) {
      try {
        testEncodeOrdinary();
        testEncode();
      } catch (NoSpecialTokenExists | UnSupportedSpecialTokenMode e) {
        e.printStackTrace();
      }
  }
}

本地运行的tokenizer可以用来估计文本的Token量,但是得到的结果不保证与模型服务端完全一致,仅供参考。如果您对通义千问的tokenizer细节感兴趣,请参考: tokenizer参考

多轮对话怎么计费?

在多轮对话中,历史对话的输入输出都会作为新一轮的模型输入 token 进行计费。

创建了大模型应用会收费吗?

只创建应用不会收费。但如果调用应用进行了问答,则会根据调用的模型类型收取模型调用费用。

账单常见问题

查看上个月百炼的成本支出

成分分析页面,成本类型选择应付金额,时间粒度选择月,时间范围选择上个月(假设为2024年08月),产品选择大模型服务平台百炼,即可查看上个月百炼的成本支出。

image

查看模型推理(调用)总花费

成分分析页面,成本类型选择应付金额,选择时间粒度和范围(假设为2024年03月~08月),产品明细选择大模型推理

image

查看具体模型的推理(调用)花费

以模型 qwen-max 为例。在费用与成本页面,选择账期,选择产品明细为大模型推理,然后单击搜索。在实例ID列可以找到qwen-max的input_tokens和output_tokens两个实例。将这两个实例对应的应付金额相加,即为所选账期内调用qwen-max模型所支付的费用。

实例ID字段内容依次为:ApiKeyId,WorkspaceId,ModelName,AmountType和Source。

image

如何根据明细账单进行分账?

比如可以通过业务空间、apikeyid、模型名称等内容,进行分账。

您可以前往百炼API Key管理查看API Key与ApiKeyId的对应关系。

自2024年9月7日以后产生的账单,可通过实例ID信息进行分账,其中实例ID中包含的信息是:ApiKeyId、业务空间ID、模型名称、输入/输出类型、调用渠道。可以通过下载账单表格,按照类型分账进行数据分析和汇总。

如果您的实例ID中没有包含ApiKeyId,则表示该收费项是通过控制台调用产生的。

image

相关文档

如何获取免费额度、如何查看免费额度用量,请参考新人免费额度