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

中国做网站公司湘潭网站制作

中国做网站公司,湘潭网站制作,附近量身定做衣服店,大门户wordpress主题随着人工智能技术的飞速发展,大模型在各个领域的应用越来越广泛。阿里云百炼大模型提供了强大的语言理解和生成能力,但如何将其高效地集成到实际应用中,一直是开发者关注的焦点。本文将详细介绍如何使用 Spring AI Alibaba 集成阿里云百炼大模…

随着人工智能技术的飞速发展,大模型在各个领域的应用越来越广泛。阿里云百炼大模型提供了强大的语言理解和生成能力,但如何将其高效地集成到实际应用中,一直是开发者关注的焦点。本文将详细介绍如何使用 Spring AI Alibaba 集成阿里云百炼大模型应用,帮助开发者快速上手并实现功能。

一、前期准备

在开始集成之前,我们需要完成一些准备工作,以确保后续的开发过程顺利进行。

1. 获取 API Key

首先,你需要在阿里云控制台中获取 API Key。API Key 是用于认证和授权的关键信息,建议将其配置到环境变量中,以避免因硬编码导致的泄露风险。推荐使用 DASHSCOPE_API_KEY 作为环境变量名。

2. 创建阿里云百炼大模型应用

接下来,你需要创建一个阿里云百炼大模型应用。可以选择以下任一类型应用,并获取应用 ID,将应用 ID 配置到环境变量中,推荐使用 APP_ID 作为环境变量名。

  • 智能体应用:适用于需要与用户进行交互的场景。
  • 工作流应用:适用于需要按照固定流程处理任务的场景。
  • 智能体编排应用:适用于需要自动规划复杂项目的场景。

如果是在子业务空间创建的阿里云百炼大模型应用,还需要获取业务空间 ID,并将其配置到环境变量中,推荐使用 WORKSPACE_ID 作为环境变量名。

二、操作流程

1. 初始化 Spring Boot 工程

环境要求
  • Spring Boot 3.x:确保使用最新版本的 Spring Boot,以获得更好的性能和兼容性。
  • JDK 17 或更高版本:推荐使用 JDK 17 或更高版本,以支持最新的 Java 特性。
初始化方式

你可以选择以下两种方式之一来初始化 Spring Boot 工程:

  • 下载完整的示例工程快速上手(推荐):访问 bailian-agent 仓库,下载完整的示例工程代码到本地。下载完成后,跳转到步骤 3 配置参数,然后执行步骤 5 启动 Spring Boot 工程并测试。
  • 从零开始搭建基础工程:如果你希望从头开始搭建工程,可以按照后续步骤依次执行。

2. 添加依赖

pom.xml 文件中配置 Spring AI Alibaba 依赖。以下是具体的依赖配置代码:

<dependency><groupId>com.alibaba.cloud.ai</groupId><artifactId>spring-ai-alibaba-starter</artifactId><version>1.0.0-M5.1</version>
</dependency>

3. 配置参数

application.yml 文件中配置阿里云百炼大模型应用 ID、API Key 和业务空间 ID(仅在子业务空间创建百炼大模型应用时需要)。以下是具体的配置代码:

spring:ai:dashscope:agent:app-id: ${APP_ID} # 大模型应用IDapi-key: ${DASHSCOPE_API_KEY} # 百炼API Key#workspace-id: ${WORKSPACE_ID} # 业务空间ID,可选,未配置时使用主账号空间

4. 调用阿里云百炼大模型应用

Spring AI Alibaba 使用 DashScopeAgent 调用阿里云百炼大模型应用。以下是两种调用方式的代码示例:

非流式调用
import com.alibaba.cloud.ai.dashscope.agent.DashScopeAgent;
import com.alibaba.cloud.ai.dashscope.agent.DashScopeAgentOptions;
import com.alibaba.cloud.ai.dashscope.api.DashScopeAgentApi;import org.springframework.ai.chat.messages.AssistantMessage;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;@RestController
@RequestMapping("/ai")
public class BailianAgentRagController {private static final Logger logger = LoggerFactory.getLogger(BailianAgentRagController.class);private DashScopeAgent agent;@Value("${spring.ai.dashscope.agent.app-id}")private String appId;public BailianAgentRagController(DashScopeAgentApi dashscopeAgentApi) {this.agent = new DashScopeAgent(dashscopeAgentApi);}@GetMapping("/bailian/agent/call")public String call(@RequestParam(value = "message",defaultValue = "如何使用SDK快速调用阿里云百炼的应用?") String message) {ChatResponse response = agent.call(new Prompt(message, DashScopeAgentOptions.builder().withAppId(appId).build()));if (response == null || response.getResult() == null) {logger.error("chat response is null");return "chat response is null";}AssistantMessage app_output = response.getResult().getOutput();return app_output.getContent();}
}

4. 调用阿里云百炼大模型应用(续)

流式调用
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import reactor.core.publisher.Flux;@RestController
@RequestMapping("/ai")
public class BailianAgentRagStreamController {private static final Logger logger = LoggerFactory.getLogger(BailianAgentRagStreamController.class);private DashScopeAgent agent;@Value("${spring.ai.dashscope.agent.app-id}")private String appId;public BailianAgentRagStreamController(DashScopeAgentApi dashscopeAgentApi) {this.agent = new DashScopeAgent(dashscopeAgentApi,DashScopeAgentOptions.builder().withSessionId("current_session_id").withIncrementalOutput(true).withHasThoughts(true).build());}@GetMapping(value = "/bailian/agent/stream", produces = "text/event-stream")public Flux<String> stream(@RequestParam(value = "message",defaultValue = "你好,请问你的知识库文档主要是关于什么内容的?") String message) {return agent.stream(new Prompt(message, DashScopeAgentOptions.builder().withAppId(appId).build())).map(response -> {if (response == null || response.getResult() == null) {logger.error("chat response is null");return "chat response is null";}AssistantMessage app_output = response.getResult().getOutput();String content = app_output.getContent();return content;});}
}

5. 启动 Spring Boot 工程并测试

完成上述配置和代码编写后,就可以启动 Spring Boot 工程并进行测试了。你可以使用 Postman 或其他 HTTP 客户端工具来发送请求,验证是否能够成功调用阿里云百炼大模型应用。

以下是使用 Postman 测试的示例:

  1. 打开 Postman,创建一个新的 GET 请求。
  2. 在请求的 URL 中输入 http://localhost:8080/ai/bailian/agent/call?message=你的测试问题,用于测试非流式调用。
  3. 点击“Send”按钮,查看返回的结果。
  4. 同样地,你可以将 URL 改为 http://localhost:8080/ai/bailian/agent/stream?message=你的测试问题,用于测试流式调用。

如果一切正常,你将看到阿里云百炼大模型返回的响应内容。

三、计费说明

在使用阿里云百炼大模型应用时,需要注意计费问题。百炼应用本身不收取费用,但通过应用调用模型时会产生模型推理(调用)的相关费用。具体的费用详情可以参考阿里云官方文档中的 计费项。

四、错误码

在调用过程中,可能会遇到一些错误。通用错误码信息可以参考阿里云官方文档中的 错误信息。

五、了解更多

  • Spring AI Alibaba:提供了丰富的文档教程、实战博客和开发者社区,帮助你快速开发 Java 生成式 AI 应用。
  • 应用调用:提供了详细的接口说明与调用示例,方便你更好地理解和使用阿里云百炼大模型应用。

通过以上步骤,你已经成功地使用 Spring AI Alibaba 集成了阿里云百炼大模型应用。希望这篇技术博客能够帮助你更好地理解和应用这一强大的技术。如果你在开发过程中遇到任何问题,欢迎随时查阅阿里云官方文档或在开发者社区中寻求帮助。

http://www.dtcms.com/wzjs/564999.html

相关文章:

  • 购买友情链接网站重庆建网站企业有哪些
  • 内蒙古网站开发公司wordpress ftp
  • 网站为什么要seo?wordpress数组
  • 上上佳食品 网站建设服装手机商城网站建设
  • 服装设计网站有哪些如何免费网站建设
  • 单品商城网站源码办公室装饰设计
  • 做网站赚钱有哪些途径专业网站建设加盟合作
  • 网站开发详细设计长沙网站推广和优化
  • 橙色网站后台模板wordpress 不同页面不同侧边栏
  • 盐城市亭湖区城乡建设局网站做电影网站挣钱
  • 狮山网站制作wordpress添加pdf
  • 乐陵建设网站城市建设和房屋管理部门网站
  • 马云先做那个网站的起家的seoul是韩国哪个城市
  • 上海高端网站设计公司价格渭南做网站的
  • 创建app与网站的区别商城网站建设要求
  • 电子政务网站建设流程郑州做定制网站的公司哪家好
  • 云南手机网站建设公司海外网站备案
  • 建设一个网站的设备无锡手工活外发加工网
  • 什么叫展示型网站青岛seo代理计费
  • 书荒小说阅读器是哪个网站做的网页设计实验报告重庆交通大学
  • 武进网站建设服务大连网络推广广告代理
  • 绍兴网站建设哪家好网站后期培训机构全国排名
  • 如何让网站被百度收录学做分类网站
  • 网站介绍词wordpress修改关键词
  • 手机移动端网站怎么做seo黑龙江建筑信息网
  • 微网站和h5有什么区别建筑云平台
  • 法拍房北京网站企业的管理系统有哪些
  • 自己的电脑可以做网站服务器西直门网站建设公司
  • 深圳创意设计网站个人网站前置审批项
  • 网站建设销售顾问开场白直播类网站怎么做