博主介绍: 大家好,我是想成为Super的Yuperman,互联网宇宙厂经验,17年医疗健康行业的码拉松奔跑者,曾担任技术专家、架构师、研发总监负责和主导多个应用架构。
技术范围: 目前专注java体系,有多年java、golang、.Net、DDD、软件架构、redis、nginx、tomcat、mysql、oracle等经验
业务范围: 对传统业务应用技术转型,从数字医院到区域医疗,从院内业务系统到互联网医院及健康服务,从公立医院到私立医院都有一些经历及理解
*** 为大家分享一些技术积累,欢迎交流合作 持续关注Yuperman ***
如何接入文心一言AI模型
完整介绍文心一言如何接入到业务系统中,帮助业务系统增加模型具有的智能功能、对话功能、机器人功能。
本文应用场景,文心一言分析体检报告异常项目并给出建议。
文章目录
如何接入文心一言AI模型 前言 一、接入流程 二、获取文心一言AppID、API Key、Secret Key 1. 创建千帆应用 2. 创建千帆应用 3. 选择模型 三、接入模型接口 1. 生成token 2. 传入问题,返回模型结果 三、接入业务系统 四、结语前言
要如何接入文心一言呢,百度的文心一言是可以免费接入的,下面接介绍如何接入文心一言的模型,并提供接口给业务系统使用。文心一言企业服务由千帆大模型平台提供,包括推理服务及大模型微调等一系列开发和应用工具链。。
一、接入流程
注册百度账户,登录百度智能云千帆控制台 创建千帆应用 获取AppID、API Key、Secret Key 选择提供服务的模型 接入token接口 接入问答接口 开发接口提供给业务系统二、获取文心一言AppID、API Key、Secret Key
1. 创建千帆应用
登录百度智能云:https://cloud.baidu.com/
2. 创建千帆应用
创建应用后,会生成API Key、Secret Key
3. 选择模型
选择文心一言中提供的李开复零一万物Yi-34B-Chat。
根据2023年底发布的《SuperCLUE中文大模型基准评测报告 2023》,11月下旬首度发布的 Yi-34B
Chat,迅速晋升到和诸多国产优秀大模型齐平的 “卓越领导者” 象限,在多项基准评测中的 “SuperCLUE 大模型对战胜率”
这项关键指标上,Yi-34B-Chat 取得31.82%的胜率,仅次于GPT4-Turbo。
三、接入模型接口
1. 生成token
请求该地址填入相应的key即可获取token
https://aip.baidubce.com/oauth/2.0/token?grant_type=client_credentials&client_id=【API Key】&client_secret=【Secret Key】
/**
* 从用户的AK,SK生成鉴权签名(Access Token)
*
* @author Yuperman
*/
public String getAccessToken(){
String API_KEY = "O4d4mNSIt0GsAIe7E0JQ6rmY";
String SECRET_KEY = "5gVOrkYkR2y4XMa22PeyrH9caHUYvGnF";
String url = "https://aip.baidubce.com/oauth/2.0/token";
String param= "grant_type=client_credentials&client_id=" + API_KEY
+ "&client_secret=" + SECRET_KEY;
MediaType mediaType = MediaType.parse("application/x-www-form-urlencoded");
RequestBody requestBody = RequestBody.create(mediaType,param);
Request request = new Request.Builder().url(url).addHeader("Content-Type", "application/x-www-form-urlencoded").post(requestBody).build();
String result = execute(request);
JSONObject data = JSONObject.parseObject(result);
return data.get("access_token").toString();
}
http请求类
private String execute(Request request) {
OkHttpClient okHttpClient =
new OkHttpClient()
.newBuilder()
.writeTimeout(100,TimeUnit.SECONDS)
.connectTimeout(100,TimeUnit.SECONDS)
.readTimeout(100, TimeUnit.SECONDS)
.build();
Response response = null;
try {
response = okHttpClient.newCall(request).execute();
if (response.isSuccessful()) {
return response.body().string();
}
} catch (Exception e) {
System.out.println(e.toString());
} finally {
if (response != null) {
response.close();
}
}
return "";
}
2. 传入问题,返回模型结果
public String AiAnswer(String msg) throws IOException {
String url = "https://aip.baidubce.com/rpc/2.0/ai_custom/v1/wenxinworkshop/chat/yi_34b_chat?access_token=" + getAccessToken();
msg = msg+"\n给出这份体检报告的异常项解读和健康建议";
JSONObject message = new JSONObject();
message.put("role", "user");
message.put("content", msg);
JSONArray messages = new JSONArray();
messages.add(message);
JSONObject requestBody = new JSONObject();
requestBody.put("messages", messages);
requestBody.put("disable_search", false);
requestBody.put("enable_citation", false);
System.out.println(requestBody.toString());
HttpHeaders headers = new HttpHeaders();
headers.setContentType(org.springframework.http.MediaType.APPLICATION_JSON);
HttpEntity<String> requestEntity = new HttpEntity<>(requestBody.toString(), headers);
RestTemplate restTemplate = new RestTemplate();
ResponseEntity<String> responseEntity = restTemplate.exchange(url, HttpMethod.POST, requestEntity, String.class);
String responseBody = responseEntity.getBody();
JSONObject data = JSONObject.parseObject(responseBody);
String result = data.get("result").toString();
System.out.println(result);
return result;
}
三、接入业务系统
1、按业务系统要求传入问题,获取模型分析结果
本文模拟使用入职体检的用户体检报告数据,通过模型分析异常项及健康建议。
四、结语
根据需要,可选择不同的模型,本文选择Yi-34B-Chat token的有效期是30天,生产环境需要提前更换 根据业务系统不同的需求接入文心一言模型总结
文章概述:博主Yuperman,一位拥有多年互联网及医疗健康行业技术经验的架构师,分享了如何接入百度文心一言AI模型的详细步骤和实战经验,旨在帮助业务系统增加智能对话与分析能力。文章具体介绍了文心一言的接入流程,涵盖从注册账号、创建应用到获取API密钥、选择模型,并详细演示了如何生成Token和通过API传输问题以获取模型响应。最后,文章演示了如何将文心一言AI模型接入到实际的健康服务业务中,如分析体检报告并给出健康建议,以及提醒了生产环境中需注意的事项。
核心要点如下:
1. **博主背景**:介绍Yuperman在互联网和医疗健康领域的深厚技术背景和多样经验。
2. **技术范围**:涵盖Java体系及相关技术栈,如Golang、.Net、DDD、前后端框架等。
3. **业务体验**:从传统医疗业务到互联网医疗的全面理解与实践。
4. **文心一言接入步骤**:
- **注册与创建**:在百度智能云平台注册账号,创建千帆应用以获取必要的API密钥。
- **模型选择**:推荐使用先进的Yi-34B-Chat模型,基于其优异的评测表现。
- **接口接入**:详述了通过API密钥生成Token,以及如何使用Token调用文心一言的问答接口。
- **业务系统整合**:展示了如何将文心一言的能力嵌入到健康服务业务中,实际分析用户体检报告并提供健康建议。
5. **注意事项**:提醒关于Token有效期限及生产环境特别需求的事宜。
总结而言,文章为技术开发者提供了一份详尽且实用的指南,展示了如何将百度的先进AI模型——文心一言无缝接入到指定的业务场景中,尤其是在医疗健康领域的应用,增强了业务系统的智能化水平和用户体验。