美文网首页
CoreNLP 4.40镜像包制作

CoreNLP 4.40镜像包制作

作者: kekefund | 来源:发表于2022-05-02 16:31 被阅读0次

    一、Dockerfile文件

    CoreNLP是斯坦福(Stanford) NLP组(Group)用Java开发的自然语言处理包,开发中调用采用docker形式提供服务,是最方便和对原有程序解耦最彻底的。

    Dockerfile:

    FROM java:jre-alpine
    
    RUN apk add --update --no-cache \
           unzip \
           wget
    
    COPY stanford-corenlp-chinese-4.4.0.zip /
    RUN unzip stanford-corenlp-chinese-4.4.0.zip
    
    WORKDIR stanford-corenlp-4.4.0
    
    RUN export CLASSPATH="`find . -name '*.jar'`"
    
    ENV PORT 9000
    EXPOSE $PORT
    
    CMD java -cp "*" -mx4g edu.stanford.nlp.pipeline.StanfordCoreNLPServer
    

    其中, stanford-corenlp-chinese-4.4.0.zip 是和Dockerfile放在同一个目录下,是从https://stanfordnlp.github.io/CoreNLP/download.html 下载,

    将2下载的stanford-corenlp-4.4.0-models-chinese.jar 放入1的压缩包中,就是新的stanford-corenlp-chinese-4.4.0.zip。

    github上下载非常慢,我已提交到百度网盘,方便大家下载:

    链接: https://pan.baidu.com/s/1_9pSxYaH9NVCTZkl6bTvlg 提取码: 8p6o
    

    二、制作镜像

    make.sh:

    docker build -t cbbing/corenlp_with_chinese:4.4.0 .
    

    执行过程:

    MacBook-Pro CoreNLP % sh make.sh
    [+] Building 15.9s (11/11) FINISHED
     => [internal] load build definition from Dockerfile                                                                                                                    0.1s
     => => transferring dockerfile: 37B                                                                                                                                     0.0s
     => [internal] load .dockerignore                                                                                                                                       0.0s
     => => transferring context: 2B                                                                                                                                         0.0s
     => [internal] load metadata for docker.io/library/java:jre-alpine                                                                                                     15.3s
     => [internal] load build context                                                                                                                                       0.4s
     => => transferring context: 59B                                                                                                                                        0.0s
     => [1/6] FROM docker.io/library/java:jre-alpine@sha256:6a8cbe4335d1a5711a52912b684e30d6dbfab681a6733440ff7241b05a5deefd                                                0.0s
     => CACHED [2/6] RUN apk add --update --no-cache        unzip        wget                                                                                               0.0s
     => CACHED [3/6] COPY stanford-corenlp-chinese-4.4.0.zip /                                                                                                              0.0s
     => CACHED [4/6] RUN unzip stanford-corenlp-chinese-4.4.0.zip                                                                                                           0.0s
     => CACHED [5/6] WORKDIR stanford-corenlp-4.4.0                                                                                                                         0.0s
     => CACHED [6/6] RUN export CLASSPATH="`find . -name '*.jar'`"                                                                                                          0.0s
     => exporting to image                                                                                                                                                  0.0s
     => => exporting layers                                                                                                                                                 0.0s
     => => writing image sha256:8ff3dc6cb044148a34ae57fd50be32cf0d74ed5f7c5e1cdd51297d36c549a8c5                                                                            0.0s
     => => naming to docker.io/cbbing/corenlp_with_chinese:4.4.0
    

    三、dockerhub下载

    CoreNLP4.4.0支持中文,我已经提交到dockerhub,可以直接下载使用。地址为:https://hub.docker.com/repository/docker/cbbing/corenlp_with_chinese

    四、CoreNLP使用

    启动Docker:

    docker run -d -p 9004:9000 --name corenlp_c cbbing/corenlp_with_chinese:4.4.0
    

    访问本机的9004端口,例如http://192.168.3.11:9004 (不能用0.0.0.0:9004)

    输入中文文本:

    5月1日,由国药集团中国生物北京生物制品研究所研发的奥密克戎变异株新冠病毒灭活疫苗临床研究正式在杭州启动,并于当天完成第一剂接种。
    

    当然,英文也没问题,不过语言必须也得选Chinese,没搞明白这个逻辑:

    注意,Docker容器分配内存至少4G,如果少了可能容器会因内存不足被killed。

    相关文章

      网友评论

          本文标题:CoreNLP 4.40镜像包制作

          本文链接:https://www.haomeiwen.com/subject/aykvyrtx.html