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以上

导入依赖

xml 复制代码
		<dependency>
			<groupId>cn.hutool</groupId>
			<artifactId>hutool-all</artifactId>
			<version>5.8.25</version>
		</dependency>
java 复制代码
	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

powershell 复制代码
{
    "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元免费券可以使用哦,如果超过了,就要自己付费了,大家且用且珍惜。

相关推荐
消失的旧时光-194313 小时前
智能指针(三):实现篇 —— shared_ptr 的内部设计与引用计数机制
java·c++·c·shared_ptr
芒克芒克13 小时前
深入浅出CopyOnWriteArrayList
java
wuqingshun31415913 小时前
说一下java的反射机制
java·开发语言·jvm
A懿轩A13 小时前
【Java 基础编程】Java 异常处理保姆级教程:try-catch-finally、throw/throws、自定义异常
java·开发语言·python
极客先躯14 小时前
高级java每日一道面试题-2025年7月14日-基础篇[LangChain4j]-如何集成开源模型(如 Llama、Mistral)?需要什么基础设施?
java·langchain·存储·计算资源·模型服务框架·网络 / 协议·java 依赖
黎雁·泠崖14 小时前
Java 包装类:基本类型与引用类型的桥梁详解
java·开发语言
盖头盖15 小时前
【Java反序列化基础】
java
极客先躯15 小时前
高级java每日一道面试题-2025年7月15日-基础篇[LangChain4j]-如何集成国产大模型(如通义千问、文心一言、智谱 AI)?
java·人工智能·langchain·文心一言·异常处理·密钥管理·参数调优
追随者永远是胜利者15 小时前
(LeetCode-Hot100)226. 翻转二叉树
java·算法·leetcode·职场和发展·go
芒克芒克16 小时前
深入浅出Java线程池(一)
java·开发语言