食品订购 Bot#

食品订购 Bot 是一种虚拟助手 Bot,可以帮助你下达食品订单。食品订购 Bot 能够:

  • 列出菜单项

  • 管理订单购物车

  • 列出账单金额

食品订购 Bot 使用以下 ACE Agent 功能:

  • 使用联合意图-槽模型进行意图和槽分类

  • 槽管理技术,例如查找、同义词替换和槽解析

  • 用于与菜单和购物车管理器集成的插件服务器

  • 基于 Colang 2.0 的 Bot

  • 支持使用 聊天引擎服务器架构事件架构 进行部署

基于 Docker 的 Bot 部署

食品订购示例 Bot 使用 OpenAI gpt-4-turbo 作为主要模型。此示例 Bot 位于 快速入门目录 中的 ./samples/food_ordering_bot/

  1. 设置 OpenAI API 密钥环境变量。

    export OPENAI_API_KEY=...
    
  2. NGC_CLI_API_KEY 环境变量中设置你的 NGC Personal API 密钥。

    export NGC_CLI_API_KEY=...
    
  3. 准备 Docker Compose 命令的环境。

    export BOT_PATH=./samples/food_ordering_bot/
    source deploy/docker/docker_init.sh
    
  4. 部署 NLP 和语音模型。食品订购示例 Bot 利用意图槽模型以及 Riva ASR 和 TTS 语音模型。

    docker compose -f deploy/docker/docker-compose.yml up model-utils-speech
    
  5. 部署 ACE Agent 微服务。部署聊天控制器、聊天引擎、插件服务器和 NLP 服务器微服务。

    docker compose -f deploy/docker/docker-compose.yml up speech-event-bot -d
    
  6. 等待几分钟,以便所有服务准备就绪。你可以检查各个微服务的 Docker 日志进行确认。你将在聊天控制器容器的 Docker 日志中看到日志打印 Server listening on 0.0.0.0:50055

  7. 使用 URL http://<工作站 IP>:7006/ 与 Bot 交互。为了访问浏览器上的麦克风,我们需要通过添加 SSL 验证将 http 转换为 https 端点,或者更新你的 chrome://flags/edge://flags/ 以允许 http://<工作站 IP>:7006 作为安全端点。

Food ordering bot sample conversation

注意

由于已知问题,此示例 Bot 不支持使用 Python 环境 进行部署。