Java调用星火AI

zhj1695369 2024-10-23 13:01:14 阅读 83

创建一个星火账号,新建ai模型,记下APPID、APISecret、APIKey

添加依赖

<!--修改version为最新稳定版-->

<dependency>

  <groupId>io.github.briqt</groupId>

  <artifactId>xunfei-spark4j</artifactId>

  <version>1.3.0</version>

</dependency>

编写配置类(这里通过读取配置类信息的方式写入参数,也可直接编写字符串)

@Configuration

@Data

@ConfigurationProperties(prefix = "xun-fei.client")

public class XingHuoConfig {

   private String appId;

   private String apiSecret;

   private String apiKey;

   @Bean

   public SparkClient sparkClient(){

       SparkClient sparkClient=new SparkClient();

       sparkClient.apiKey=apiKey;

       sparkClient.apiSecret=apiSecret;

       sparkClient.appid=appId;

       return sparkClient;

  }

}

调用ai

@Slf4j

public class AiManager {

   @Resource

   private SparkClient sparkClient;

   /**

    * 调用ai--参数为向ai提问的内容

    */

   public String doChat(String content) {

           // 构造请求

           SparkRequest sparkRequest = SparkRequest.builder()

                   // 消息列表

                  .messages(messages)

                   // 模型回答的tokens的最大长度,非必传,取值为[1,4096],默认为2048

                  .maxTokens(2048)

                   // 核采样阈值。用于决定结果随机性,取值越高随机性越强即相同的问题得到的不同答案的可能性越高 非必传,取值为[0,1],默认为0.5

                  .temperature(0.2)

                   // 指定请求版本,默认使用最新2.0版本

                  .apiVersion(SparkApiVersion.V3_5)

                  .build();

           // 同步调用

       

           SparkSyncChatResponse chatResponse = sparkClient.chatSync(sparkRequest);

           String responseContent = chatResponse.getContent();

           log.info("星火 AI 返回的结果 {}", responseContent);

           return responseContent;

      }

  }



声明

本文内容仅代表作者观点,或转载于其他网站,本站不以此文作为商业用途
如有涉及侵权,请联系本站进行删除
转载本站原创文章,请注明来源及作者。