当前位置: 首页 > article >正文

IntelliJ IDEA快速接入LLMs大模型API

IntelliJ IDEA快速接入LLMs大模型API

时隔很久没写文章,这次记录下自己在使用Spring AI来接入大模型的方式。由于2024年7月之后OpenAI,Google gemini很多大公司开始了限制中国区访问,这也让我在实验过程中浪费了很多时间。本次选用了百度文心一言的千帆大模型进行实验。对于简单的测试效果速度还是可以接受的,同时最重要的是,可以调通!

一、创建个人API Key

1.1 登录智能云

https://cloud.baidu.com/?from=console
在这里插入图片描述

1.2 搜索“千帆大模型服务与开发平台ModelBuilder”

在这里插入图片描述

1.3 选择应用接入 -》 创建应用 来获得我们的

在这里插入图片描述
获取access token方式,将如下的连接替换为自己的API Key与Secret Key,并在浏览器中打开
https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=[API_Key]&client_secret=[Secret_Key]
其中的access token就是我们需要的,我们可以将其配置在自己的spring boot项目中。

二、代码示例

我们通过创建自己的spring boot 项目进行测试
spring boot 版本控制在3.0以上

导入依赖

		<dependency>
			<groupId>cn.hutool</groupId>
			<artifactId>hutool-all</artifactId>
			<version>5.8.25</version>
		</dependency>
	public static void main(String[] args) {
		String url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/completions";
		String accessToken = "自己的access token";

		HashMap<String, String> msg = new HashMap<>();
		msg.put("role", "user");
		msg.put("content", "你是谁?");

		ArrayList<HashMap> messages = new ArrayList<>();
		messages.add(msg);

		HashMap<String, Object> requestBody = new HashMap<>();
		requestBody.put("messages", messages);

		String response = HttpUtil.post(url + "?access_token=" + accessToken, JSONUtil.toJsonStr(requestBody));

		System.out.println(response);
	}

Output

{
    "id": "as-acbg25ytgj",
    "object": "chat.completion",
    "created": ,
    "result": "您好,我是文心一言,英文名是ERNIE Bot。我能够与人对话互动,回答问题,协助创作,高效便捷地帮助人们获取信息、知识和灵感。",
    "is_truncated": false,
    "need_clear_history": false,
    "usage": {
        "prompt_tokens": 12,
        "completion_tokens": 32,
        "total_tokens": 317
    }
}

Tips:新用户应该是有个20元免费券可以使用哦,如果超过了,就要自己付费了,大家且用且珍惜。


http://www.kler.cn/a/388157.html

相关文章:

  • 数据分析那些事儿——关于A/B实验
  • 第16章 SELECT 底层执行原理
  • 鸿蒙华为商城APP案例
  • 手动实现h5移动端点击全屏按钮横屏展示图片,左右滑动切换,处理页面会随着手指滑动问题
  • Kubernetes的基本构建块和最小可调度单元pod-0
  • 全面解析 Python typing模块与静态类型注解:从基础到高级
  • GISBox VS ArcGIS:分别适用于大型和小型项目的两款GIS软件
  • Gen-RecSys——一个通过生成和大规模语言模型发展起来的推荐系统
  • 钉钉调试微应用整理2
  • Jenkins 构建时候提示超时错误被终止
  • JVM知识点大全(未完...)
  • 【自用】时序数据库、时序数据库,IOTDB官方文档笔记
  • 【划分型 DP】力扣139. 单词拆分
  • Unity 实现数字垂直滚动效果
  • 高性能分布式缓存Redis-高级应用篇章
  • HTML的文本样式(二)
  • 阿里 Sentinel
  • 【C++】新手入门指南
  • core-js 解决浏览器兼容性问题的工具之一
  • Rust: 利用 chrono 库实现日期和字符串互相转换
  • Spring学习笔记(二)
  • scrapy爬取中信证券销售金融产品信息
  • git tag
  • PCIE板卡:基于国产化双FPGA主板的高性能解决方案
  • HTTP Cookie深入解析:Web会话追踪的秘密
  • 平安科技(外包)面试分享