欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Java接入通義千問的簡單方法示例

 更新時間:2024年02月28日 10:36:27   作者:郝先生吖  
? 通義千問是阿里云開發(fā)的大語言模型(Large language Model )LLM,旨在提供廣泛的知識和普適性,可以理解和回答各領(lǐng)域中的問題,這篇文章主要給大家介紹了關(guān)于Java接入通義千問的簡單方法,需要的朋友可以參考下

前言

通義千問是阿里巴巴達(dá)摩院研發(fā)的預(yù)訓(xùn)練語言模型,提供了一系列的API和SDK可以方便地進行接入。本文將介紹如何使用SpringBoot接入通義千問,并實現(xiàn)搜索功能。

引入依賴

首先,我們需要在pom.xml文件中添加以下依賴項:

<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-open-api-core</artifactId>
    <version>4.2.6</version>
</dependency>
<dependency>
    <groupId>com.aliyun</groupId>
    <artifactId>aliyun-open-api-common</artifactId>
    <version>4.2.6</version>
</dependency>

配置API Key與主機名

在application.properties文件中,配置以下內(nèi)容,設(shè)置通義千問的API key和主機名:

aliyun.openapi.endpoint=https://ai.aliyun.com/openapi/v4/appid/[your_app_id]/[your_endpoint]
aliyun.openapi.private_key=your_private_key
aliyun.openapi.host=[your_host]

其中,[your_app_id]和[your_endpoint]分別代表通義千問的應(yīng)用ID和請求端點,需要根據(jù)實際情況進行填寫。

Java代碼調(diào)用

在Controller類中,添加以下方法來調(diào)用通義千問的API:

@RestController
@RequestMapping("/api")
public class MyController {
    @Autowired
    private MyService myService;

    @GetMapping("/search")
    public String search(@RequestParam String query) {
        List<Hello> helloList = myService.search(query);
        String helloString = String.format("{%s}", helloList);
        return helloString;
    }
}

其中,MyService是自定義的服務(wù)類,需要根據(jù)實際情況進行編寫。

在myService類中,添加以下方法來調(diào)用通義千問的API:

public List<Hello> search(String query) {
    String url = "https://ai.aliyun.com/openapi/v4/appid/[your_app_id]/[your_endpoint]?query=" + query;
    List<Hello> helloList = null;
    try {
        URL obj = new URL(url);
        HttpURLConnection con = (HttpURLConnection) obj.openConnection();
        con.setRequestMethod("GET");
        if (con.getResponseCode() != 200) {
            return null;
        }
        BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
        String inputLine;
        StringBuilder response = new StringBuilder();
        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();
        helloList = new Gson().fromJson(response.toString(), new TypeToken<List<Hello>>() {
        }.getType());
    } catch (Exception e) {
        e.printStackTrace();
    }
    return helloList;
}

其中,[your_app_id]和[your_endpoint]分別代表通義千問的應(yīng)用ID和請求端點,需要根據(jù)實際情況進行填寫。

接下來,我們可以在SpringBoot應(yīng)用程序中,啟動HTTP服務(wù)器并打開瀏覽器訪問http://localhost:8080/api/search,即可看到通義千問的搜索結(jié)果。

以上就是一個簡單的通義千問接入示例,具體的實現(xiàn)方式可以根據(jù)實際情況進行調(diào)整和完善。下面是完整的代碼示例:

@Configuration
public class ApplicationConfig {
    @Bean
    public EmbeddedServletContainer servletContainer() {
        TomcatEmbeddedServletContainer container = new TomcatEmbeddedServletContainer();
        container.setPort(8080);
        return container;
    }
    @Bean
    public AnnotationConfigServletWebMvcConfigurer mvcConfigurer() {
        AnnotationConfigServletWebMvcConfigurer c = new AnnotationConfigServletWebMvcConfigurer();
        c.addInterceptors(new LoggingInterceptor());
        return c;
    }
}
@RestController
@RequestMapping("/api")
public class MyController {
    @Autowired
    private MyService myService;

    @GetMapping("/search")
    public String search(@RequestParam String query) {
        List<Hello> helloList = myService.search(query);
        String helloString = String.format("{%s}", helloList);
        return helloString;
    }
}

@Configuration
public class WebMvcConfig implements WebMvcConfigurer {

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(new LoggingInterceptor());
    }

}

在SpringBoot應(yīng)用程序中,啟動HTTP服務(wù)器并打開瀏覽器訪問http://localhost:8080/api/search,即可看到通義千問的搜索結(jié)果。

以上就是一個簡單的通義千問接入示例,具體的實現(xiàn)方式可以根據(jù)實際情況進行調(diào)整和完善。

總結(jié)

到此這篇關(guān)于Java接入通義千問的文章就介紹到這了,更多相關(guān)Java接入通義千問內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring中的@ConfigurationProperties在方法上的使用詳解

    Spring中的@ConfigurationProperties在方法上的使用詳解

    這篇文章主要介紹了Spring中的@ConfigurationProperties在方法上的使用詳解,@ConfigurationProperties應(yīng)該經(jīng)常被使用到,作用在類上的時候,將該類的屬性取值?與配置文件綁定,并生成配置bean對象,放入spring容器中,提供給其他地方使用,需要的朋友可以參考下
    2024-01-01
  • java自定義線程模型處理方法分享

    java自定義線程模型處理方法分享

    本文給大家總結(jié)分享了下個人關(guān)于java處理自定義線程模型的一些經(jīng)驗和處理方法,有需要的小伙伴可以參考下
    2016-08-08
  • Java入門基礎(chǔ)之抽象類與接口

    Java入門基礎(chǔ)之抽象類與接口

    對于面向?qū)ο缶幊虂碚f,抽象是它的一大特征之一,在 Java 中可以通過兩種形式來體現(xiàn)OOP的抽象:接口和抽象類,下面這篇文章主要給大家介紹了關(guān)于Java入門基礎(chǔ)之抽象類與接口的相關(guān)資料,需要的朋友可以參考下
    2022-02-02
  • 排序算法的Java實現(xiàn)全攻略

    排序算法的Java實現(xiàn)全攻略

    這篇文章主要介紹了排序算法的Java實現(xiàn),包括Collections.sort()的使用以及各種經(jīng)典算法的Java代碼實現(xiàn)方法總結(jié),超級推薦!需要的朋友可以參考下
    2015-08-08
  • SpringBoot+Vue+Redis實現(xiàn)單點登錄(一處登錄另一處退出登錄)

    SpringBoot+Vue+Redis實現(xiàn)單點登錄(一處登錄另一處退出登錄)

    小編接到一個需求,需要實現(xiàn)用戶在瀏覽器登錄后,跳轉(zhuǎn)到其他頁面,當(dāng)用戶在其它地方又登錄時,前面用戶登錄的頁面退出登錄,這篇文章主要介紹了SpringBoot+Vue+Redis實現(xiàn)單點登錄,需要的朋友可以參考下
    2019-12-12
  • JAVA中實現(xiàn)原生的 socket 通信機制原理

    JAVA中實現(xiàn)原生的 socket 通信機制原理

    本篇文章主要介紹了JAVA中實現(xiàn)原生的 socket 通信機制原理,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-08-08
  • Springmvc異常映射2種實現(xiàn)方法

    Springmvc異常映射2種實現(xiàn)方法

    這篇文章主要介紹了Springmvc異常映射2種實現(xiàn)方法以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。,需要的朋友可以參考下
    2020-05-05
  • 通過openpyxl讀取excel文件過程解析

    通過openpyxl讀取excel文件過程解析

    這篇文章主要介紹了通過openpyxl讀取excel文件過程解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • Java中枚舉類型的一種使用方式

    Java中枚舉類型的一種使用方式

    這篇文章主要介紹了Java中枚舉類型的一種使用方式,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-08-08
  • MyBatis持久層框架的用法知識小結(jié)

    MyBatis持久層框架的用法知識小結(jié)

    MyBatis 本是apache的一個開源項目iBatis,接下來通過本文給大家介紹MyBatis持久層框架的用法知識小結(jié),非常不錯,具有參考借鑒價值,感興趣的朋友一起學(xué)習(xí)吧
    2016-07-07

最新評論