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

Happy_EveryDay

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

sb-deepseek-chatModel聊天 提示词Prompt20250713

参考:  sb-deepseek20250703

 

1、

package com.ds.aichat.controller;

import org.springframework.ai.chat.messages.Message;
import org.springframework.ai.chat.messages.UserMessage;
import org.springframework.ai.chat.model.ChatModel;
import org.springframework.ai.chat.model.ChatResponse;
import org.springframework.ai.chat.model.Generation;
import org.springframework.ai.chat.prompt.Prompt;
import org.springframework.ai.chat.prompt.SystemPromptTemplate;
import org.springframework.ai.openai.OpenAiChatOptions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;

@RestController
public class ChatModelController {
@Autowired
private ChatModel chatModel;

//提示词操作
//name:名字
//voice:习惯
@GetMapping("/prompt")
public String prompt01(@RequestParam("name") String name,@RequestParam("voice") String voice) {
//设置用户输入的信息
String userText = """
给推荐北京的至少三种美食
""";
UserMessage userMessage = new UserMessage(userText);
//设置系统提示信息
String systemText = """
你是一个美食咨询的助手,可以帮助人们查询美食信息。
你的名字是{name},
你应该用你的名字和{voice}的饮食习惯回复用户的请求。
""";

//使用Prompt Template 模板
SystemPromptTemplate systemPromptTemplate = new SystemPromptTemplate(systemText);
//替换模板中的占位符
Message systemMessage = systemPromptTemplate.createMessage(Map.of(
"name",name,
"voice",voice
));
//创建Prompt
Prompt prompt = new Prompt(List.of(systemMessage, userMessage));
//调用模型ChatModel方法
ChatResponse chatResponse=chatModel.call(prompt);
List<Generation> results=chatResponse.getResults();
return results.stream().map(x->x.getOutput().getText())
.collect(Collectors.joining(""));
}





@GetMapping("/chatModel01")
public String chatModel01(@RequestParam("msg") String msg) {
String result = chatModel.call(msg);
return result;
}

@GetMapping("/chatModel02")
public String chatModel02(@RequestParam("msg") String msg) {
ChatResponse chatResponse=chatModel.call(
new Prompt(
msg,
OpenAiChatOptions.builder()
.model("deepseek-chat")
.temperature(0.8)
.build()
)

);
String content = chatResponse.getResult().getOutput().getText();
return content;
}
}


2、

 

 

 

 



posted on 2025-07-13 16:29  cn2025  阅读(19)  评论(0)    收藏  举报

导航