万网做网站花多少钱,域名怎么建设网站,做网站需要花费那方面的钱,英迈思做网站怎么样GPT生产实践之定制化翻译
GPT除了能用来聊天以外#xff0c;其实功能非常强大#xff0c;但是我们如何把它运用到生产实践中去#xff0c;为公司带来价值呢#xff1f;下面一个使用案例–使用gpt做专业领域定制化翻译
思路#xff1a;
定制化#xff1a;有些公司词条的…GPT生产实践之定制化翻译
GPT除了能用来聊天以外其实功能非常强大但是我们如何把它运用到生产实践中去为公司带来价值呢下面一个使用案例–使用gpt做专业领域定制化翻译
思路
定制化有些公司词条的翻译我们想要定制翻译成公司的slogn简称比如运去哪翻译成YQN这在其他翻译引擎里面是没办法实现的但是使用gpt我们只需要给定这个上下文就可以实现全文带有运去哪的都翻译成YQN领域化有些词条在不同的领域翻译的结果也不同使用专门的翻译软件也要做很多前置操作才能使用到但是使用GPT只要一句话限定他的身份就可以得到专业的领域翻译结果
理论存在开始实践
1、maven api选用
想要使用GPT的服务当然避不开调用openAi的接口了但是官方的api调用一般都比较负责且因为语言不通上手比较难这时候就可以寻找合适的封装api工具比如githuab 2k 的一个工具开箱即用非常方便,当然也可以使用其他的不影响
git地址
GitHub - Grt1228/chatgpt-java: ChatGPT Java SDK支持流式输出、Gpt插件、联网。支持OpenAI官方所有接口。ChatGPT的Java客户端。OpenAI GPT-3.5-Turb GPT-4 Api Client for Java
maven坐标
!-- chatGpt--dependencygroupIdcom.unfbx/groupIdartifactIdchatgpt-java/artifactIdversion1.0.15/version/dependency测试
public class Test {public static void main(String[] args) {OpenAiClient openAiClient OpenAiClient.builder().apiKey(Arrays.asList(sk-********,sk-********))//自定义key的获取策略默认KeyRandomStrategy//.keyStrategy(new KeyRandomStrategy()).keyStrategy(new FirstKeyStrategy())//自己做了代理就传代理地址没有可不不传
// .apiHost(https://自己代理的服务器地址/).build();//聊天模型gpt-3.5Message message Message.builder().role(Message.Role.USER).content(你好啊我的伙伴).build();ChatCompletion chatCompletion ChatCompletion.builder().messages(Arrays.asList(message)).build();ChatCompletionResponse chatCompletionResponse openAiClient.chatCompletion(chatCompletion);chatCompletionResponse.getChoices().forEach(e - {System.out.println(e.getMessage());});}
}2、翻译转换
gpt 只要你和他说清楚就可以实现你想要的任何结构
比方说你可以强调给他一个List集合的Json,让他给我们返回一个map结构的Json这样在我们拿到结果之后将其反序列化为Map, 我把要翻译的词条封装成一个JSON格式的集合你以JSON格式的Map返回给我key是我给你的词条value是对应的翻译词条是 JSONUtil.toJsonString(originContentList) ,只返回结果不要有任何描述拿到结果之后
if (CollectionUtils.isNotEmpty(chatCompletionResponse.getChoices())) {ChatChoice chatChoice chatCompletionResponse.getChoices().get(0);//获取返回结果Message resMes chatChoice.getMessage();if (resMes null) {throw new ApplicationException(返回结果为空);}try {result JSONUtil.toMap(resMes.getContent());} catch (Exception e) {Loggers.BIZ.error(e,内容解析异常GPT返回非标准的JSON, JSONUtil.toJsonString(originContentList));throw new RuntimeException(e);}}这样就可以通过getKey拿到给定词条的翻译值。