|
|
package com.dsideal.base.Test;
|
|
|
// Copyright (c) Alibaba, Inc. and its affiliates.
|
|
|
|
|
|
import java.util.Arrays;
|
|
|
|
|
|
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;
|
|
|
|
|
|
|
|
|
public class Main {
|
|
|
|
|
|
/**
|
|
|
* 调用通义千问
|
|
|
* @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 NoApiKeyException, InputRequiredException {
|
|
|
String question = "我将给你一段文字,帮我缩短到30字以内,我给出一个范例:红河人口负增长加剧,城镇人口先增后减,乡村人口剧减 ,后面就是原始文字:";
|
|
|
question += "2012-2020年,古城区总人口呈持续大幅增长趋势,年增长率约为3.0%。 2020年末至2022年,受新冠疫情、经济下滑等不利因素影响,总人口增长逐年下降,从28.7万人下降至26.7万人,减少2.0万人。未来人口预测结果显示,2023年起,全区人口总数呈逐年下降趋势,至2035年全区总人口仅为19.5万人(图1)。";
|
|
|
|
|
|
System.out.println(callTongYiQianWen(question));
|
|
|
}
|
|
|
} |