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

【AI】联网模式

【AI】联网模式

文章目录

  • 【AI】联网模式
    • 1. 简介
    • 2. 接入步骤
      • 2.1 引入依赖
      • 2.2 方法构建
      • 2.3 接口构建

1. 简介

在使用联网模式之前,我们如果问起ai一些最近网络上流传的一些东西,它可能并不能准确的给你描述出来,因为它的知识库更新时间可能停留在之前,比如我问它一个比较新鲜的话题如下:

在这里插入图片描述

它给我的回答是并不知道这部具体的电影及其票房,接下来是开启联网模式后的回应:

在这里插入图片描述

可以看到开启联网模式后AI的回答很详细,包括它具体的上下架时间与票房金额。

对此,如果我们需要AI的回答结合上互联网最近的一些信息或者参考资料来作为补充,我们就需要开启联网模式~

2. 接入步骤

2.1 引入依赖

目前联网模式java并不支持直接调用,需要通过SDK进行调用,所以需要引入依赖如下:

<dependency><groupId>com.alibaba</groupId><artifactId>dashscope-sdk-java</artifactId><version>2.20.8</version>
</dependency>

:这里的版本建议在2.18以上,后续引入的其它技术需要这个版本以上才能支持

2.2 方法构建

【官网链接】:大模型服务平台百炼控制台

开启联网模式主要是开启一个字段:enable_search,官网的讲解如下:

在这里插入图片描述

我们通过java代码将其封装成一个方法,通过用户传入prompt提问并将回复直接返回:

private String searchModel(String message) throws NoApiKeyException, InputRequiredException {Generation gen = new GenerationMessage userMsg = Message.builder().role(Role.USER.getValue()).content(message).build();GenerationParam param = GenerationParam.builder()// 若没有配置环境变量,请用百炼API Key将下行替换为:.apiKey("sk-xxx").apiKey(System.getenv("DASH_SCOPE_API_KEY")) // 这里替换为自己部署的api-key变量// 此处以qwen-plus为例,可按需更换模型名称。// 模型列表:https://help.aliyun.com/zh/model-studio/getting-started/models.model("qwen-plus").messages(Arrays.asList(userMsg)).resultFormat(GenerationParam.ResultFormat.MESSAGE).enableSearch(true) // 关键在此,开启联网模式.build(	// 将AI回复内容提取出来return gen.call(param).getOutput().getChoices().get(0).getMessage().getContent();
}

2.3 接口构建

构建接口如下:

@GetMapping("/chat")
public String model(@RequestParam(value = "message", defaultValue = "Hello") String message) throws NoApiKeyException, InputRequiredException {String chat = searchModel(message);return chat;
}

执行结果如下:

在这里插入图片描述
完成上述步骤联网模式就能正式被启用了!!
以上便是对联网模式的介绍与使用了,如果上述内容对大家有帮助的话请给一个三连关注吧💕( •̀ ω •́ )✧✨

http://www.xdnf.cn/news/16360.html

相关文章:

  • Scrapy分布式爬虫数据统计全栈方案:构建企业级监控分析系统
  • GPU运维常见问题处理
  • 【C++】stack和queue的模拟实现
  • Java基础day17-LinkedHashMap类,TreeMap类和集合工具类
  • 基于POD和DMD方法的压气机叶片瞬态流场分析与神经网络预测
  • 基于遗传算法的多无人车协同侦察与安全保护策略优化
  • CUDA杂记--FP16与FP32用途
  • Redis面试精讲 Day 5:Redis内存管理与过期策略
  • 汇编语言中的通用寄存器及其在逆向工程中的应用
  • 计划任务(at和cron命令介绍及操作)
  • MySQL事务原理
  • 应用程序 I/O 接口
  • 【MySQL 数据库】MySQL基本查询(第二节)
  • 系统性学习C语言-第二十三讲-文件操作
  • 谷歌无法安装扩展程序解决方法(也许成功)
  • Kubernetes 与 Docker的爱恨情仇
  • STM32-定时器的基本定时/计数功能实现配置教程(寄存器版)
  • 【工具】好用的浏览器AI助手
  • 用unity开发教学辅助软件---幼儿绘本英语拼读
  • 【深度学习新浪潮】什么是GUI Agent?
  • java面试复习(spring相关系列)
  • 【机器学习-2】 | 决策树算法基础/信息熵
  • 【RocketMQ】一分钟了解RocketMQ
  • Earth靶机攻略
  • linux线程概念和控制
  • 字符串缓冲区和正则表达式
  • Mingw 与MSYS2 与Cygwin区别
  • Linux如何执行系统调用及高效执行系统调用:深入浅出的解析
  • 基于深度学习的胸部 X 光图像肺炎分类系统(七)
  • 凝思系统6.0.80安装chorme,亲测可用