File size: 1,002 Bytes
3a87a16 d6faa4c e48047d d6faa4c e48047d 3a87a16 bfeb704 d6faa4c 3a87a16 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | FROM python:3.11-slim
WORKDIR /app
COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt
# ── 构建时预下载两个模型,冷启动无需联网 ──────────────────────────────────────
# EN / AR 模型:GLiNER 零样本多语言(~1 GB)
RUN python -c "\
from gliner import GLiNER; \
GLiNER.from_pretrained('urchade/gliner_multi-v2.1', cache_dir='/app/model_cache')"
# ZH 模型:BERT 专用中文 NER(~400 MB)
RUN python -c "\
from transformers import pipeline; \
pipeline('token-classification', \
model='shibing624/bert4ner-base-chinese', \
model_kwargs={'cache_dir': '/app/model_cache'}, \
aggregation_strategy='simple')"
COPY app/ app/
COPY run.py .
ENV HOST=0.0.0.0
ENV PORT=7860
ENV MODEL_CACHE_DIR=/app/model_cache
ENV EN_MODEL_NAME=urchade/gliner_multi-v2.1
ENV ZH_MODEL_NAME=shibing624/bert4ner-base-chinese
EXPOSE 7860
CMD ["python", "run.py"]
|