You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

69 lines
3.3 KiB

5 months ago
package Tools.TestUnit;
5 months ago
5 months ago
import java.util.Arrays;
import java.lang.System;
5 months ago
5 months ago
import cn.hutool.core.io.FileUtil;
5 months ago
import com.alibaba.dashscope.aigc.generation.Generation;
import com.alibaba.dashscope.aigc.generation.GenerationParam;
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.common.Message;
import com.alibaba.dashscope.common.Role;
import com.alibaba.dashscope.exception.ApiException;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
public class TestDeepSeek {
5 months ago
//两个版本
public static final String R1 = "deepseek-r1";
public static final String V3 = "deepseek-v3";
//接入的API KEY
public static final String APIKEY = "sk-01d13a39e09844038322108ecdbd1bbc";
5 months ago
5 months ago
/**
*
*
* @return
*/
public static String getSystemPrompt() {
5 months ago
String md = "D:\\dsWork\\QingLong\\PptGenerator\\md-file\\readme\\default.md";
5 months ago
return FileUtil.readUtf8String(md);
}
5 months ago
public static GenerationResult callWithMessage() throws ApiException, NoApiKeyException, InputRequiredException {
Generation gen = new Generation();
5 months ago
String systemPrompt ="返回的教案内容请严格按照指定的markdown语法格式返回用来生成ppt。需要注意:1、最开头的Title:..,Author: ... Date:... 不能省略掉有用处。2、第一级用#,第二级用##,第二级是独立的PPT一个页每页中的数据必须有> 开头,如果是页面中的条目,必须用 - 开头,结果不要返回图片!请仔细阅读参考格式:"+getSystemPrompt();
5 months ago
Message systemMsg = Message.builder()
.role(Role.SYSTEM.getValue())
5 months ago
//.content("You are a helpful assistant.")
.content(systemPrompt)
5 months ago
.build();
Message userMsg = Message.builder()
.role(Role.USER.getValue())
5 months ago
.content("请帮我生成一个小学数学内角和的教案,按标准格式输出。")
5 months ago
.build();
GenerationParam param = GenerationParam.builder()
// 若没有配置环境变量请用百炼API Key将下行替换为.apiKey("sk-xxx")
5 months ago
.apiKey(APIKEY)
5 months ago
// 模型列表https://help.aliyun.com/zh/model-studio/getting-started/models
5 months ago
.model(R1)
5 months ago
.messages(Arrays.asList(systemMsg, userMsg))
.resultFormat(GenerationParam.ResultFormat.MESSAGE)
.build();
return gen.call(param);
}
5 months ago
5 months ago
public static void main(String[] args) {
try {
GenerationResult result = callWithMessage();
5 months ago
String mdContent=result.getOutput().getChoices().getFirst().getMessage().getContent();
System.out.println(mdContent);
FileUtil.writeUtf8String(mdContent,"D:\\dsWork\\ppt-generator-master\\md-file\\readme\\4.md");
5 months ago
} catch (ApiException | NoApiKeyException | InputRequiredException e) {
5 months ago
System.err.println("错误信息:" + e.getMessage());
5 months ago
System.out.println("请参考文档https://help.aliyun.com/zh/model-studio/developer-reference/error-code");
}
System.exit(0);
}
}