
LlamaIndex • 2023-11-20
使用 create-llama 将你的检索增强生成应用部署到生产环境

上周我们发布了 create-llama,这是一个用于生成检索增强生成(RAG)全栈 LlamaIndex 应用的命令行工具。反响非常热烈,所以我们将推出更多模板和功能。我们也想向您展示将生成的应用完全部署到生产环境是多么容易。因此,这里针对我们目前支持的三个后端提供了分步指南:Next.js serverless、Express 和 Python。
Next.js 后端
无服务器全栈 Next.js 应用是最易部署的版本,因为您只需要部署一个文件包。由于它是 Next.js 应用,我们将部署到 Vercel,Next.js 的归宿。
步骤 1:运行 create-llama

首先运行 create-llama 生成您的应用。我们强烈建议生成一个新的 OpenAI API 密钥并在生成时提供(create-llama 应用可以自定义使用其他 LLM,但这超出了本教程的范围)。
步骤 2:创建一个 GitHub 仓库并将您的应用推送至其中

在 Vercel 上部署的最简单方法是从链接的 GitHub 仓库。您生成的应用已设置为 git 仓库,因此在创建一个新的空仓库后,您只需按照说明将其推送即可。这应该会给您一个看起来有点像这样的仓库

步骤 3:将您的仓库导入 Vercel
选择从 git 仓库创建新项目的选项

授权后选择您刚刚创建的仓库

步骤 4:配置您的项目
因为这是一个 Next.js 应用并且在 Vercel 上,您几乎什么都不需要做!唯一需要记住的是点击“环境变量”并创建一个名为 OPENAI_API_KEY
的变量,填入您的密钥。

步骤 5:部署!
就是这样!在 Vercel 上部署 Next.js 应用非常容易。

您部署的应用应该看起来像这样

恭喜,您已经成功部署了一个全栈 RAG 应用!
Express 后端
如果您选择生成一个带有 Next.js 前端的 Express 后端,我们将帮助您将其部署到生产环境。我们将把前端和后端都部署到 Render,这是一个出色的静态站点和动态 Web 应用服务。
这里有 3 件主要事情要做
- 部署静态前端
- 部署后端,并赋予前端调用它的权限
- 告知前端后端的位置
我们保证您很快就能投入生产。
步骤 1:运行 create-llama
这与 Next.js 中的同一步骤类似
步骤 2:将代码推送到新的 GitHub 仓库

与 Vercel 类似,将站点推送到生产环境的最简单方法是从链接的 git 仓库。您生成的应用已经初始化了 git 仓库,其中包含 frontend
和 backend
文件夹,因此您可以像在 Next.js 后端中一样,将它们一起推送到一个 GitHub 仓库。
步骤 3:启动一个新的静态站点

我们将首先将您的前端部署为静态站点。授权后,选择您推送了前端和后端的仓库;我们将在下一步中指定我们正在部署前端。

步骤 4:配置您的静态站点

您需要对默认配置进行几处更改才能成功发布您的静态前端
- 为您的站点命名一个容易记住的名字,部署后它将成为您站点的 URL
- 将您的根目录设置为
frontend
- 将您的构建命令设置为
npm install; npm run build
- 将您的发布目录设置为
out
- 最后,点击“高级”并设置一个名为
NODE_VERSION
的环境变量,值为20
。Render 上的默认 Node 版本要旧得多,所以不要跳过此步骤!
步骤 5:部署您的静态前端

点击部署按钮,然后看着您的站点构建吧!您现在应该可以在类似 frontend-name-you-picked.onrender.com
的 URL 访问您的站点了。