训练好的模型怎么给客户用?FastAPI + Docker 是当前最主流的组合。

FastAPI 部分:

from fastapi import FastAPI
from pydantic import BaseModel

app = FastAPI()
model = load_model()  # 启动时加载,请求时直接用

class TextIn(BaseModel):
    text: str

@app.post("/predict")
def predict(item: TextIn):
    result = model(item.text)
    return {"result": result}

跑起来:uvicorn app:app --host 0.0.0.0 --port 8000

Docker 部分(Dockerfile):

FROM python:3.10-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install -r requirements.txt
COPY . .
CMD ["uvicorn", "app:app", "--host", "0.0.0.0", "--port", "8000"]

构建镜像:

docker build -t my-model:v1 .

运行:

docker run -d -p 8000:8000 my-model:v1

客户那边只要装了 Docker,一行命令就能跑起来。模型更新就是换镜像,不会污染客户环境。


本文由 BBZ · 小朵科技工作室 出品。