Dict.CN 在线词典, 英语学习, 在线翻译 ------------- MyGitee My腾云code

Happy_EveryDay

可以平凡 不可以平庸 无爱则无忧,无欲则无求,无怒而无敌,无怨才是佛。所有烦恼,都是放不下的执著 开源技群 328035181 MyGitee

sb-ai-alibaba 20250715

https://java2ai.com/docs/1.0.0.2/get-started/   ai-alibaba doc

1、创建aliyunai-key

https://www.aliyun.com/product/bailian

https://bailian.console.aliyun.com/?tab=model#/api-key

 

2、ai-alibaba实例

2.1、pom.xml

<properties>
<java.version>17</java.version>
<spring-ai-alibaba.version>1.0.0-M5.1</spring-ai-alibaba.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-starter</artifactId>
<version>${spring-ai-alibaba.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

<repositories>
<repository>
<id>maven2</id>
<name>maven2</name>
<url>https://repo1.maven.org/maven2/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>spring-milestones</id>
<name>Spring Milestones</name>
<url>https://repo.spring.io/milestone</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>

2.2、application.properties

spring.application.name=ai-alibaba
server.port=8899
spring.ai.dashscope.api-key=sk-72d9fd311cde487eb948bcd99*******

2.3、

package com.ds.aialibaba.controller;

import com.alibaba.cloud.ai.dashscope.agent.DashScopeAgentOptions;
import com.alibaba.cloud.ai.dashscope.chat.DashScopeChatOptions;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.chat.client.advisor.MessageChatMemoryAdvisor;
import org.springframework.ai.chat.client.advisor.SimpleLoggerAdvisor;
import org.springframework.ai.chat.memory.InMemoryChatMemory;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class Ailbabacontroller {

private static final String DEFAULT_PROMPT = "你是一个博学的智能聊天助手,请根据用户提问提供详细的回答。";
private final ChatClient dashScopeChatClient;


public Ailbabacontroller(ChatClient.Builder chatClientBuilder) {
this.dashScopeChatClient =chatClientBuilder.defaultSystem(DEFAULT_PROMPT)
//实现 chat memory的Advisor
//在使用 chat memory时,需要指定对话ID,以便spring ai处理大下文
.defaultAdvisors(
new MessageChatMemoryAdvisor(new InMemoryChatMemory())
)
//实现 logger的Advisor
.defaultAdvisors(
new SimpleLoggerAdvisor())
//设置 chatClient中chatModel的options参数
.defaultOptions(
DashScopeChatOptions.builder()
.withTopP(0.7)
.build()
)
.build();
}

@GetMapping("/simple/chat")
public String chat(String query) {
return dashScopeChatClient.prompt(query).call().content();
}
}

2.4、

 

 

posted on 2025-07-15 11:06  cn2025  阅读(35)  评论(0)    收藏  举报

导航