阿里通义千问API(Java)使用教程,基于Springboot后端

这篇具有很好参考价值的文章主要介绍了阿里通义千问API(Java)使用教程,基于Springboot后端。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、先申请key

1.1 登录阿里云官网并搜索模型服务灵积,开通key

通义千问接口开发,java,spring boot,开发语言

1.2 点击上图中的控制台并进入

通义千问接口开发,java,spring boot,开发语言

1.3 创建key

通义千问接口开发,java,spring boot,开发语言

二、导入依赖坐标

2.1 导入以下俩个坐标

 <!--阿里巴巴大模型-->
        <!-- https://mvnrepository.com/artifact/com.alibaba/dashscope-sdk-java -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>dashscope-sdk-java</artifactId>
            <exclusions>
                <exclusion>
                    <groupId>org.slf4j</groupId>
                    <artifactId>slf4j-simple</artifactId>
                </exclusion>
            </exclusions>
            <version>2.8.3</version>
        </dependency>
 <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>4.10.0</version>
        </dependency>

2.2 编写Controller层 

这里controller层并未将前端的请求数据传入给api中的参数,有需求的可以自己加一下,这里就使用浏览器测试一下看是否返回数据即可

​
import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.ruoyi.aliyunchat.service.ChatService;
import com.ruoyi.common.annotation.Anonymous;
import com.ruoyi.pojo.Result;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@Slf4j
@RestController
@Anonymous
public class ChatController {

    @Autowired
    private ChatService chatService;

    @RequestMapping("/chat")
    public Result chatAi() throws NoApiKeyException, InputRequiredException {
        GenerationResult generationResult = chatService.chatAi();
        
        return Result.success(generationResult);
    }
}

​

 2.3 Servic层及实现类

接口

import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;

public interface ChatService {
    GenerationResult chatAi() throws NoApiKeyException, InputRequiredException;
}

实现类

import com.alibaba.dashscope.aigc.generation.GenerationResult;
import com.alibaba.dashscope.exception.InputRequiredException;
import com.alibaba.dashscope.exception.NoApiKeyException;
import com.ruoyi.aliyunchat.aliqianwen.QianWenChat;
import com.ruoyi.aliyunchat.service.ChatService;
import org.springframework.stereotype.Service;

@Service
public class ChatServiceImpl implements ChatService {
    @Override
    public GenerationResult chatAi() throws NoApiKeyException, InputRequiredException {
        return  QianWenChat.callWithMessage();
    }
}

接着就是官网上的Demo了,我们这里封装一下

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.MessageManager;
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 lombok.extern.slf4j.Slf4j;

@Slf4j
public class QianWenChat {
    public static GenerationResult callWithMessage() throws NoApiKeyException, ApiException, InputRequiredException
    {
        Constants.apiKey="你的key";
        Generation gen = new Generation();
        MessageManager msgManager = new MessageManager(10);
        Message systemMsg =
                Message.builder().role(Role.SYSTEM.getValue()).content("You are a helpful assistant.").build();
        Message userMsg = Message.builder().role(Role.USER.getValue()).content("请问杭州阿里巴巴工作环境咋样?").build();
        msgManager.add(systemMsg);
        msgManager.add(userMsg);
        QwenParam param =
                QwenParam.builder().model(Generation.Models.QWEN_TURBO).messages(msgManager.get())
                        .resultFormat(QwenParam.ResultFormat.MESSAGE)
                        .topP(0.8)
                        .enableSearch(true)
                        .build();
        GenerationResult result = gen.call(param);
        log.info("千问api回答的话语为:{}",result);
        System.out.println(result);
        return result;
    }
}

三、测试

3.1 在浏览器中输入后端本地,并请求接口,响应如下

通义千问接口开发,java,spring boot,开发语言

 文章来源地址https://www.toymoban.com/news/detail-845584.html

 

 

 

 

 

 

 

 

 

 

到了这里,关于阿里通义千问API(Java)使用教程,基于Springboot后端的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在springboot项目中调用通义千问api多轮对话并实现流式输出

    阿里灵积提供了详细的官方文档 官方文档中提到只需要把每轮对话中返回结果添加到消息管理器中,就可以实现多轮对话。本质上就是将历史对话再次发送给接口。 官方文档中提出使用streamCall()方法就可以实现流式输出,在 ResultCallbackGenerationResult 参数中可以指点每个事件的

    2024年04月12日
    浏览(51)
  • 【通义千问】继ChatGPT爆火后,阿里云的大模型“通义千问”它终于来了

    通义千问 顾名思义,通顺流畅的语句可以回答成千上万的问题。这个名字来源于两个方面: “ 通义 ”意味着该模型具有广泛的知识和普适性,可以理解和回答各种领域的问题。作为一个大型预训练语言模型,“通义千问”在训练过程中学习了大量的文本数据,从而具备了跨

    2023年04月13日
    浏览(76)
  • 【文心一言 vs. 通义千文】一言对千问:自百度之后,阿里终于还是出手了——通义千问

    https://tongyi.aliyun.com/ 通义千问 https://tongyi.aliyun.com/ 目录 通义千问 :  达摩院 GPT-30B 模型复现 GPT-3 模型介绍 GPT3中文30B参数量文本生成模型 模型描述 期望模型使用方式以及适用范围 如何使用 模型局限性以及可能的偏差 训练数据介绍 模型训练流程 预处理 训练 推理加速 数

    2024年02月09日
    浏览(55)
  • 阿里入局,通义千问备受期待

    继百度文心一言发布三周之后,4月7日阿里通义大模型终于推出通义千问,阿里正式加入ChatGPT战局。下午市场一片大热,对于深耕NLP多年的阿里,大家有足够的期待。 “你好,我叫通义千问。初次见面,请多指教。”4月7日下午,阿里大模型“通义千问”在阿里云官方微博以

    2023年04月16日
    浏览(48)
  • 阿里云“通义千问”开源,可免费商用

    我是卢松松,点点上面的头像,欢迎关注我哦! 阿里云成为国内首个加入大模型开源行列的大型科技企业。就在昨天,阿里云公开表态,把自家的通义千问大模型开源。 阿里云把通用70亿参数模型,包括Qwen-7B和对话模型Qwen-7B-Chat这两款大模型产品给开源了。需要注意的是,

    2024年02月13日
    浏览(44)
  • 阿里版ChatGPT——通义千问,开箱初体验

    所有行业、所有应用、所有服务都值得基于新型人工智能技术重做一遍,在带来创造性客户体验的同时,生产范式、工作范式、生活范式也将发生变化。——阿里集团董事会主席兼CEO 张勇 2023阿里云峰会上,通义千问大语言模型对外发布,宣称阿里所有App,包括天猫、淘宝、

    2024年02月02日
    浏览(49)
  • 阿里版ChatGPT:通义千问突然上线

    我是卢松松,点点上面的头像,欢迎关注我哦! 4月7日,阿里版的ChatGPT:通义千问突然上线了,由达摩院开发,目前开放预约,但仅面向企业。官网显示通义千问是一个专门响应人类指令的大模型,是效率助手,也是点子生成机。 阿里云和达摩院,一个专攻算力一个擅长A

    2023年04月09日
    浏览(44)
  • 【分享】阿里版ChatGPT—通义千问(初体验)

    哈喽,大家好,我是木易巷~ 在上个月4月7号,木易巷开始申请阿里云大模型开始邀请测试「通义千问」,到今天早上,木易巷收到了申请通过的短信。 官网地址:tongyi.aliyun.com 迫不及待去测试了一下,效果还可以,中规中矩。 可以轻松地将结构化数据以Markdown格式输出,并

    2024年02月05日
    浏览(54)
  • 阿里云通义千问官网上线了(阿里版ChatGPT)

    阿里版ChatGPT的通义千问上线了,官网:https://tongyi.aliyun.com/ 阿里云的二级域名,你拿到邀请码了吗?  阿里云通义千问邀请码 阿里云通义千问大模型能力测试体验,人工智能语言大模型,还没拿到邀请码的同学抓紧了!  

    2024年02月11日
    浏览(47)
  • 通义千问,阿里版ChatGPT,拿到邀请码了

    大家好,我是章北海mlpy 通义千问是阿里巴巴推出的一个大型预训练模型,是达摩院自主研发的超大规模语言模型,能够回答问题、创作文字,还能表达观点、撰写代码。 昨天中午,阿里云通过官方微信公众号对旗下的超大规模语言模型通义千问进行官宣,并面向企业开始了

    2023年04月19日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包