使用阿里巴巴dashscope-sdk-java时,maven报错

这篇具有很好参考价值的文章主要介绍了使用阿里巴巴dashscope-sdk-java时,maven报错。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

今天尝试使用java调用通义千问API,结果在pom.xml中引入dashscope-sdk-java后,直接所有dependency爆红,然后看了网上的方法,把所有dependency删掉,刷新,再重新粘上,再刷新,然后发现只有一个dashscope-sdk-java爆红,于是运行idea,采用了idea里提供的建议,重新下载dashscope-sdk-java,成功解决。
<!--阿里巴巴大模型-->
        <!-- 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>

使用的是2.8.3版本,里面为什么要加一个exclusion,是因为在解决之后运行时又报错,查了一下是和slf4j这个包冲突,所以把它排除掉,具体参考:java调用通义千问API-CSDN博客

然后从官网的文档里面找了一个代码测试:

// Copyright (c) Alibaba, Inc. and its affiliates.

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;


public class MyTest {
    public static void callWithMessage()
            throws NoApiKeyException, ApiException, InputRequiredException {
        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);
        System.out.println(result);
    }


    public static void main(String[] args){
        try {
            Constants.apiKey="你自己的API-KEY";
            callWithMessage();
        } catch (ApiException | NoApiKeyException | InputRequiredException e) {
            System.out.println(e.getMessage());
        }
        System.exit(0);
    }
}

结果本以为没什么问题了,运行之后又报错:

Exception in thread "main" java.lang.NoSuchMethodError: okhttp3.RequestBody.create(Ljava/lang/String;Lokhttp3/MediaType;)Lokhttp3/RequestBody;
	at com.alibaba.dashscope.protocol.okhttp.OkHttpHttpClient.buildRequest(OkHttpHttpClient.java:152)
	at com.alibaba.dashscope.protocol.okhttp.OkHttpHttpClient.send(OkHttpHttpClient.java:180)
	at com.alibaba.dashscope.api.SynchronizeHalfDuplexApi.call(SynchronizeHalfDuplexApi.java:55)
	at com.alibaba.dashscope.aigc.generation.Generation.call(Generation.java:86)
	at com.example.hjwoyu.MyTest.callWithMessage(MyTest.java:35)
	at com.example.hjwoyu.MyTest.main(MyTest.java:43)

于是引入okhttp包,结果依然报错。

看了pom.xml,里面虽然没有爆红,但是有omitted for conflict with,应该还是版本不兼容问题,于是我换上最新的okhttp

<!--ok http client-->
        <dependency>
            <groupId>com.squareup.okhttp3</groupId>
            <artifactId>okhttp</artifactId>
            <version>4.10.0</version>
        </dependency>

刷新,然后运行代码,这次没有报错了,成功解决!文章来源地址https://www.toymoban.com/news/detail-858135.html

到了这里,关于使用阿里巴巴dashscope-sdk-java时,maven报错的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 树莓派4B(Raspberry Pi 4B)使用docker搭建阿里巴巴sentinel服务

    由于国内访问不了docker hub,而国内镜像仓库又没有适配树莓派ARM架构的sentinel镜像,所以我们只能退而求其次——自己动手构建镜像。本文基于Ubuntu,Java8,sentinel-dashboard-1.8.7讲解 下载sentinel-dashboard-1.8.7.jar 到GitHub(Releases · alibaba/Sentinel (github.com))下载 下载jdk-8u391-linux-aar

    2024年02月20日
    浏览(34)
  • IDEA必备插件、阿里巴巴规范插件(代码格式化,注释模板化)的安装及使用和快捷键设置

    英文直接翻译就是插件的作用,大部分不用额外配置,Adapter for Eclipse Code Formatter是阿里格式插件,下面配置它。 格式插件模板下载地址:或者到文末有 eclipse-codestyle.xml复制保存即可 https://github.com/alibaba/p3c/tree/master/p3c-formatter https://github.com/alibaba/p3c/tree/master/p3c-formatter 稍后配

    2024年01月22日
    浏览(44)
  • 阿里巴巴集团

    阿里巴巴集团控股有限公司 (简称:阿里巴巴集团) 是马云带领下的18位创始人于1999年在浙江省杭州市创立的公司。 [272]  阿里巴巴集团经营多项业务,另外也从关联公司的业务和服务中取得经营商业生态系统上的支援。业务和关联公司的业务包括:淘宝网、天猫、聚划算

    2024年02月03日
    浏览(51)
  • 溯源阿里巴巴的中台架构

    明朝可以说是中国封建王朝中最后一个由汉人统治的王朝,就算是最后清王朝也是不断的学习汉人的治国方略,但是学习最多的当然是明朝。 其实阿里巴巴的中台战略其实和明朝的历史还是蛮像的,这里小编就和大家好好的探讨一下。 今天先来从明朝的治国方略中去解析架

    2024年01月22日
    浏览(55)
  • Java阿里巴巴代码规范

    想学习架构师构建流程请跳转:Java架构师系统架构设计 我们介绍了让代码规范的方案,下面我们就来说一下阿里的代码规范文档 1.1.1 反例 这种操作很容易产生难以排查的NPE异常 1.1.2 正例 入参以及出参,和参数传递类型是一致的 SimpleDateFormat 是线程不安全的类,一般不要定

    2024年02月10日
    浏览(54)
  • 微信小程序使用阿里巴巴iconfont,报错Failed to load font http://at.alicdn.com/t/..........

    介绍 上篇文章,介绍了,在微信小程序里导入并使用阿里巴巴iconfont图标;但是在页面里使用后,可以看到后台日志有打印错误信息,具体报错如下: 分析 报这个错,是因为项目里使用了 iconfont 字体图标,但是这个链接在小程序后台没有备案在后台配置一下白名单即可。具

    2024年02月03日
    浏览(41)
  • 阿里巴巴今年计划招聘15000人

    据媒体报道,阿里巴巴集团宣布将在2023年招聘15000名新员工,其中包括3000名校招人才。 这一消息的发布,也为最近关于淘宝天猫、阿里云、菜鸟、本地生活等业务裁员的谣言敲响了谣言的警钟。 阿里巴巴官微表示,“近日,关于淘宝天猫、阿里云、菜鸟、本地生活各个业务

    2024年02月06日
    浏览(47)
  • uniapp离线引入阿里巴巴图标

    阿里巴巴图标地址

    2024年02月16日
    浏览(45)
  • 钉钉小程序引用阿里巴巴图标

    2.打开的界面如图,先建一个iconfont.acss文件,全选浏览器打开的样式代码,复制粘贴进新建的iconfont.acss文件中 3.使用

    2024年02月11日
    浏览(45)
  • 华为OD机考--阿里巴巴黄金箱

    贫如洗的樵夫阿里巴巴在去砍柴的路上,无意中发现了强盗集团的藏宝地,藏宝地有编号从0~N的箱子每个箱子上面贴有一个数字箱子中可能有一个黄金宝箱。 黄金宝箱满足排在它之前的所有箱子数字和等于排在它之后的所有箱子数字之和; 一个箱子左边部分的数字和定义为

    2024年02月14日
    浏览(51)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包