通过 Docker 使用 NeMo Guardrails#

简介#

本指南提供了使用 Docker 运行 NeMo Guardrails 的分步说明。Docker 为开始使用 NeMo Guardrails 提供了一种无缝且快速的部署方法。

先决条件#

确保您的机器上已安装 Docker。 如果没有,请按照适用于您平台的官方 Docker 安装指南进行操作。

构建 Docker 镜像#

1. 克隆仓库#

首先克隆 NeMo Guardrails 仓库

git clone https://github.com/NVIDIA/NeMo-Guardrails.git nemoguardrails

然后将目录更改为仓库

cd nemoguardrails

2. 构建 Docker 镜像#

构建 nemoguardrails Docker 镜像

docker build -t nemoguardrails .

3. [可选] 构建 AlignScore 服务器镜像#

如果您想使用基于 AlignScore 的事实核查,您还可以使用提供的 Dockerfile 构建 Docker 镜像。

cd nemoguardrails/library/factchecking/align_score
docker build -t alignscore-server .

注意:提供的 Dockerfile 仅下载 base AlignScore 镜像。 如果您需要支持大型模型,请取消注释 Dockerfile 中的相应行。

4. [可选] 构建越狱检测启发法服务器镜像#

如果您想使用越狱检测启发法服务器,您还可以使用提供的 Dockerfile 构建 Docker 镜像。

cd nemoguardrails/jailbreak_detection
docker build -t jailbreak_detection_heuristics .

使用 Docker 运行#

要使用 Docker 镜像运行 NeMo Guardrails 服务器,请运行以下命令

docker run -p 8000:8000 -e OPENAI_API_KEY=$OPENAI_API_KEY nemoguardrails

这将使用示例配置启动 NeMo Guardrails 服务器。 Chat UI 将可在 https://127.0.0.1:8000 上访问。

注意:由于示例配置使用 OpenAI test-davinci-003 模型,因此您需要提供 OPENAI_API_KEY

要为服务器指定您自己的配置文件夹,您必须将本地配置挂载到容器中的 /config 路径中

docker run \
  -p 8000:8000 \
  -e OPENAI_API_KEY=$OPENAI_API_KEY \
  -v </path/to/local/config/>:/config \
  nemoguardrails

要使用 Chat CLI 界面,请在交互模式下运行 Docker 容器

docker run -it \
  -e OPENAI_API_KEY=$OPENAI_API_KEY \
  -v </path/to/local/config/>:/config \
  nemoguardrails chat --config=/config --verbose

AlignScore 事实核查#

如果您的配置之一使用 AlignScore 事实核查模型,您可以在单独的容器中运行 AlignScore 服务器

docker run -p 5000:5000 alignscore-server

这将启动端口 5000 上的 AlignScore 服务器。 然后,您可以在配置文件中指定 AlignScore 服务器 URL

rails:
  config:
    fact_checking:
      # Select AlignScore as the provider
      provider: align_score
      parameters:
        # Point to a running instance of the AlignScore server
        endpoint: "https://127.0.0.1:5000/alignscore_base"