Spaces:
Sleeping
Sleeping
fix: Set HF_HOME in Dockerfile and use JSONResponse in app.py
Browse files- Dockerfile +1 -0
- app.py +3 -2
Dockerfile
CHANGED
|
@@ -3,6 +3,7 @@ FROM python:3.9-slim
|
|
| 3 |
|
| 4 |
# 设置工作目录
|
| 5 |
WORKDIR /app
|
|
|
|
| 6 |
|
| 7 |
# 复制依赖文件并安装
|
| 8 |
COPY requirements.txt .
|
|
|
|
| 3 |
|
| 4 |
# 设置工作目录
|
| 5 |
WORKDIR /app
|
| 6 |
+
ENV HF_HOME=/app/.cache
|
| 7 |
|
| 8 |
# 复制依赖文件并安装
|
| 9 |
COPY requirements.txt .
|
app.py
CHANGED
|
@@ -1,4 +1,5 @@
|
|
| 1 |
-
from fastapi import FastAPI, Request
|
|
|
|
| 2 |
from pydantic import BaseModel
|
| 3 |
from transformers import pipeline
|
| 4 |
import asyncio
|
|
@@ -54,7 +55,7 @@ class TranslationResponse(BaseModel):
|
|
| 54 |
@app.post("/translate", response_model=TranslationResponse)
|
| 55 |
async def translate_text(request: TranslationRequest):
|
| 56 |
if not state["model_loaded"]:
|
| 57 |
-
return
|
| 58 |
|
| 59 |
result = state["translator"](request.text)
|
| 60 |
return {"translated_text": result[0]["translation_text"]}
|
|
|
|
| 1 |
+
from fastapi import FastAPI, Request
|
| 2 |
+
from fastapi.responses import JSONResponse, Response
|
| 3 |
from pydantic import BaseModel
|
| 4 |
from transformers import pipeline
|
| 5 |
import asyncio
|
|
|
|
| 55 |
@app.post("/translate", response_model=TranslationResponse)
|
| 56 |
async def translate_text(request: TranslationRequest):
|
| 57 |
if not state["model_loaded"]:
|
| 58 |
+
return JSONResponse(content={"message": "Model is not loaded yet"}, status_code=503)
|
| 59 |
|
| 60 |
result = state["translator"](request.text)
|
| 61 |
return {"translated_text": result[0]["translation_text"]}
|