JAVA开发AI应用(三):调用大模型实现多模态聊天

 以下代码基于JBolt AI库实现

1. 引入JBoltAI库

2. 将可用的大模型作为资源,引入

ResourceCenter.registerAI("id-chatgpt1", AIModel.CHATGPT_4, "ak-******")
    //设置资源的代理服务
    .setProxy(new Proxy(Proxy.Type.HTTP, new InetSocketAddress("127.0.0.1", 19181)));

支持多模态的大模型目前不是很多,这里我们以openai的chatgpt4为例。JBoltAI中,CHATGPT_4默认使用的型号是`gpt-4o`,它是支持图片输入的。

3. 调用聊天接口,并传入一张图片的url

JBoltAI.chat().prompt("请告诉我这是一张关于什么的图")
    .imgs("https://assets.d2danao.com/temp/R.jpg")
    .onSuccess((e,msg) -> {
        System.out.print( msg.getContent());
    }).onComplete(e -> {
        System.out.println("事件结束,"+ JSON.toJSONString(e));
    }).publish().await();

以下是控制台输出:

在以上代码中,新增了两个新用法:

1. 为资源设置代理地址。类似chatgpt的一些海外大模型,是无法直接访问接口的,其中一种解决方案就是使用代理,这时候就可以通过setProxy来实现。

2. 聊天事件的生命周期,会触发多个回调。其中一个回调就是onComplete,类似java代码中的try catch finally中的finally,这个 回调是一定会触发的,且只触发一次。

  • 11
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值