前言
现在网络发展迅速,而国内的市场又早已饱满。因此我们国内大厂早已把眼光放在了国外。现在的大厂做的都是全球业务。只会英语和中文是不够的,全球有数不尽的语言种类。因此,我们要掌握所有的语言,这样才能为我们的用户提供一个良好的使用体验。
让一个人掌握所有的语言?这无异于痴人说梦啊。要知道,一个人普通人最多掌握5种语言。那我们如何才能在众多不同语言的围攻下,完美的解决客户的问题呢?一句一句靠翻译软件肯定不现实,效率太低了。这时候就要用到我们的AI了,内置于系统,能全部翻译。
实战
话不多说,咱们直接开始实战
初始化
npm init -y
这是做任何一个程序前都该做的一步,快速创建package.json
文件。
如果我们在别的程序里已经安装过openai
和dotenv
,可以直接在对应程序的package.json文件中复制如下内容
复制完毕后,再到我们现在程序的终端输入npm i
即可安装成功。
倘若之前没有安装后,则到当前终端中输入
npm i openai
npm i dotenv
即可安装成功。
关于openai
和dotenv
这里就不过多介绍,dotenv
主要是为了保护我们的隐私内容。详情请看博主这篇文章:OpenAi之Prompt Engineering基础
代码主体
结束准备工作后,我们正式开始了我们的代码出海。
还是老样子,先实例化一个客户端
const client = new OpenAI({
// node 里的进程对象
apiKey: process.env.OPENAI_API_KEY,
baseURL:process.env.OPENAI_BASE_URL
})
在我们的根目录下,创建一个.env
文件夹,然后将自己的API密钥和转发地址输进去。
导包后输入dotenv.config(),加载和读取我们的.env
文件
此时我们的API key和转发网址都被存在了目录下的.env
文件中,此时可以正常使用,防止隐私暴露。
再然后,我们获得一个大模型的聊天接口函数,是可复用的。
const getCompletion = async (prompt, model="gpt-3.5-turbo") => {
// 用户提的问题
const messages = [{
role: 'user',
content: prompt
}];
// AIGC chat 接口
const response = await client.chat.completions.create({
model: model,
messages: messages,
// LLM 生成内容的随机性
temperature: 0.1
})
return response.choices[0].message.content
}
因为此时我们要做的是翻译任务,temperature不能太高。太高会导致翻译随意,错误,出现问题。
现在我们可以输入一些数据了
const main = async () => {
const user_messages = [
"La performance du système est plus lente que d'habitude.", //系统的性能比平时慢
"Mi monitor tiene píxeles que no se iluminan.", //我的显示器有些像素点不亮。
"Il mio mouse non funziona", // 我的鼠标坏了
"Mój klawisz Ctrl jest zepsuty", // 我的Ctrl键坏了
"我的屏幕在闪烁"
]
为了方便使用,我们直接输入一些数据,正常应该读取数据。
然后,我们用for of
遍历数据,跟for相比它的可读性更好
for(let issue of user_messages){
// 简洁 代码可读性
console.log(issue);
然后利用我们的AI,进行第一步
const prompt=`
告诉我是什么语言:"${issue}"
`
const countryLanguage = await getCompletion(prompt)
再进行最后一步
const resultPrompt = `
帮我翻译以下的文字为中文:"${issue},"
`
const result=await getCompletion(resultPrompt)
console.log(`${countryLanguage}翻译结果是:${result}`);
}
}
main()
此时我们就可以得到结果了
这样操作还是很方便的,可以省去我们工作中的一些步骤。及时满足客户的需求。
结语
这就是简单版的AI前端出海过程,能熟练掌握还是一项不错的技能。