当前位置: 首页 > news >正文

阿里云百炼大模型使用

阿里云百炼大模型使用

由于阿里云百炼大模型有个新用户福利,有免费的4000000 tokens,我开通了相应的服务试试水。
在这里插入图片描述

使用

这里使用Android开发了一个简单的demo。

安装SDK

    implementation group: 'com.alibaba', name: 'dashscope-sdk-java', version: '2.14.4'

核心代码

// 自定义的AsyncTaskprivate class NetworkTask extends AsyncTask<Void, Void, String> {private String text;public NetworkTask(String text) {this.text = text;}@Overrideprotected String doInBackground(Void... voids) {// 在这里执行网络请求//请设置为自己的API-Key,这是有风险的。Constants.apiKey = "";Generation gen = new Generation();com.alibaba.dashscope.common.Message systemMsg = com.alibaba.dashscope.common.Message.builder().role(Role.SYSTEM.getValue()).content(text).build();com.alibaba.dashscope.common.Message userMsg = com.alibaba.dashscope.common.Message.builder().role(Role.USER.getValue()).content(text).build();GenerationParam param = GenerationParam.builder().model("qwen-plus").messages(Arrays.asList(userMsg)).resultFormat(GenerationParam.ResultFormat.MESSAGE).topP(0.8).build();GenerationResult result = null;try {result = gen.call(param);Gson gson = new Gson();return gson.toJson(result);} catch (NoApiKeyException e) {e.printStackTrace();} catch (InputRequiredException e) {e.printStackTrace();}return "";}@Overrideprotected void onPostExecute(String response) {if ("".equals(response)) {return;}// 在这里更新UI,因为此方法在主线程中运行Gson gson = new Gson();GenerationResult result = gson.fromJson(response, GenerationResult.class);GenerationOutput output = result.getOutput();output.getChoices().get(0).getMessage();String serverOutput = "";serverOutput = output.getChoices().stream().map(x -> x.getMessage().toString()).collect(Collectors.joining(","));Message serverResponse = new Message(serverOutput, false);List<Message> newMessages = new ArrayList<>();newMessages.add(new Message(text, true));newMessages.add(serverResponse);adapter.getMessageList().addAll(newMessages);adapter.notifyDataSetChanged();}}

实现效果
这里只支持了单轮对话,官方是支持多轮对话的,同时支持流式处理,这样用户的体验效果会更好。
在这里插入图片描述

参考

  1. 新用户限时免费策略公告
  2. 开通DashScope并创建API-KEY
  3. API详情
http://www.lryc.cn/news/353833.html

相关文章:

  • 亲测有效,通过接口实现完美身份证号有效性验证+身份证与姓名匹配查询身份实名认证接口(实时)
  • 试题11 输出什么?
  • 对vue3/core源码ref.ts文件API的认识过程
  • AWS迁移与传输之AWS DMS
  • 【ML Olympiad】预测地震破坏——根据建筑物位置和施工情况预测地震对建筑物造成的破坏程度
  • kafka监控配置和告警配置
  • 关于智慧校园安全用电监测系统的设计
  • Flutter 中的 FormField 小部件:全面指南
  • 数据库DCL语句
  • mysql-日志管理-error.log
  • 弱密码系统登录之后强制修改密码
  • 解释Python中的多线程和多进程编程
  • 【LeetCode】【1】两数之和(1141字)
  • 【论文速读】|探索ChatGPT在软件安全应用中的局限性
  • 部门来了个测试开发,听说是00后,上来一顿操作给我看蒙了...
  • 小程序-修改用户头像
  • PCIe总线-事物层之TLP请求和完成报文格式介绍(六)
  • 从 0 开始实现一个网页聊天室 (小型项目)
  • Tomcat部署项目的方式
  • 推荐一个快速开发接私活神器
  • 输入输出(4)——C++的输入输出运算符
  • [图解]产品经理创新模式01物流变成信息流
  • npm 上传包
  • Python 小游戏——贪吃蛇
  • 人工智能方面顶会
  • JRT1.7发布
  • Python错误集锦:xlwt写入表格时提示exception-unexpected-data-type-class-bytes
  • 赶紧收藏!2024 年最常见 20道 Redis面试题(八)
  • Flowable第一次启动MYSQL8.0版本(踩坑)
  • Java基础的语法---StringBuilder