API详情

BELLE-LLaMA

说明

支持的领域 / 任务:aigc

BELLE-LLaMA模型是由BELLE出品的大规模语言模型,它在DashScope上的模型名称为"belle-llama-13b-2m-v1"。BELLE(BE Large Language Model Engine),一款基于BLOOM和LLAMA针对中文优化、模型调优切仅使用由ChatGPT生成的数据,为中文指令提供更好的支持。促进中文对话大模型开源社区的发展,愿景是成为能够帮到每一个人的LLM Engine。相比如何做好大语言模型的预训练,BELLE更关注如何在开源预训练大语言模型的基础上,帮助每一个人都能够得到一个属于自己的、效果尽可能好的具有指令表现能力的语言模型,降低大语言模型、特别是中文大语言模型的研究和应用门槛。为此,BELLE项目会持续开放指令训练数据、相关模型、训练代码、应用场景等,也会持续评估不同训练数据、训练算法等对模型表现的影响。BELLE针对中文做了优化,模型调优仅使用由ChatGPT生产的数据(不包含任何其他数据)。

当前在DashScope部署服务时使用的ModelScope社区模型id:AI-ModelScope/BELLE-LLaMA-13B-2M,模型版本:v1.0.1。

更多信息可以参考ModelScope上BELLE-LLaMA的开源repo

BELLE-LLaMA以用户文本形式输入的指令(prompt)作为输入,返回模型生成的回复作为输出。在这一过程中,文本将被转换为语言模型可以处理的token序列。Token是模型用来表示自然语言文本的基本单位,可以直观的理解为“字”或“词”。对于中文文本来说,1个token通常对应一个汉字;对于英文文本来说,1个token通常对应3至4个字母或1个单词。例如,中文文本“你好。”会被转换成序列['你', '好', '。'],而英文文本"Nice to meet you."则会被转换成['Nice', ' to', ' meet', ' you', '.']。

由于模型调用的计算量与token序列长度相关,输入或输出token数量越多,模型的计算时间越长,我们将根据模型输入和输出的token数量计费。可以从API返回结果的 usage 字段中了解到您每次调用时使用的token数量。

模型概览

模型名

模型简介

belle-llama-13b-2m-v1

BELLE中文对话大规模语言模型,支持中文英文等不同语言输入。

SDK使用

前提条件

文本生成

以下示例展示了调用BELLE-LLaMA模型对一个用户指令进行响应的代码。

说明

需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。

设置API KEY

export DASHSCOPE_API_KEY=YOUR_DASHSCOPE_API_KEY
# coding=utf-8
# For prerequisites running the following sample, visit https://help.aliyun.com/document_detail/611472.html

import dashscope
from dashscope import Generation
from http import HTTPStatus
import json

response=Generation.call(
    model='belle-llama-13b-2m-v1',
    prompt='Human:你好\n\nAssistant:'
    )

if response.status_code==HTTPStatus.OK:
    print(json.dumps(response, indent=4, ensure_ascii=False))
else:
    print('Code: %d, status: %s, message: %s' % (response.status_code, response.code, response.message))
// Copyright (c) Alibaba, Inc. and its affiliates.

import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.alibaba.dashscope.utils.JsonUtils;


public class Main{
  public static void usage()
      throws NoApiKeyException, ApiException, InputRequiredException {
    Generation gen = new Generation();
    GenerationParam param = GenerationParam
    .builder()
    .model("belle-llama-13b-2m-v1")
    .prompt("Human:你好\n\nAssistant:")
    .build();
    GenerationResult result = gen.call(param);
    System.out.println(JsonUtils.toJson(result));
  }
  public static void main(String[] args){
        try {
          usage();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
          System.out.println(e.getMessage());        
        }
        System.exit(0);
  }
}

参数配置

参数

类型

默认值

说明

model

string

-

指定用于调用的模型,目前BELLE仅支持,目前仅支持 belle-llama-13b-2m-v1

prompt

string

-

用户当前输入的期望模型执行指令。

返回结果

  • 返回结果示例

{
    "status_code": 200,
    "request_id": "4230777c-d45c-9856-8629-4cbe5d4f301c",
    "code": "",
    "message": "",
    "output": {
        "text": "你好!有什么我能帮助你的吗?"
    },
    "usage": {
        "input_tokens": 0,
        "output_tokens": 0
    }
}
  • 返回参数说明

返回参数

类型

说明

status_code

int

200(HTTPStatus.OK)表示请求成功,否则表示请求失败,可以通过code获取错误码,通过message字段获取错误详细信息。

request_Id

string

系统生成的标志本次调用的id。

code

string

表示请求失败,表示错误码,成功忽略。

message

string

失败,表示失败详细信息,成功忽略。

output

dict

调用结果信息,对于此模型,包含输出text。

text

string

模型生成回复。

usage

dict

计量信息,表示本次请求计量数据,当前模型无计量信息,此处为默认值。

input_tokens

int

用户输入文本转换成Token后的长度。

output_tokens

int

模型生成回复转换为Token后的长度。

HTTP调用接口

功能描述

belle-llama-13b-2m-v1 模型同时支持 HTTP 调用来完成客户的响应。

前提条件

提交接口调用

POST https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation

入参描述

传参方式

字段

类型

必选

描述

示例值

Header

Content-Type

String

请求类型:application/json

application/json

Accept

String

*/*,选择text/event-stream则会开启 SSE 响应,默认无设置

text/event-stream

Authorization

String

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

Bearer d1**2a

X-DashScope-SSE

String

跟Accept: text/event-stream 二选一即可启用SSE响应

enable

Body

model

String

指明需要调用的模型,固定值belle-llama-13b-2m-v1

belle-llama-13b-2m-v1

input.prompt

String

文本内容,支持中英文。

Human:你好\n\nAssistant:

出参描述

字段

类型

描述

示例值

output.text

String

本次请求的算法输出内容。

你好,欢迎来到我们的国家/城市。有什么我可以帮你的吗

request_id

String

本次请求的系统唯一码

7574ee8f-38a3-4b1e-9280-11c33ab46e51

请求示例

以下示例展示通过CURL命令来调用 belle-llama-13b-2m-v1 模型的脚本(SSE 关闭)。

说明

需要使用您的API-KEY替换示例中的 your-dashscope-api-key ,代码才能正常运行。

curl --location 'https://dashscope.aliyuncs.com/api/v1/services/aigc/text-generation/generation' \
--header 'Authorization: Bearer <your-dashscope-api-key>' \
--header 'Content-Type: application/json' \
--data '{
    "model": "belle-llama-13b-2m-v1",
    "input": {
        "prompt": "Human:你好\n\nAssistant:"
    },
    "parameters":{
    }
}'

响应示例

{
    "output":{
        "text":"你好,欢迎来到我们的国家/城市。有什么我可以帮你的吗"
    },
    "request_id":"d89c06fb-46a1-47b6-acb9-bfb17f814969"
}

异常响应示例

在访问请求出错的情况下,输出的结果中会通过 code 和 message 指明出错原因。

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

状态码说明

DashScope通用状态码请查阅:返回状态码说明