|
|
|
@ -0,0 +1,75 @@
|
|
|
|
|
package com.dsideal.base.Tools.FillData.Area;
|
|
|
|
|
|
|
|
|
|
import com.alibaba.dashscope.aigc.generation.Generation;
|
|
|
|
|
import com.alibaba.dashscope.aigc.generation.GenerationResult;
|
|
|
|
|
import com.alibaba.dashscope.aigc.generation.models.QwenParam;
|
|
|
|
|
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;
|
|
|
|
|
import com.alibaba.dashscope.utils.Constants;
|
|
|
|
|
import org.dom4j.DocumentException;
|
|
|
|
|
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.util.Arrays;
|
|
|
|
|
|
|
|
|
|
import org.apache.poi.xwpf.usermodel.XWPFDocument;
|
|
|
|
|
import org.apache.poi.xwpf.usermodel.XWPFParagraph;
|
|
|
|
|
import org.apache.poi.xwpf.usermodel.XWPFRun;
|
|
|
|
|
|
|
|
|
|
import java.io.FileInputStream;
|
|
|
|
|
import java.io.IOException;
|
|
|
|
|
import java.io.InputStream;
|
|
|
|
|
import java.util.List;
|
|
|
|
|
|
|
|
|
|
public class A15 {
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
|
|
* 调用通义千问
|
|
|
|
|
*
|
|
|
|
|
* @param question
|
|
|
|
|
* @return
|
|
|
|
|
* @throws NoApiKeyException
|
|
|
|
|
* @throws ApiException
|
|
|
|
|
* @throws InputRequiredException
|
|
|
|
|
*/
|
|
|
|
|
public static String callTongYiQianWen(String question)
|
|
|
|
|
throws NoApiKeyException, ApiException, InputRequiredException {
|
|
|
|
|
//使用驿来特的api key
|
|
|
|
|
Constants.apiKey = "sk-f6da0c787eff4b0389e4ad03a35a911f";
|
|
|
|
|
Generation gen = new Generation();
|
|
|
|
|
Message userMsg = Message.builder().role(Role.USER.getValue()).content(question).build();
|
|
|
|
|
QwenParam param =
|
|
|
|
|
QwenParam.builder().model("qwen-long").messages(Arrays.asList(userMsg))
|
|
|
|
|
.resultFormat(QwenParam.ResultFormat.MESSAGE).topP(0.8).build();
|
|
|
|
|
GenerationResult result = gen.call(param);
|
|
|
|
|
return result.getOutput().getChoices().getFirst().getMessage().getContent();
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public static void main(String[] args) throws IOException, DocumentException, NoApiKeyException, InputRequiredException {
|
|
|
|
|
String filePath = "D:\\dsWork\\YunNanDsBase\\Doc\\县区研究报告\\保山市\\昌宁县人口变化及其对教育的影响.docx";
|
|
|
|
|
//使用POI读取上面word文档的所有文字信息
|
|
|
|
|
String content = "";
|
|
|
|
|
InputStream inputStream = new FileInputStream(filePath);
|
|
|
|
|
XWPFDocument document = new XWPFDocument(inputStream);
|
|
|
|
|
List<XWPFParagraph> paragraphs = document.getParagraphs();
|
|
|
|
|
|
|
|
|
|
for (XWPFParagraph paragraph : paragraphs) {
|
|
|
|
|
List<XWPFRun> runs = paragraph.getRuns();
|
|
|
|
|
for (XWPFRun run : runs) {
|
|
|
|
|
String text = run.getText(0);
|
|
|
|
|
if (text != null) {
|
|
|
|
|
content = content + text;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
String question = "我将给你提供一大段文字,帮我总结下学前教育幼儿入园情况,划分两个阶段:(1)学前教育过去几年入园情况 (2)学前教育幼儿入园未来发展预测。语言尽量精简。";
|
|
|
|
|
question += "示例: 1. 与2022年相比,寻甸县未来几年,学前教育幼儿入园人数增长不大,至2035年预计在6800左右,仅增加几百人";
|
|
|
|
|
question += "2. 未来镇区幼儿入园人数将逐年增加,而乡村幼儿入园人数将明显减少。";
|
|
|
|
|
question += "下面是文字内容:";
|
|
|
|
|
question += content;
|
|
|
|
|
System.out.println(callTongYiQianWen(question));
|
|
|
|
|
}
|
|
|
|
|
}
|