KGLM代码分析:run.py

#!/usr/bin/env python
import logging
#logging模块是Python内置的标准模块,主要用于输出运行日志,可以设置输出日志的等级、日志保存路径、日志文件回滚等;
import os
#os 模块提供了非常丰富的方法用来处理文件和目录。
import sys
#系统特定的参数和功能

if os.environ.get('ALLENNLP_DEBUG'):
    LEVEL = logging.DEBUG
else:
    LEVEL = logging.INFO
#os.environ.get()是python中os模块获取环境变量的一个方法

sys.path.insert(0, os.path.dirname(os.path.abspath(os.path.join(__file__, os.pardir))))
#sys.path是个列表,所以在末尾添加目录是很容易的,用sys.path.append就行了。当这个append执行完之后,新目录即时起效,以后的每次import操作都可能会检查这个目录。如同解决方案所示,可以选择用sys.path.insert(0,…,这样新添加的目录会优先于其他目录被import检查
#语法:os.path.dirname(path) 功能:去掉文件名,返回目录 
#os.path.abspath(__file__) 作用: 获取当前脚本的完整路径
#os.path.join()函数:连接两个或更多的路径名组件
#os.pardir() 获取当前目录的父目录(上一级目录),以字符串形式显示目录名。

logging.basicConfig(format='%(asctime)s - %(levelname)s - %(name)s - %(message)s',
                    level=LEVEL)
# # 设置日志级别

# pylint: disable=wrong-import-position
from allennlp.commands import main
from kglm.commands import EvaluatePerplexity
from kglm.commands import CompleteTheSentence

if __name__ == "__main__":
    main(prog="allennlp",
         subcommand_overrides={
             'evaluate-perplexity': EvaluatePerplexity(),
             'complete-the-sentence': CompleteTheSentence(),
         })
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容