介绍
@nornagon/cld 是一个基于 Google Cloud Vision API 的语言检测工具,它可以通过输入文本或图片来检测文本的语言种类。这个 npm 包简化了使用 Cloud Vision API 的流程,封装了鉴权、API 调用等细节,使用它可以快速地在前端实现语言检测功能。
安装
你需要在你的项目中使用 npm 安装 @nornagon/cld,输入以下命令即可:
npm i @nornagon/cld
使用
配置
在使用 @nornagon/cld 之前,你需要先获取一个 Google Cloud API Key,并启用 Google Cloud Vision API。具体的步骤请参考 Google Cloud Vision API 官方文档。
获取 API Key 后,在你的项目代码中添加以下配置:
const cld = require('@nornagon/cld'); cld.configure({ keyFilename: 'path/to/key.json', projectId: 'your-project-id', location: 'your-location', // 例如 us-central1 });
文本检测
使用 @nornagon/cld 进行文本检测的步骤如下:
const cld = require('@nornagon/cld'); const text = 'Hello, world!'; cld.detectLanguageByText(text).then((result) => { console.log(result); });
运行这个代码,你将会看到:
{ language: 'en', score: 1, isReliable: true, text: 'Hello, world!' }
这个结果表明 @nornagon/cld 成功将输入的文本识别为英语。
图片检测
使用 @nornagon/cld 进行图片检测的步骤如下:
const cld = require('@nornagon/cld'); const fs = require('fs'); const image = fs.readFileSync('path/to/image.jpg'); cld.detectLanguageByImage(image).then((result) => { console.log(result); });
运行这个代码,你将会看到:
{ language: 'en', score: 1, isReliable: true, text: 'Hello, world!' }
这个结果表明 @nornagon/cld 成功将图片中的文本识别为英语。
更多参数
cld.detectLanguageByText 和 cld.detectLanguageByImage 可以接受一个可选的参数对象,用于配置检测的选项。这个选项对象可以包含以下属性:
maxAttempts
:最多重复检测的次数,默认是 3。retryDelayMs
:重试检测的等待时间,默认是 1000 毫秒。hints
:提示的语言数组,@nornagon/cld 将在识别时优先考虑这些语言。例如:['en', 'zh-CN']。
下面是一个示例:
const cld = require('@nornagon/cld'); const text = 'こんにちは世界!'; cld.detectLanguageByText(text, { hints: ['ja'] }).then((result) => { console.log(result); });
运行这个代码,你将会看到:
{ language: 'ja', score: 0.87, isReliable: true, text: 'こんにちは世界!' }
这个结果表明 @nornagon/cld 成功将日语文本识别为日语,即使输入的文本也包含 Unicode 字符。
结论
在本文中,你了解了如何使用 @nornagon/cld 在前端实现语言检测功能。你需要先获取一个 Google Cloud API Key,并启用 Google Cloud Vision API,然后在代码中配置 @nornagon/cld,最后调用 detectLanguageByText 或 detectLanguageByImage 进行文本或图片检测。通过本文中的示例代码和参数说明,你可以定制和优化 @nornagon/cld 的检测结果,以满足你的具体需求。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671a730d0927023822658