MetaMap Java API
MetaMap 主程序
JDK安装包,eclipse安装包
Ubuntu14
需要先安装jdk,这个很容易找到教程例如https://www.linuxidc.com/Linux/2017-02/140908.htm
在UMLS(https://utslogin.nlm.nih.gov/cas/login?service=https%3a%2f%2fmmtx.nlm.nih.gov%2fdownload%2fpublic_mm_linux_javaapi_2016v2.tar.bz2)申请一个账号,需要审批,可能会隔一天审批通过。申请信息要仔细填,不然很容易不通过
从MetaMap官网(https://mmtx.nlm.nih.gov/JavaApi.shtml)下载安装包
将上面下载的两个压缩包解压tar -jxvf public_mm_linux_main_2016v2.tar.bz2tar -jxvf public_mm_javaapi_2016v2.tar.bz2解压后都是public_mm文件夹,建议这样放/MetaMap/public_mm —— Java API/MetaMap/public_mm_main_2016v2/public_mm ——主程序
执行两个public_mm里面的./bin/install.sh官网的教程是只执行/MetaMap/public_mm_main_2016v2/public_mm/bin/install.sh,可这样不能运行mmserver,也就不能使用Java API
把/MetaMap/public_mm/bin 的内容拷贝到/MetaMap/public_mm_main_2016v2/public_mm/bin,有重复的直接跳过就好
执行 ./bin/skrmedpostctl start./bin/wsdserverctl start官网给出的解释是,需要语义消歧的时候启动wsdserver,不需要就不用执行第二行。然而,我遇到一个问题(下图)Tagger Server不能启动,这时候就需要上面两句都执行过才可以。
然后就可以试着运行/MetaMap/public_mm_main_2016v2/public_mm/bin/metamap(或者metamap16)在'|:'后面输入文本,按两次回车,会显示结果。可以重复输入,下图是输入了“high blood pressure”的结果
上面是在终端使用metamap需要使用MetaMap Java API时,执行./bin/mmserver结果如下图,不要关闭终端可以参考https://mmtx.nlm.nih.gov/Docs/README_javaapi.shtml#Getting%20Raw%20MetaMap%20Machine%20Output 里面的代码
可能会遇到端口错误,修改./bin/SKRrun.16里面的端口。如果还报错,可能是wsdserver没有启动
执行./install.sh时要仔细看终端里的信息,如果出现缺少某个文件或文件夹,可以从另一个public_mm复制过来