亚马逊AWS官方博客

Amplify Framework 更新 — 快速为您的 Web 和移动应用程序添加机器学习功能

在 AWS,我们想让机器学习成为每个开发人员手中的利器。例如,我们在计算机视觉和语言等领域推出了预训练人工智能服务,让用户无需机器学习领域的专业知识也能使用。今天,我们在此方向更进一步,为 Amplify Framework 推出新的预测类别。您只需几行代码,均可为您的 Web 或移动应用程序添加和配置人工智能/机器学习使用案例!

AWS Amplify 由一个开发框架和多种开发人员服务组成,通过它可以非常轻松地在 AWS 上构建移动和 Web 应用程序。开源化的 Amplify Framework 提供一组精心选择的库、用户界面 (UI) 组件以及一个命令行界面 (CLI),用于构建云后端并与您的 Web 或移动应用程序集成。 Amplify 利用了一系列核心的 AWS 服务,分为多个类别,包括存储、身份验证与授权、API(GraphQL 和 REST)、分析、推送通知、聊天机器人以及 AR/VR 等。

借助 Amplify Framework CLI,您可以使用 amplify init 以交互的方式完成项目的初始化。然后完成存储 (amplify add storage) 和用户身份验证与授权 (amplify add auth) 选项。

现在,您还可以使用 amplify add predictions 来配置您的应用程序,从而执行下列任务:

  • 使用 Amazon Rekognition 识别图像中的文本、实体和标签,或者使用 Amazon Textract 来识别扫描文件中的文本,从而获取表单中字段的内容以及表格中存储的信息。
  • 使用 Amazon Translate 将文本转换为不同的语言,使用 Amazon Polly 将文本转换为语音,以及使用 Amazon Transcribe 将语音转换为文本。
  • 使用 Amazon Comprehend 解释文本以找到非结构化文本的主要语言、实体、关键语句、情绪或句法。

您可以选择将上述各项操作仅对通过身份验证的应用程序开放,或者同时也对未经授权的来宾用户开放。根据您的输入不同,Amplify 将使用 AWS Identity and Access Management (IAM) 角色Amazon Cognito 来配置必要的权限。

下面我们来看“预测”类别在 Web 应用程序中的工作原理。例如,要直接从浏览器中使用 Amazon Rekognition 识别图像中的文本,您可以使用如下 JavaScript 句法并传送一个文件对象:

Predictions.identify({
  text: {
    source: file
    format: "PLAIN" # "PLAIN" uses Amazon Rekognition
  }
}).then((result) => {...})

如果图像存储在 Amazon S3 中,您可以在添加此项目的存储时将源更改为该 S3 存储桶的链接。您还可以更改格式以使用 Amazon Textract 分析扫描的文档。 以下为从 S3 中存储的文档提取表单文本的示例:

Predictions.identify({
  text: {
    source: { key: "my/image" }
    format: "FORM" # "FORM" or "TABLE" use Amazon Textract
  }
}).then((result) => {...})

以下为使用 Amazon Comprehend 的所有预训练功能来解释文本的例子:

Predictions.interpret({
  text: {
    source: {
      text: "text to interpret",
    },
    type: "ALL"
  }
}).then((result) => {...})

要使用您在添加预测时选择的语言和语音,通过 Amazon Polly 将文本转换为语音,然后在浏览器中回放,则可以使用如下代码:

Predictions.convert({
  textToSpeech: {
    source: {
      text: "text to generate speech"
    }
  }
}).then(result => {
  var audio = new Audio();
  audio.src = result.speech.url;
  audio.play();
})

现已推出
您现在即可学习此处的入门教程,开始使用 Amplify 构建您的下一个 Web 或移动应用程序,并通过 Amplify Framework Github 存储库向我们反馈意见。

Amplify Framework 的“预测”类别还有许多其他的选项和功能。有关如何构建机器学习支持的应用程序的深入示例,请参阅 AWS 移动博客上的此演示

为 Web 或移动应用程序添加机器学习功能从未如此简单,欢迎分享您的新构建。

Danilo