From 3d3fa2c75ac3ed9439b94ae2bdd034403839af34 Mon Sep 17 00:00:00 2001
From: Administrator <15274802129@163.com>
Date: Thu, 30 Oct 2025 10:12:43 +0800
Subject: [PATCH] feat(ai): 添加上下文生成工作流功能
---
src/main/java/cc/mrbird/febs/mall/controller/HSController.java | 121 +++++++++++++++++++++++++++++-----------
1 files changed, 88 insertions(+), 33 deletions(-)
diff --git a/src/main/java/cc/mrbird/febs/mall/controller/HSController.java b/src/main/java/cc/mrbird/febs/mall/controller/HSController.java
index 486182f..638717a 100644
--- a/src/main/java/cc/mrbird/febs/mall/controller/HSController.java
+++ b/src/main/java/cc/mrbird/febs/mall/controller/HSController.java
@@ -18,7 +18,7 @@
// 从环境变量中获取您的Key鉴权。此为默认方式,您可根据需要进行修改
private static String ak = "AKLTZTQxZjMyZTUxMWJmNDEyNDkzNWExOGQ3ODllNzhhNmQ";
private static String sk = "TmpFeE1qZ3haREExTW1JeE5HRTBZVGc1WlRRNVlqWXpORGd5TWpsak5HWQ==";
- private static String ep_id = "ep-20250724165858-g5rwk";
+ private static String ep_id = "ep-20250728114932-429wg";
// 此为默认路径,您可根据业务所在地域进行配置
static String baseUrl = "https://ark.cn-beijing.volces.com/api/v3";
static ConnectionPool connectionPool = new ConnectionPool(5, 1, TimeUnit.SECONDS);
@@ -26,66 +26,121 @@
static ArkService service = ArkService.builder().dispatcher(dispatcher).connectionPool(connectionPool).baseUrl(baseUrl).ak(ak).sk(sk).build();
public static void main(String[] args) {
- System.out.println("\n----- standard request -----");
// 2. 构建对话历史(AI提问→用户回答)
-// List<ChatMessage> messages = Arrays.asList(
-// // System消息:定义AI角色和行为
-// ChatMessage.builder()
-// .role(ChatMessageRole.SYSTEM)
-// .content("你是同事相处顾问,任务流程:\n1) 先提出一个关于团队协作的问题\n2) 用户回答后,分析回答的不足\n3) 提供具体的改进建议和示例")
-// .build(),
-// // Assistant消息:AI的初始问题
-// ChatMessage.builder()
-// .role(ChatMessageRole.ASSISTANT)
-// .content("组员成为了销冠,组长的你该如何表达自己的称赞,同时给其他组员加油?")
-// .build(),
-// // User消息:用户的回答
-// ChatMessage.builder()
-// .role(ChatMessageRole.USER)
-// .content("干的漂亮。")
-// .build()
-// );
List<ChatMessage> messages = Arrays.asList(
// System消息:定义AI角色和行为
ChatMessage.builder()
.role(ChatMessageRole.SYSTEM)
- .content("\"content\": \"###\n" +
- "假如你是一位专业的彩票数据分析师,你将根据双色球历史开奖记录相关信息,来解决回答关于双色球历史开奖结果相关问题的任务。根据以下规则一步步执行:\n" +
- "1. 回答问题时需提供准确的红球号码。\n" +
- "2. 回答问题时需提供准确的蓝球号码。\n" +
- "3. 回答问题时需提供准确的开奖日期。\n" +
+ .content("###\n" +
+ "假如你是一位资深的加密货币分析师兼新闻资讯专家,你将根据用户提出的相关问题,来解决回答关于2025年比特币价格和新闻的问题。根据以下规则一步步执行:\n" +
+ "1. 依据专业知识和行业动态对2025年比特币价格进行分析和解答。\n" +
+ "2. 提供可靠来源的关于2025年比特币相关新闻信息。\n" +
"\n" +
"参考例子:\n" +
"无\n" +
"\n" +
"请回答问题:\n" +
- "关于双色球历史开奖结果的问题\n" +
+ "问题:XXX\n" +
"输出:\n" +
"\n" +
"要求:\n" +
- "1 输出包含准确的红球号码、蓝球号码和开奖日期。\n" +
- "2 表述清晰准确。\n" +
+ "1 以清晰、准确、专业的语言回答问题。\n" +
+ "2 提供相关观点和信息要有一定依据。\n" +
"###")
.build(),
- // Assistant消息:AI的初始问题
// ChatMessage.builder()
-// .role(ChatMessageRole.ASSISTANT)
-// .content("组员成为了销冠,组长的你该如何表达自己的称赞,同时给其他组员加油?")
+// .role(ChatMessageRole.SYSTEM)
+// .content("你是人工智能助手")
// .build(),
+ // Assistant消息:AI的初始问题
+ ChatMessage.builder()
+ .role(ChatMessageRole.ASSISTANT)
+ .content("2025年2月18日比特币收盘价为64300.02美元。")
+ .build(),
// User消息:用户的回答
ChatMessage.builder()
.role(ChatMessageRole.USER)
- .content("第2025001期双色球开奖结果是什么?")
+ .content("香港《稳定币条例》带来的影响")
.build()
);
+// // 2. 构建对话历史(AI提问→用户回答)
+// List<ChatMessage> messages = Arrays.asList(
+// // System消息:定义AI角色和行为
+// ChatMessage.builder()
+// .role(ChatMessageRole.SYSTEM)
+// .content("###\n" +
+// "假如你是一位长沙地铁站点信息专家,你将根据用户提出的问题,来解决回答关于长沙地铁站点相关问题的任务。根据以下规则一步步执行:\n" +
+// "1. 确保回答基于长沙地铁站点的真实信息。\n" +
+// "2. 清晰准确地阐述与问题相关的站点内容。\n" +
+// "\n" +
+// "参考例子:\n" +
+// "无\n" +
+// "\n" +
+// "请回答问题:\n" +
+// "问题:XXX\n" +
+// "输出:\n" +
+// "\n" +
+// "要求:\n" +
+// "1 以清晰准确的语言回答问题。\n" +
+// "2 提供的信息需与长沙地铁站点相关。\n" +
+// "###")
+// .build(),
+//// ChatMessage.builder()
+//// .role(ChatMessageRole.SYSTEM)
+//// .content("你是人工智能助手")
+//// .build(),
+// // Assistant消息:AI的初始问题
+// ChatMessage.builder()
+// .role(ChatMessageRole.ASSISTANT)
+// .content("站点周边有安保巡逻,夜间出行请注意安全")
+// .build(),
+// // User消息:用户的回答
+// ChatMessage.builder()
+// .role(ChatMessageRole.USER)
+// .content("万家丽广场站有无障碍设施吗?")
+// .build()
+// );
+// List<ChatMessage> messages = Arrays.asList(
+// // System消息:定义AI角色和行为
+// ChatMessage.builder()
+// .role(ChatMessageRole.SYSTEM)
+// .content("\"content\": \"###\n" +
+// "假如你是一位专业的彩票数据分析师,你将根据双色球历史开奖记录相关信息,来解决回答关于双色球历史开奖结果相关问题的任务。根据以下规则一步步执行:\n" +
+// "1. 回答问题时需提供准确的红球号码。\n" +
+// "2. 回答问题时需提供准确的蓝球号码。\n" +
+// "3. 回答问题时需提供准确的开奖日期。\n" +
+// "\n" +
+// "参考例子:\n" +
+// "无\n" +
+// "\n" +
+// "请回答问题:\n" +
+// "关于双色球历史开奖结果的问题\n" +
+// "输出:\n" +
+// "\n" +
+// "要求:\n" +
+// "1 输出包含准确的红球号码、蓝球号码和开奖日期。\n" +
+// "2 表述清晰准确。\n" +
+// "###")
+// .build(),
+// // Assistant消息:AI的初始问题
+//// ChatMessage.builder()
+//// .role(ChatMessageRole.ASSISTANT)
+//// .content("组员成为了销冠,组长的你该如何表达自己的称赞,同时给其他组员加油?")
+//// .build(),
+// // User消息:用户的回答
+// ChatMessage.builder()
+// .role(ChatMessageRole.USER)
+// .content("第2025001期双色球开奖结果是什么?")
+// .build()
+// );
ChatCompletionRequest chatCompletionRequest = ChatCompletionRequest.builder()
// 指定您创建的方舟推理接入点 ID,此处已帮您修改为您的推理接入点 ID
.model(ep_id)
.messages(messages)
.build();
// 4. 发送请求并处理响应
-// System.out.println("\n----- standard request -----");
-// service.createChatCompletion(chatCompletionRequest).getChoices().forEach(choice -> System.out.println(choice.getMessage().getContent()));
+ System.out.println("\n----- standard request -----");
+ service.createChatCompletion(chatCompletionRequest).getChoices().forEach(choice -> System.out.println(choice.getMessage().getContent()));
System.out.println("\n----- streaming request -----");
service.streamChatCompletion(chatCompletionRequest)
--
Gitblit v1.9.1