当前位置: 首页 > news >正文

网站做轮播图的意义网站开发笔记本

网站做轮播图的意义,网站开发笔记本,如何建设好高校网站,品牌网站建设报价单文章目录 前言聊天应用程序组件和技术LangChain Python框架开放人工智能模型前端 Streamlit UI使用 Docker 进行部署Docker 优化以实现轻量级和快速构建Docker-compose.yaml 文件基础设施Streamlit 公共云谷歌应用引擎使用 Google Cloud Run 部署应用1.启动服务2. 创建角色并将… 文章目录 前言聊天应用程序组件和技术LangChain Python框架开放人工智能模型前端 Streamlit UI使用 Docker 进行部署Docker 优化以实现轻量级和快速构建Docker-compose.yaml 文件基础设施Streamlit 公共云谷歌应用引擎使用 Google Cloud Run 部署应用1.启动服务2. 创建角色并将其添加到服务帐户3.生成并推送Docker镜像 结论小结 博客主页小智_x0___0x_ 欢迎关注点赞收藏✍️留言 系列专栏小智带你闲聊 代码仓库小智的代码仓库 前言 本文强调了 Docker 为 AI/ML 项目带来的价值 - 部署的速度和一致性、一次构建并随处运行的能力以及 Docker Desktop 中提供的可加速整体开发工作流程的省时工具。 在本文中我们将探索使用 LangChain、OpenAI API 和 Streamlit 框架创建聊天应用程序的过程。我们将演示如何使用 Docker 和Docker Compose在内部或云服务器上轻松部署应用程序。 我们在 Streamlit 公共云和 Google App Engine 上创建并部署了一个演示应用程序图 1以便进行快速预览。 图 1聊天应用程序截图LangChain 演示。 聊天应用程序组件和技术 我们将简要描述用于创建模板应用程序的应用程序组件和框架。 LangChain Python框架 LangChain框架使开发人员能够使用强大的大型语言模型LLMs创建应用程序。我们的演示聊天应用程序是基于Python框架构建的其中OpenAI模型是默认选项。但是用户可以灵活选择他们喜欢的任何LLM。 LongChain框架轻松管理输入提示并在LLMs API生成的响应之间建立连接。 开放人工智能模型 出于演示目的我们使用 OpenAI API 在提交提示时生成响应。 前端 Streamlit UI Streamlit是一种轻量级且更快的构建和共享数据应用程序的方式。开发了一个带有 Streamlit 框架的简单 UI 来与聊天应用程序交互。 使用 Docker 进行部署 Docker可用于开发应用程序并将其部署到任何服务器而无需担心依赖项和环境。在演示应用程序开发完成并在本地运行良好后我们添加了 Docker 支持。 FROM python:3.10-slim-bullseyeENV HOST0.0.0.0ENV LISTEN_PORT 8080EXPOSE 8080RUN apt-get update apt-get install -y gitCOPY ./requirements.txt /app/requirements.txtRUN pip install --no-cache-dir --upgrade -r /app/requirements.txtWORKDIR app/COPY ./demo_app /app/demo_app COPY ./.streamlit /app/.streamlitCMD [streamlit, run, demo_app/main.py, --server.port, 8080]前面的代码显示了用于生成演示应用程序的 Docker 映像的 Dockerfile 的内容。为了构建图像我们使用 docker build -t langchain-chat-app .Docker 优化以实现轻量级和快速构建 在为企业应用程序部署应用程序时我们必须注意所利用的资源以及执行/部署生命周期计算。 我们还解决了如何优化 Docker 构建过程以解决镜像大小问题并在每次源代码更改迭代时快速构建的问题。 # 用于构建虚拟环境的构建器镜像 FROM python:3.11-buster as builderRUN apt-get update apt-get install -y gitRUN pip install poetry1.4.2ENV POETRY_NO_INTERACTION1 \ POETRY_VIRTUALENVS_IN_PROJECT1 \ POETRY_VIRTUALENVS_CREATE1 \ POETRY_CACHE_DIR/tmp/poetry_cacheENV HOST0.0.0.0 ENV LISTEN_PORT 8080 EXPOSE 8080WORKDIR /app#COPY pyproject.toml ./app/pyproject.toml #COPY poetry.lock ./app/poetry.lock COPY pyproject.toml poetry.lock ./RUN poetry install --without dev --no-root rm -rf $POETRY_CACHE_DIR# 用于仅运行提供的代码及其虚拟环境的运行时镜像 FROM python:3.11-slim-buster as runtimeENV VIRTUAL_ENV/app/.venv \ PATH/app/.venv/bin:$PATHCOPY --frombuilder ${VIRTUAL_ENV} ${VIRTUAL_ENV}COPY ./demo_app ./demo_app COPY ./.streamlit ./.streamlitCMD [streamlit, run, demo_app/main.py, --server.port, 8080]在此 Dockerfile 中我们有两个运行时映像标签。在第一个中我们创建一个 Poetry 环境来形成一个虚拟环境。尽管应用程序在第二运行时映像中运行但应用程序是在激活第一步中创建的虚拟环境后运行的。 接下来我们将使用 构建 Docker 映像DOCKER_BUILDKIT它提供了现代工具来快速安全地创建 Docker 映像。 DOCKER_BUILDKIT1 docker build --targetruntime . -t langchain-chat-app:latestDocker-compose.yaml 文件 为了运行该应用程序我们还包含docker-compose.yml以下内容 version: 3 services: langchain-chat-app: image: langchain-chat-app:latest build: ./app command: streamlit run demo_app/main.py --server.port 8080 volumes: - ./demo_app/:/app/demo_app ports: - 8080:8080要在本地服务器上运行该应用程序请使用以下命令 docker-compose up基础设施 借助对 Docker 的支持可以按照基本指南将该应用程序部署到任何云基础设施。我们在以下基础设施上部署了该应用程序 Streamlit 公共云 使用 GitHub 帐户和存储库在其公共云上部署 Streamlit 应用程序 谷歌应用引擎 我们尝试使用 Docker 在 Google App Engine 上部署应用程序。该存储库包含一个app.yaml用于部署以下内容的配置文件 # 使用Dockerfile runtime: custom env: flex # 运行此示例会产生 App Engine 弹性环境的费用。 # 下面的设置是为了在测试期间降低成本不适用于生产环境。manual_scaling: instances: 1 resources: cpu: 1 memory_gb: 0.5 disk_size_gb: 10为了在 Google App Engine 上部署聊天应用程序我们在安装 gcloud Python SDK 后使用了以下命令 gcloud app create --project[YOUR_PROJECT_ID] gcloud config set project [YOUR_PROJECT_ID] gcloud app deploy app.yaml可以通过以下方式访问部署在 Google App Engine 上的示例应用程序: 使用 Google Cloud Run 部署应用 我们还可以使用GCP的Cloud Run服务将应用程序部署在Google Cloud上。使用 Cloud Run 部署应用程序比 Google App Engine 更快。 以下是采用该方法的相关特点 将应用程序打包在容器中。将容器推送到工件注册表。从推送的容器部署服务。 让我们逐步了解使用 Google Cloud Run 部署应用程序所遵循的步骤。我们假设已经在 Google Cloud 上创建了一个项目。 1.启动服务 可以使用以下方式启用服务gcloud sdk gcloud services enable cloudbuild.googleapis.com gcloud services enable run.googleapis.com2. 创建角色并将其添加到服务帐户 使用以下命令集我们创建一个服务帐户并设置适当的权限。修改服务SERVICE_ACCOUNT and PROJECT_ID gcloud iam service-accounts create langchain-app-cr \ --display-namelangchain-app-crgcloud projects add-iam-policy-binding langchain-chat \ --memberserviceAccount:langchain-app-crlangchain-chat.iam.gserviceaccount.com \ --roleroles/run.invokergcloud projects add-iam-policy-binding langchain-chat \ --memberserviceAccount:langchain-app-crlangchain-chat.iam.gserviceaccount.com \ --roleroles/serviceusage.serviceUsageConsumergcloud projects add-iam-policy-binding langchain-chat \ --memberserviceAccount:langchain-app-crlangchain-chat.iam.gserviceaccount.com \ --roleroles/run.admin3.生成并推送Docker镜像 使用以下命令我们可以生成镜像并将其推送到ArtifactsRegistry。但是如果这是第一次我们需要创建具有 Docker 占位符权限的存储库 DOCKER_BUILDKIT1 docker build --targetruntime . -t australia-southeast1-docker.pkg.dev/langchain-chat/app/langchain-chat-app:latest docker push australia-southeast1-docker.pkg.dev/langchain-chat/app/langchain-chat-app:latest以下是生成工件存储库和分配权限所需的命令 gcloud auth configure-docker australia-southeast1-docker.pkg.devgcloud artifacts repositories create app \ --repository-formatdocker \ --locationaustralia-southeast1 \ --descriptionA Langachain Streamlit App \ --async现在将部署该应用程序。 结论 本文深入探讨了开发和部署由 LangChain、OpenAI API 和 Streamlit 提供支持的聊天应用程序所需的各种工具和技术。在此过程中还利用了Docker框架。 该应用程序演示可在 Streamlit 公共云和 Google App Engine 上使用。由于 Docker 支持开发人员可以将其部署在他们喜欢的任何云平台上。 小结 今天我们认识了使用 Docker 和 Streamlit 构建和部署 LangChain 支持的聊天应用程序相信大家看完有一定的收获。 种一棵树的最好时间是十年前其次是现在 把握好当下合理利用时间努力奋斗相信大家一定会实现自己的目标加油创作不易辛苦各位小伙伴们动动小手三连一波~~~本文中也有不足之处欢迎各位随时私信点评指正 This post was originally published on Level Up Coding and is reprinted with permission.
http://www.pierceye.com/news/97290/

相关文章:

  • 手机网站可以做英文版本吗怎么自己购买域名 建设网站
  • 茂港手机网站建设公司如何将音乐上传到wordpress
  • 做房地产网站wordpress 文章页面模板
  • 深圳做app网站建设网站申请支付宝支付
  • 巴音郭楞库尔勒网站建设知名企业门户网站建设
  • 免费域名申请哪个网站好去除wordpress 广告插件
  • 塘厦做网站定制和订制有什么区别
  • 昆明网站空间好习惯网站
  • 做导航网站赚钱吗建立网站需要多少钱费用
  • 大同网站建设哪家好网站后台登录模板html
  • 网站建设过程中准备的工作手机制作网站
  • 做专业网站设计多少钱代理小企业网站建设
  • 怎样提升网站关键词免费的html模版下载
  • 栖霞网站定制三合一建站网站
  • 免费建立一个个人网站设计官网登录入口
  • 门户网站模板之家北京网上服务平台
  • 合肥网站优化方案东莞做网站那家好
  • 个人备案网站可以做论坛吗山东住房建设厅官网站首页
  • 寺院网站模板网站策划制作公司 北京
  • 昆山教育云平台网站建设宁晋县建设局网站
  • 廊坊网站公司dw做网站背景音乐
  • 阜南做网站搜索引擎优化seo多少钱
  • 贵州建设厅网站怎样查询电工证天津网站备案
  • 常州做网站的公司在盐城做网站的网络公司电话
  • seo站外推广如何用wampp 做网站
  • 怎样用手机做网站中企动力百度百科
  • 哪些网站可以做任务挣钱免费app软件
  • 国内简约网站平潭县机场建设网站
  • wordpress 全站通知wordpress怎样打开速度快
  • 广州市建设职业培训学校网站移除wordpress版本