豆包保姆级接入流程

模型与价格

豆包的模型介绍可以看豆包大模型介绍,模型价格可以看豆包定价文档里的“模型推理” - “大语言模型” - “字节跳动”部分。

推荐使用以下模型:

  • Doubao-lite-32k:每百万 token 的输入价格为 0.3 元,输出价格为 0.6 元
  • Doubao-pro-32k:每百万 token 的输入价格为 0.8 元,输出价格为 2 元
  • 豆包的 6 个模型中,4k 和 32k 的价格是一样的,所以这里推荐用 32k 的模型。
  • 每个模型都有 50 万 tokens 的免费额度,不会过期。
    • 剩余免费额度见开通管理 | 火山方舟管理控制台里的“免费推理额度”。
    • 豆包一共有 6 个模型,也就是说上面这两个模型的 token 用完之后,你还可以切换为别的模型使用。
  • 8 月 30 日前会额外给每个模型赠送 5 亿 tokens,不会过期。领取方式见下文的可选步骤:领取 5 亿 tokens 的免费额度
  • “输入”即你发送给模型的语音文字,“输出”即模型提供的回答,问答一次的最终花费 = 输入 token 数量 * 输入价格 + 输出 token 数量 * 输出价格。
  • 1 个 token 大约对应 1 个汉字或 3 至 4 个字母。

5 亿 tokens 的免费额度申请步骤 

第一步:注册账号

进入火山方舟管理控制台,根据提示注册或登陆账号。

第二步:开通模型

进入开通管理,点击 Doubao-pro-4k 最右边的【开通服务】按钮,会弹出来一个弹窗。

在弹窗中勾选豆包的 6 个模型(Doubao-pro-4kDoubao-pro-8kDoubao-pro-32kDoubao-lite-4kDoubao-lite-8kDoubao-lite-32k),然后点击【立即开通】。

可选步骤:领取 5 亿 token 的免费额度

免费额度赠送活动截止日期:2024 年 8 月 30 日

进入开通管理,点击页面最上方的公告右侧的【去参加】按钮,然后在弹窗中勾选刚才开通的 6 个豆包模型,点击【授权】。

然后刷新页面,就会看到这 6 个模型的“免费推理额度” 由 50 万(500,000 tokens)变成了 5 亿零 50 万(500,500,000 tokens)。

第三步:创建 API Key

进入 API Key 管理,点击【创建 API Key】,填写名称后创建 API Key 备用。

第四步:创建接入点

豆包的模型不能直接使用,要先在平台内创建接入点了之后才能使用。

以 Doubao-pro-32k 为例:

  1. 进入模型推理,点击【创建推理接入点】。
  2. 点击【添加模型】按钮,会出现一个弹窗。
    • 在模型广场中选择“Doubao-pro-32k”,然后右侧会出现模型版本。
    • 模型版本一般只有一个,名称就是 6 个数字组成的日期(例如 240515),但也有可能会有带前缀的版本(例如 functioncall-240515character-240528)。
    • 模型版本要选择不带前缀的版本,即类似 240515 这样只有 6 个数字的版本。
    • 选好模型版本后,点击页面右下角的【添加】。
  3. 名称建议就填写“接入模型”那里显示的文本,例如“Doubao-pro-32k-240515”(把斜线 / 改为短横线 -)。
  4. 点击页面右侧的【接入模型】按钮。

然后,你就会回到模型推理页面,此时表格中会看到你刚才创建的名为“Doubao-pro-32k-240515”的接入点,名称下方有一串以 ep- 开头的、格式为 ep-xxxxxxxxxx-xxxxx 的文本,这就是我们需要的接入点 ID,复制后备用。

当你想要使用别的模型时,你需要重复以上步骤,创建新的接入点。建议为每个模型都提前创建好接入点。

使用

官网sdk接入地址: GitHub - volcengine/volcengine-java-sdk

  • 接口地址(OPENAI_BASE_URL)填写 https://ark.cn-beijing.volces.com/api/v3
  • 密钥(OPENAI_API_KEY)填写你第三步创建的 API Key
  • 模型(OPENAI_MODEL)填写你第四步创建的接入点 ID

快速开始

添加pom文件

<dependency>
    <groupId>com.volcengine</groupId>
    <artifactId>volcengine-java-sdk-ark-runtime</artifactId>
    <version>LATEST</version>
</dependency>
package com.volcengine.ark.runtime;


import com.volcengine.ark.runtime.model.completion.chat.ChatCompletionRequest;
import com.volcengine.ark.runtime.model.completion.chat.ChatMessage;
import com.volcengine.ark.runtime.model.completion.chat.ChatMessageRole;
import com.volcengine.ark.runtime.service.ArkService;

import java.util.ArrayList;
import java.util.List;


public class ChatCompletionsExample {

    /**
     * Authentication
     * 1.If you authorize your endpoint using an API key, you can set your api key to environment variable "ARK_API_KEY"
     * String apiKey = System.getenv("ARK_API_KEY");
     * ArkService service = new ArkService(apiKey);
     * Note: If you use an API key, this API key will not be refreshed.
     * To prevent the API from expiring and failing after some time, choose an API key with no expiration date.
     *
     * 2.If you authorize your endpoint with Volcengine Identity and Access Management(IAM), set your api key to environment variable "VOLC_ACCESSKEY", "VOLC_SECRETKEY"
     * String ak = System.getenv("VOLC_ACCESSKEY");
     * String sk = System.getenv("VOLC_SECRETKEY");
     * ArkService service = new ArkService(ak, sk);
     * To get your ak&sk, please refer to this document(https://www.volcengine.com/docs/6291/65568)
     * For more information,please check this document(https://www.volcengine.com/docs/82379/1263279)
     */
    public static void main(String[] args) {

        String apiKey = System.getenv("ARK_API_KEY");
        ArkService service = new ArkService(apiKey);

        System.out.println("\n----- standard request -----");
        final List<ChatMessage> messages = new ArrayList<>();
        final ChatMessage systemMessage = ChatMessage.builder().role(ChatMessageRole.SYSTEM).content("你是豆包,是由字节跳动开发的 AI 人工智能助手").build();
        final ChatMessage userMessage = ChatMessage.builder().role(ChatMessageRole.USER).content("常见的十字花科植物有哪些?").build();
        messages.add(systemMessage);
        messages.add(userMessage);

        ChatCompletionRequest chatCompletionRequest = ChatCompletionRequest.builder()
                .model("${YOUR_ENDPOINT_ID}")
                .messages(messages)
                .build();

        service.createChatCompletion(chatCompletionRequest).getChoices().forEach(choice -> System.out.println(choice.getMessage().getContent()));

        System.out.println("\n----- streaming request -----");
        final List<ChatMessage> streamMessages = new ArrayList<>();
        final ChatMessage streamSystemMessage = ChatMessage.builder().role(ChatMessageRole.SYSTEM).content("你是豆包,是由字节跳动开发的 AI 人工智能助手").build();
        final ChatMessage streamUserMessage = ChatMessage.builder().role(ChatMessageRole.USER).content("常见的十字花科植物有哪些?").build();
        streamMessages.add(streamSystemMessage);
        streamMessages.add(streamUserMessage);

        ChatCompletionRequest streamChatCompletionRequest = ChatCompletionRequest.builder()
                .model("${YOUR_ENDPOINT_ID}")
                .messages(streamMessages)
                .build();

        service.streamChatCompletion(streamChatCompletionRequest)
                .doOnError(Throwable::printStackTrace)
                .blockingForEach(
                        choice -> {
                            if (choice.getChoices().size() > 0) {
                                System.out.print(choice.getChoices().get(0).getMessage().getContent());
                            }
                        }
                );

        // shutdown service
        service.shutdownExecutor();
    }

}

注意:

​​​​​​​

  • 27
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值