参考:中帖
BentoChain 是一个?️? LangChain部署示例使用? BentoML 的灵感来自 langchain-gradio-template。此示例演示如何使用 OpenAI API、Transformers 语音模型、Gradio 和 BentoML 创建语音聊天机器人。聊天机器人从麦克风获取输入,然后使用语音识别模型将其转换为文本。
聊天机器人用文本响应用户的输入,可以使用文本转语音模型向用户播放该文本。
?将 LangChain 应用容器化为标准 OCI 镜像。
?自动生成 OpenAPI 和 gRPC 端点。
☁️ 将模型部署为在最优化的硬件上运行并独立扩展的微服务。
安装 Python 依赖项。
poetry install
poetry shell
下载并保存语音识别和文本转语音模型。
python train.py
在本地启动应用程序。
bentoml serve
访问 http://0.0.0.0:3000 获取 OpenAPI Swagger 页面,访问 http://0.0.0.0:3000/chatbot 获取聊天机器人的 Gradio UI。请注意,麦克风输入功能可能无法在 Google Chrome 等浏览器上运行,因为端点不是 HTTPS。但是,麦克风输入在部署到 BentoCloud 后将发挥作用。
将应用程序构建为可分发的 Bento 工件。
bentoml build
Building BentoML service " voicegpt:vmjw2vucbodwkcvj " from build context " /Users/ssheng/github/BentoChain " .
Packing model " speecht5_tts_processor:7pjfnkucbgjzycvj "
Packing model " speecht5_tts_vocoder:7suthpucbgjzycvj "
Packing model " whisper_processor:7s6wbnecbgjzycvj "
Packing model " whisper_model:7td75iucbgjzycvj "
Packing model " speecht5_tts_model:7pkfc3ecbgjzycvj "
██████╗░███████╗███╗░░██╗████████╗░█████╗░███╗░░░███╗██╗░░░░░
██╔══██╗██╔════╝████╗░██║╚══██╔══╝██╔══██╗████╗░████║██║░░░░░
██████╦╝█████╗░░██╔██╗██║░░░██║░░░██║░░██║██╔████╔██║██║░░░░░
██╔══██╗██╔══╝░░██║╚████║░░░██║░░░██║░░██║██║╚██╔╝██║██║░░░░░
██████╦╝███████╗██║░╚███║░░░██║░░░╚█████╔╝██║░╚═╝░██║███████╗
╚═════╝░╚══════╝╚═╝░░╚══╝░░░╚═╝░░░░╚════╝░╚═╝░░░░░╚═╝╚══════╝
Successfully built Bento(tag= " voicegpt:vmjw2vucbodwkcvj " ).
Possible next steps:
* Containerize your Bento with ` bentoml containerize ` :
$ bentoml containerize voicegpt:vmjw2vucbodwkcvj
* Push to BentoCloud with ` bentoml push ` :
$ bentoml push voicegpt:vmjw2vucbodwkcvj
BentoML 提供了许多部署选项。设置文本嵌入服务的生产就绪端点的最简单方法是通过 BentoCloud,这是由 BentoML 团队为 BentoML 构建的无服务器云平台。
后续步骤:
在此处注册 BentoCloud 帐户。
获取 API 令牌,请参阅此处的说明。
将您的 Bento 推送到 BentoCloud:
bentoml push voicegpt:vmjw2vucbodwkcvj
通过 Web UI 部署,请参阅在 BentoCloud 上部署
并推送到 BentoCloud。