# baidu-model-java-sdk
**Repository Path**: gitwcx/baidu-model-java-sdk
## Basic Information
- **Project Name**: baidu-model-java-sdk
- **Description**: 百度文心千帆大模型sdk,集成了百度大模型常用api,包括文心一言、Llama、ChatGLM2、VisualGLM、BLOOMZ-7B、OpenLLaMA-7B等
- **Primary Language**: Java
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 76
- **Forks**: 30
- **Created**: 2023-07-29
- **Last Updated**: 2025-01-20
## Categories & Tags
**Categories**: llm
**Tags**: None
## README
# baidu-model-java-sdk
### 介绍
百度文心千帆大模型sdk java版本,集成了百度大模型常用api,包括文心一言、Llama、ChatGLM2、VisualGLM、BLOOMZ-7B、OpenLLaMA-7B等。
如果对你有帮助,欢迎star
有兴趣的小伙伴,欢迎共建
体验网址:[https://chat.jylt.cc](https://chat.jylt.cc/)
### pom配置
1. 在pom.xml文件配置仓库属性
```
baidu-model-sdk
https://gitee.com/gitwcx/baidu-model-java-sdk/raw/master/baidu-model-sdk/release/
```
2. 引入sdk依赖版本
```
com.walter
baidu-model-sdk
{{lastest}}
```
3. 修改最新依赖版本,依赖版本可[点击](https://gitee.com/gitwcx/baidu-model-java-sdk/tree/master/baidu-model-sdk/release/com/walter/baidu-model-sdk)查看
### 使用说明
```java
// 实例化BaiduService
BaiduService baiduService = new BaiduService(your apiKey, your secretKey);
// 构建请求参数
EmbeddingV1Param param = EmbeddingV1Param.builder()
.input(Collections.singletonList("文本向量"))
.user_id("1")
.build();
// 发起请求,获取请求响应
EmbeddingV1Response embeddingV1Response = baiduService.embeddingV1(param, baiduService.getToken());
```
- 具体可以参考[测试方法](https://gitee.com/gitwcx/baidu-model-java-sdk/blob/master/baidu-model-sdk/src/test/java/baidumodel/service/BaiduServiceTest.java)
#### 方法及参数使用
- 请求参数的命名规则是:模型名称+Param.java;
比如:模型`ERNIE-Bot`的请求参数是`ErnieBotParam`。
- 响应参数的命名规则是:模型名称+Response.java;比如:模型`ERNIE-Bot`的请求响应是`ErnieBotResponse`。
- 接口请求方法统一在类:`BaiduServie.java`中,请求方法命名规则使用模型名称+(Stream);
比如:模型`ERNIE-Bot`的请求方法是`ernieBotTurbo()`,如果使用流式请求使用方法`ernieBotStream()`
### 注意事项
**标记为过时的参数和方法请勿使用,后续版本可能会被删**
### 更新日志
#### 2024-05-22 v0.1.8
- `A` 新增模型 ERNIE_SPEED_128K 相关API(该模型可免费调用)
- `A` 新增模型 ERNIE_SPEED_8K 相关API(该模型可免费调用)
#### 2023-11-05 v0.1.6
- `A` 新增自定义 OkHttpClient 构造方法
#### 2023-11-05 v0.1.5
- `A` 新增文生图模型:Stable-Diffusion-XL API
#### 2023-10-20 v0.1.4
- `A` ERNIE-Bot-turbo、ERNIE-Bot,新增请求参数system,用于设定模型人设。
- `A` 新增模型 ERNIE-Bot-4 相关API
- `U` 删除弃用 API
#### 2023-10-18 v0.1.3
- `F` 修复单元测试执行流式请求,无法获取响应数据问题
#### 2023-08-22 v0.1.2
- `U` 切换Llama-2-7B-Chat、Llama-2-13B-Chat和Llama-2-70B-Chat公有云在线调用服务
#### 2023-08-17 v0.1.1
- `A` 增加 `Falcon-7B`、`Dolly-12B` 模型接口
#### 2023-08-16 v0.1.0
- `A` 增加 `ChatGLM2-6B`、`OpenLLaMA-7B` 模型接口
- `U` 优化代码结构
#### 2023-08-15 v0.0.9
- `A` 增加 `Llama`、`Linly-Chinese-LLaMA` 模型接口
- `A` 增加异常码枚举类 `CodeEnum.java`
#### 2023-08-12 v0.0.8
- `A` 增加 `VisualGLM-6B` 模型接口
- `A` 增加异常码枚举类 `CodeEnum.java`
#### 2023-08-10 v0.0.7
- `A` 增加 `Embedding-V1` 模型接口
#### 2023-08-09 v0.0.6
- `A` 增加 `prompt template` 模型接口
#### 2023-08-07 v0.0.5
- `U` 优化代码结构
- `U` 完善单元测试
#### 2023-08-04 v0.0.4
- `A` 增加 `BLOOMZ-7B` 模型接口
- `U` 优化模型参数结构
- `U` 增加模型参数注释
#### 2023-08-02 v0.0.3
- `A` 增加 `ERNIE-Bot` 模型接口
#### 2023-07-29 v0.0.2
- `A` 增加 `ERNIE-Bot-turbo` 模型接口