Azure chatgpt demo部署 ——AWS EC2 Docker部署

44 篇文章 4 订阅
19 篇文章 0 订阅

Github地址

https://github.com/microsoft/sample-app-aoai-chatGPT?tab=readme-ov-file#environment-variables

取2023年7月23日代码。

使用Amazon Linux 2 AMI 的arm 64版本镜像, t4g.medium实例。

需要安装git,可能需要安装 pip3等

sudo apt-get install -y python3-pip

然后从如下地址clone代码

https://github.com/microsoft/sample-app-aoai-chatGPT.git

如果不使用requirement.txt安装依赖库,则可能会提示没有版本号,需要如下方法解决

python3 -m pip install --user --upgrade pip

requirement.txt中需要注意版本号,因为Dockerfile需要从中读取flask、werkzeug等版本信息,否则会出现版本号不对应等问题。注意:如果本地部署,可能需要更新pip源。

Name: Werkzeug
Version: 2.2.3

Name: Flask
Version: 2.2.2

Name: requests
Version: 2.31.0

urllib3==1.26.15

uvicorn==0.24.0

gunicorn==20.1.0

openai对应api的版本问题,可以在requirement.txt中指定 openai的版本号为0.27.7或0.28

安装和启动docker 等

yum install docker
sudo systemctl restart docker

生成等

sudo docker build -t 'gpt' .
sudo docker run -d -p 80:80 --name chatgpt gpt

Q&A

问题1:需要用到4G及内存以上,否则会在在docker build时,报错

=> [frontend 9/9] RUN npm run build                                                                                                                                    250.2s 
 => => # [16:0xffffbaf195c0]    31747 ms: Mark-Compact (reduce) 917.1 (938.4) -> 917.0 (939.1) MB, 966.76 / 0.02 ms  (+ 29.4 ms in 6 steps since start of marking, biggest ste 
 => => # p 12.0 ms, walltime since start of marking 1018 ms) (average mu = 0.337, current mu = 0.19[16:0xffffbaf195c0]    33415 ms: Mark-Compact (reduce) 919.1 (940.6) -> 918 
 => => # .8 (941.1) MB, 1450.30 / 0.00 ms  (average mu = 0.227, current mu = 0.130) allocation failure; GC in old space requested                                             
 => => # <--- JS stacktrace --->                                                                                                                                              
 => => # FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory                                                                                    
 => => # ----- Native stack trace -----  

问题2:docker 启动后报lifespan,运行程序时报 internet server error

TypeError: Flask.__call__() missing 1 required positional argument: 'start_response'

解决方法,进入gunicorn.conf.py文件中,注释掉uvicorn相关内容

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于Docker部署ChatGPT,你可以按照以下步骤进行操作: 1. 首先,构建一个Docker镜像。在项目根目录下创建一个名为Dockerfile的文件,并写入以下内容: ``` FROM python:3.8-slim-buster WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . CMD ["python", "app.py"] ``` 2. 在项目根目录下创建一个名为requirements.txt的文件,并将ChatGPT所需的Python包添加到文件中,例如: ``` transformers==4.11.3 torch==1.9.0 fastapi==0.68.1 uvicorn==0.15.0 ``` 3. 在项目根目录下创建一个名为app.py的文件,并编写一个基本的FastAPI应用程序,用于与ChatGPT进行交互。以下是一个简单示例: ```python from fastapi import FastAPI app = FastAPI() @app.get("/") def root(): return {"message": "Hello, ChatGPT!"} ``` 4. 然后,使用以下命令构建Docker镜像: ``` docker build -t chatgpt . ``` 这将根据Dockerfile中的配置构建一个名为chatgpt的镜像。 5. 接下来,运行镜像并将应用程序映射到主机的端口。使用以下命令运行容器: ``` docker run -d -p 8000:8000 chatgpt ``` 这将在后台运行一个名为chatgpt的容器,并将容器内部的端口8000映射到主机的端口8000。 现在,ChatGPT应用程序将在Docker容器中运行,并通过主机的端口8000进行访问。你可以通过访问http://localhost:8000/来验证应用程序是否正常运行,并根据需要进行进一步的定制和部署

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值