成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在Kubernetes上部署生成式人工智能應用程序的分步指南

譯文
人工智能
本指南提供了在Kuberneste上部署生成式人工智能應用程序以實現(xiàn)高可用性的一種全面而詳細的方法。

譯者 | 李睿

審校 | 重樓

在當今快節(jié)奏的技術和市場環(huán)境中,高效地部署人工智能(AI)/機器學習(ML)應用程序至關重要。Kubernetes是一個強大的開源平臺,已經(jīng)成為管理和擴展容器化應用程序的領先解決方案,確保它們在各種環(huán)境中無縫運行。

指南中,將引導開發(fā)人員逐步完成在Kubernetes上部署任何AI/ML應用程序的過程。從容器化應用程序到設置Kubernetes集群,再到部署AI/ML應用程序,涵蓋了所有內(nèi)容。

為什么在Kubernetes上部署生成式人工智能應用程序?

在Kubernetes上部署AI/ML應用程序為管理復雜的AI/ML工作負載提供了一個強大的解決方案。其主要優(yōu)點之一是可擴展性。Kubernetes可以自動擴展基礎設施,有效地適應不同的工作負載,并確保根據(jù)需求有效地分配資源。這種自動擴展功能對于處理AI/ML任務中涉及的大型計算至關重要。

此外,Kubernetes支持多云和混合云環(huán)境,提供靈活性并避免供應商鎖定。它為開發(fā)、測試和部署提供了一致和統(tǒng)一的運行環(huán)境,增強了數(shù)據(jù)科學家和工程師之間的協(xié)作。

Kubernetes還確保了高可用性和容錯性,自動替換或重新調(diào)度失敗的容器,確保了AI/ML應用程序的可靠性和健壯性。此外,它簡化了許多操作,包括更新和回滾,允許團隊更多地專注于構建AI/ML模型,而不是管理基礎設施。

先決條件

  • Docker Desktop安裝容器化應用程序。
  • 在安裝Minikube之后,將使用Minikube創(chuàng)建一個單節(jié)點集群。
  • 下載并安裝Node.js,因為示例應用程序是Node.js應用程序。
  • 注冊一個免費的SingleStore數(shù)據(jù)庫云帳戶,將應用程序與數(shù)據(jù)庫集成。

教程

首先注冊一個GitHub賬戶。

然后將已經(jīng)可用的openai-quickstart-node存儲庫克隆到本地。

git clone https://github.com/pavanbelagatti/openai-quickstart-node.git

再導航到項目目錄。

cd openai-quickstart-node

安裝項目需求和依賴項。

npm install

創(chuàng)建一個.env文件并添加OpenAI API密鑰。

touch .env

在.env文件中,將OpenAI Key添加為環(huán)境變量,如下所示

OPENAI_API_KEY=<Add Your OpenAI API Key>

使用以下命令運行應用程序。

npm run dev

可以在Local 3000上看到應用程序。

為應用程序編寫一個Dockerfile將其容器化

Dockerfile 
 touch Dockerfile

在其中添加以下Dockerfile說明。

Dockerfile 
 # Use the official Node.js image as a parent image
 FROM node:14-alpine as build

 # Set the working directory in the Docker container
 WORKDIR /app

 # Copy the package.json and package-lock.json files into the container at /app
 COPY package*.json ./

 # Install the dependencies
 RUN npm install

 # Copy the local files into the container at /app
 COPY . .

 # Build the application
 RUN npm run build

 # Start from a smaller image to reduce image size
 FROM node:14-alpine as run

 # Set the working directory in the Docker container
 WORKDIR /app


 # Copy over dependencies
 COPY --from=build /app/node_modules ./node_modules
 COPY --from=build /app/.next ./.next
 COPY --from=build /app/public ./public
 COPY --from=build /app/package*.json ./

 # Expose port 3000 for the app to be accessible externally
 EXPOSE 3000

 # Command to run the application
 CMD ["npm", "start"]

構建、標記并將其推送到DockerHub。

docker build -t <image name>

注:將圖像命名為generativeai-node-app

然后啟動容器。

已經(jīng)建立圖像!現(xiàn)在是使用以下命令啟動帶有指定端口的Docker容器時候了:

docker run -p 3002:3002 generativeai-node-app

然后用DockerHub憑證重新構建它。

docker build -t <your dockerhub username>/<image name>

將圖像推送到DockerHub。

docker push <your dockerhub username>/<image name>

可以通過訪問DockerHub來確認圖像是否被推送。

在Kubernetes上部署和公開應用程序

為了部署和公開應用程序,需要兩個yaml文件:deployment.yamlservice.yaml

其中一個文件包含部署說明,另一個文件包含服務公開說明。

首先看看deployment.yaml文件。

YAML 
 apiVersion: apps/v1
 kind: Deployment
 metadata:
 name: genai-app
 spec:
 replicas: 2
 selector:
 matchLabels:
 app: genai-app
 template:
 metadata:
 labels:
 app: genai-app
 spec:
 containers:
 - name: genai-app
 image: pavansa/generativeai-node-app:latest
 ports:
 - containerPort: 3000

以下是service.yaml文件

YAML 
 apiVersion: v1
 kind: Service
 metadata:
 name: genai-app-service
 spec:
 selector:
 app: genai-app
 ports:
 - protocol: TCP
 port: 80
 targetPort: 3000
 type: LoadBalancer

以下使用Minikube創(chuàng)建一個單節(jié)點Kubernetes集群,并將使用它來部署應用程序。

使用以下的命令啟動Minikube。

minikube start

這是應該看到的輸出。

保持Docker Desktop運行,并在其中啟用Kubernetes。以下圖片僅供參考。

使用下面的命令應用部署文件。

kubectl apply -f deployment.yaml

類似地,應用service yaml文件。

kubectl apply -f service.yaml

首先使用下面的命令檢查pod的狀態(tài)。

kubectl get pods

應該看到所需的輸出如下圖所示

以下檢查一下應用程序的部署狀態(tài),看看所需的pod是否按預期運行。

kubectl get deployment

檢查一下應用程序的服務狀態(tài)。

kubectl get service

以下看看是否可以公開應用程序并訪問它。

minikube service <add your application service name> --url

應該看到下面的輸出,并且能夠訪問應用程序。

可以看到URL鏈接,以訪問應用程序。

現(xiàn)在將應用程序容器化,使用Kubernetes進行部署和公開。

為應用程序集成數(shù)據(jù)庫

在Kubernetes上成功部署和公開AI/ML應用程序之后,可能需要一個健壯且可擴展的數(shù)據(jù)庫來處理應用程序數(shù)據(jù)。SingleStore是一個高性能、可擴展的SQL數(shù)據(jù)庫,非常適合AI/ML應用程序。在本節(jié)將指導完成將SingleStore數(shù)據(jù)庫集成到kubernetes部署的應用程序中的過程。

需要一個免費的SingleStore云帳戶。

創(chuàng)建一個工作區(qū),然后創(chuàng)建適合應用程序的數(shù)據(jù)庫和表。

轉到SQL編輯器,如下圖所示:

使用下面的SQL語句創(chuàng)建一個新數(shù)據(jù)庫

-- create a database
CREATE DATABASE <database name>;

接下來,使用USE命令切換到新數(shù)據(jù)庫。

USE <database name>;

然后,用所需的模式在新數(shù)據(jù)庫中創(chuàng)建一個表。

-- create a table
CREATE TABLE <table name> (
);

可以在SQL編輯器中粘貼這些SQL命令,突出顯示它們,然后單擊Run按鈕。

在這個教程中,可以找到創(chuàng)建數(shù)據(jù)庫、表和在表中提供信息的整個過程。

更新Kubernetes部署配置

如果SingleStore數(shù)據(jù)庫運行在Kubernetes集群之外,可以更新應用程序的Kubernetes部署配置,以允許連接到SingleStore數(shù)據(jù)庫。

YAML 
 apiVersion: apps/v1

kind: Deployment
 ...
 spec:
 containers:
 - name: genai-app
 ...
 env:
 - name: DB_HOST
 value: "<Your SingleStore DB Host>"
 - name: DB_PORT
 value: "<Your SingleStore DB Port>"
 ...

重新部署應用程序

應用更新后的Kubernetes部署配置,重新部署與SingleStore集成的應用程序。

Kubectl apply -f deploy .yaml

驗證集成

在重新部署之后,需要驗證應用程序是否成功連接到SingleStore數(shù)據(jù)庫,并按預期執(zhí)行數(shù)據(jù)庫操作。

通過執(zhí)行這些步驟,已經(jīng)成功地將SingleStore數(shù)據(jù)庫集成到Kubernetes部署的AI/ML應用程序中,為管理應用程序數(shù)據(jù)提供了一個健壯且可擴展的解決方案。

結論

現(xiàn)在成功完成了在Kubernetes上部署AI/ML應用程序的綜合步驟這一指南引導開發(fā)人員完成了從容器化應用程序到在Kubernetes上部署和公開應用程序的每個重要階段。

當繼續(xù)探索和增強AI/ML部署時,需要考慮集成像SingleStore這樣的高性能數(shù)據(jù)庫來無縫地管理應用程序數(shù)據(jù)。SingleStore提供可擴展性、速度和效率,確保AI/ML應用程序在強大的數(shù)據(jù)庫后端以最佳方式運行。

原文標題:Deploying GenAI Applications on Kubernetes: A Step-By-Step Guide,作者:Pavan Belagatti

責任編輯:華軒 來源: 51CTO
相關推薦

2024-05-10 09:38:01

人工智能

2025-04-09 08:14:03

2025-05-06 08:09:02

2023-11-13 11:35:09

人工智能

2021-02-20 09:57:02

人工智能移動應用

2024-07-09 09:00:00

2025-02-28 08:31:26

2023-12-25 22:27:38

2023-03-23 16:55:32

人工智能Adobe

2023-08-02 18:26:31

2023-05-05 14:02:59

人工智能聊天機器人

2023-08-08 18:08:17

2012-05-29 11:02:23

ibmdw

2022-05-23 14:48:44

人工智能機器學習科技

2023-08-29 11:36:49

2023-09-15 10:01:04

2023-05-09 10:16:42

人工智能python版本

2023-04-18 10:47:32

2024-04-18 16:12:10

2024-02-04 09:41:51

人工智能
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产一区二区在线免费观看 | 久久午夜精品 | 欧美精品1区2区 | 日日草天天干 | 久久久久亚洲 | 久久久久国产视频 | 国产一区二区a | 中文字幕亚洲视频 | av永久| 在线不卡 | 成人1区2区 | 亚洲成av人片在线观看无码 | 在线视频一区二区三区 | 欧美日韩久久 | 91爱啪啪 | 成人三级视频 | www.久久.com | 成人在线h | 亚洲免费观看 | 韩三级在线观看 | 在线免费观看黄视频 | 国产剧情一区二区三区 | 九九视频网 | 中文字幕一区二区三区乱码在线 | 99色综合 | 精品自拍视频在线观看 | 一区二区三区视频在线 | 国产精品福利久久久 | 在线观看亚洲专区 | 午夜视频一区 | 91久久精品一区二区二区 | 黄色免费在线观看网站 | 久久99国产精品 | 久久久免费电影 | 欧美激情亚洲激情 | 国产精品视频网 | 国产免费一二三区 | 久久这里只有精品首页 | 欧美日韩在线精品 | 久久精品国产99国产精品 | 久久亚洲国产 |