Search Results for

    Show / Hide Table of Contents

    命令行界面(CLI)

    Chatopera CLI 是连接 Chatopera 机器人平台,管理和维护资源的工具,包括一些常用的命令,辅助开发者实现和管理对话机器人。尤其是在有自动化或批量管理的需要时。CLI 完全基于 Chatopera Node.js SDK。

    • 安装和配置 Chatopera CLI
    • 使用 CLI 导入和导出对话语料

    命令帮助

    打印 CLI 可用命令。

    bot --help
    

    得到类似输出:

    Usage: bot [options] [command]
    
    Options:
      -V, --version           output the version number
      -h, --help              display help for command
    
    Commands:
      details [options]       get a bot's detail info, such as name, primaryLanguage
      connect [options]       chat with bot via bot#conversation interface
      conversation [options]  import or export a bot's conversations data
      trace [options]         tail a bot's conversations logging info
      faq [options]           import or export a bot's faqs data
      dicts [options]         sync, import or export a bot's dicts data
      intents [options]       train, import or export a bot's intents data
      help [command]          display help for command
    

    也可以针对一个命令,获得更多帮助提示,比如:

    bot connect --help
    bot trace --help
    bot conversation --action export --help
    

    获得类似输出:

    Usage: bot connect [options]
    
    Options:
      -c, --clientid [value]      ClientId of the bot
      -s, --clientsecret [value]  Client Secret of the bot, optional, default null
      -u, --username [value]      Username to chat with bot, default: commandline
      -p, --provider [value]      Chatopera Bot Service URL, optional, default
                                  https://bot.chatopera.com
      -fb, --faq-best [value]     FAQ best reply threshold, optional, default 0.8
      -fs, --faq-sugg [value]     FAQ suggest reply threshold, optional, default
                                  0.6
      -h, --help                  display help for command
    

    配置文件

    env

    生成配置文件,对生成的配置文件,需要修改,设置键值对。

    bot env [-fp FOLDER]
    

    默认为当前命令执行所在目录。

    比如:

    bot env -fp /c
    

    将生成配置文件 /c/.env。

    词典

    词典在知识库、多轮对话、意图识别中都有使用和依赖,在导入知识库文件、多轮对话文件或意图识别文件之前,最好是先导入词典文件,以免为使用带来影响。

    export

    导出引用的系统词典、所有自定义词典(词汇表词典和正则表达式词典)。

    举例:

    bot dicts --action export --filepath /tmp/bot.dicts.json
    

    import

    导入引用的系统词典、所有自定义词典(词汇表词典和正则表达式词典)。

    举例:

    bot dicts --action import --filepath /tmp/bot.dicts.json
    

    sync

    触发同步命令,知识库、意图识别和多轮对话同步最新的近义词词典;此步骤将引起数据改写,生产环境宜业务低峰时间段进行。

    bot dicts --action sync
    

    多轮对话

    connect

    连接聊天机器人,在命令行终端连接 BOT 并进行对话。

    示例:

    bot connect -c xxx -s xxx -u zhangsan
    

    其中,clientid和clientsecret从每个机器人的设置页面获取,username代表用户名,是一个不含空格或特殊符号的字符串,每个用户的唯一标识,provider是Chatopera 机器人平台地址,默认为 Chatopera 云服务。

    在对话中,可以使用快捷方式,快速输入。

    快捷方式 Mac OSX / Windows
    回溯历史 ↑ 上箭头;↓ 下箭头
    打印历史 Shift + → 右箭头
    使用索引输入历史,索引根据打印历史获得 输入索引,然后 Ctrl + Shift + Shift + → 右箭头

    export

    导出多轮对话为 c66 文件。

    示例:

    bot conversation --action export --filepath /tmp/bot.conversations.c66
    

    import

    导入多轮对话脚本,在命令行终端发布脚本文件到多轮对话中。

    示例:

    bot conversation --action import --filepath /tmp/bot.conversations.c66
    

    其中 filepath 为 xx.c66 文件,支持相对路径和绝对路径。

    因为多轮对话可能使用了词典,所以宜先导入词典,再导入多轮对话。

    trace

    打印聊天机器人日志:方便调试多轮对话脚本,实时跟踪服务器端日志,排查问题。

    示例:

    bot trace --log-level DEBUG
    

    Log level 可以是 [DEBUG|INFO|WARN|ERROR]。

    知识库

    export

    导出知识库问答对、扩展问和分类信息等,目前 CLI 导入和导出只支持 JSON 格式,欲使用 Excel 从机器人平台浏览器管理界面完成。

    举例:

    bot faq --action export --filepath /tmp/bot.faqs.json
    

    import

    导入知识库问答对、扩展问和分类信息等。

    举例:

    bot faq --action import --filepath /tmp/bot.faqs.json
    

    因为知识库可能使用了词典,所以宜先导入词典,再导入知识库。

    意图识别

    export

    导出意图识别说法、槽位等信息。

    bot intents --action export --filepath /tmp/bot.intents.json
    

    import

    导入意图识别说法、槽位等信息。

    bot intents --action import --filepath /tmp/bot.intents.json
    

    因为意图识别可能使用了词典,所以宜先导入词典,再导入意图识别。

    导入命令也会自动执行训练意图调试分支,训练完成后,命令退出。

    意图识别的导入和导出不会处理生产版本上线信息和操作,需要 Chatopera 机器人平台用户自行维护意图识别模块的生产分支。

    train

    训练意图识别的调试分支。

    bot intents --action train
    

    已知问题

    在 Windows WSL 内调用 SDK,返回异常 invalid timestamp

    错误原因:Windows WSL 的时间同步有 BUG,未能和互联网时间同步。

    解决方案:执行手动的时间同步。

    假设使用的 WSL 发行版本基于 Ubuntu, 那么可以执行下面的命令解决。

    sudo apt-get install ntpdate 
    sudo ntpdate time.windows.com
    

    开源项目

    Chatopera CLI 工具是开源的,更多使用示例参考:

    https://github.com/chatopera/chatopera-nodejs-sdk/tree/master/scripts

    下一步

    • 使用 CLI 导入和导出对话语料
    In This Article
    Back to top Copyright © (2018-CopyrightYearPlaceholderDONOTCHANGEManually) 北京华夏春松科技有限公司 京ICP备20023756号-3