从出海后的“语言不通”到“沟通无界”:用 AI 翻译征服外国同事的秘籍 🌍💬

313 阅读6分钟

引言

在科技飞速发展的今天,AI产品已成为我们生活中的常客,其早已不再是那些科幻小说里的幻想,而是真真切切地融入了我们的日常生活。而对于程序员来说,合理高效的使用 AI 工具可以让我们的开发如虎添翼,工作效率直接翻倍,而这一能力也成为我们向大厂体现我们学习能力的一环。

尤其值得一提的是,随着越来越多的企业开始将目光投向海外, AI 翻译成为了沟通中外的一座重要桥梁。想象一下,在一个大厂国际化的团队中,如果你能够无障碍地与来自世界各地的同事交流,是不是能让开发更加高效呢?

吴恩达的Prompt Engineering课程

而提到AI学习,就不得不提吴恩达这个名字。他作为机器学习领域的领军人物之一,他不仅在学术界有着举足轻重的地位,更是通过制作许多线上课程等,将许多复杂的 AI 知识通俗易懂的传授给了许多学习者。而他的《Prompt Engineering》课程,则是针对如何更有效地与 AI 进行“沟通”,让我们实现说着说着项目就实现了,即设计出能够让 AI 理解并执行复杂任务的指令。而今天我们就来学习 Prompt 这一奇妙的课程。

初级Prompt设计原则:踏上 AI “出海”之路的第一步

那么,如何才能成为一名优秀的 Prompt 设计师呢?与 AI 沟通并不像与人类沟通一样,它听不懂那些含蓄的话题,比起拐弯抹角,它更希望我们能“打直球”,准确表达任务就成为了沟通的第一步,明确了解我们所需开发的项目需要哪些功能。而在明确了我们的需求后就可以给 AI 一个合适的角色了,例如我要开发 JS 类的项目就可以赋予 AI 一个JavaScript工程师的身份,这样就会更加契合我们的开发了。当你理解上述的原则后,你就已经完成了初级prompt 设计原则学习了。那么我们就要开始实战了!!

从初级到高级:打造属于你的LLM开发模板:

1.Node.js环境下创建LLM项目的代码工程:

当我们需要在我们的项目中使用 OpenAI 时,当然少不了环境的搭建。

  • 第一步输入npm init -y:快速初始化一个新的 Node.js 项目的命令。
  • 第二步就有许多方法了:
    • npm i openai:在之前我们会直接安装,当然这也是费时费力的。
    • npm i -g pnpm:通过pnpm来优化安装,可以提高性能和减少磁盘占用。

前两种方法在之前的文章都讲过,请自行查阅🚀 快速集成 OpenAI API,让 Node.js 项目瞬间升级!🌟本文详细介绍如何在 Node.js 中高效集 - 掘金

而我们今天讲一个新方法来进行安装 OpenAI。

  • 打开之前安装过 OpenAI 的项目的package.json,将其中的dependencies: {} 部分(即项目运行时所依赖的npm包)拷贝到我们新项目的package.json中。例如:
"dependencies": {
    "dotenv": "...",
    "openai": "..."
}
  • 再输入npm i这样就可以搭建好了。

2.使用dotenv管理环境变量

使用dotenv是程序员安全意识的一个重要体现,因为我们的 key 等重要信息不能以明文出现,所以我们通过使用dotenv 在项目的根目录下创建一个名为.env的文件来存储配置信息(如API密钥等敏感数据),这些信息不会被提交到git等之中,这样就可以保证我们敏感信息的安全性。

接下来我们就来演示如何正确地使用dotenv:

  • import dotenv from "dotenv";:导入dotenv模板。
  • 创建.env文件,并且将我们的 key 放入其中。
  • dotenv.config();:将.env 读入process.env 对象中。

这样我们就可以安全的调用key ,通过process.env来获取key。

3.实战“出海AI翻译”:

第一步,可想而知,导入dotenvopenai模板。

import OpenAI from "openai";
import dotenv from "dotenv";
// 别忘了读入.env哦~
dotenv.config();

第二步,初始化一个与 OpenAI API 交互的客户端对象,并通过 process.env 来配置其属性。

const client = new OpenAI({
    apiKey: process.env.OPENAI_API_KEY,
    baseURL: process.env.OPENAI_BASE_URL
})

第三步,就到了激动人心的创建函数,并且根据用户提供的提示(prompt)生成一个响应。

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 生成内容的文本的随机性和创造性,0-1 越大越随机(翻译可是一个很严谨的事哦)
        temperature: 0.1,
    });
    // 返还回答
    return response.choices[0].message.content;
}

第四步,我们就要处理一系列用户信息了,根据我们项目需要而灵活变通。

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 es6的遍历
    for(let issue of user_messages) {
        // 简洁 + 代码可读性的提升
        console.log(issue);
        // 向AI提问,“请告诉我这句话是哪国语言”
        const prompt = `
        Tell me what language this is: "${issue}" 
        `
        const countryLanguage = await getCompletion(prompt);
        // 向AI提问,“翻译文字”
        const resultPrompt = `
            帮我翻译以下的文字到中文,"${issue}"
        `   

        const result = await getCompletion(resultPrompt);
        // 返还结果
        console.log(`${countryLanguage},翻译结果是:${result}`)
    }
}

最后的最后,别忘了main()哦~

这样我们就完成了AI翻译的创建了,是不是有了一点小小的成就感呢,赶紧自己运行一下看看结果吧。

总结:

通过今天的实践,我们不仅学会了如何在 Node.js 项目中高效集成 OpenAI API,还掌握了设计有效 Prompt 的初级原则。看来,你已经准备好踏上 AI “出海”的旅程,成为一名优秀的 Prompt 设计师了!

想象一下,在一个国际化的大厂团队中,你可以轻松地与来自世界各地的同事交流,无论是法国同事的系统性能问题、西班牙同事的显示器故障,还是意大利同事的鼠标失灵,都能通过 AI 翻译来快速沟通解决问题,那这工作效率不得蹭蹭往上翻。

---欢迎各位点赞、收藏、关注,如果觉得有收获或者需要改进的地方,希望评论在下方,不定期更新

0bae-hcffhsw0416753.gif