# 工具集 本文介绍AI Express相关工具集,注意:该文档仅仅介绍工具使用方式,不展开将使用教学,可以新搞一个文档链过去,比如:性能profile最佳实践 ## 数据流可视化工具 XStream内的数据流是通过配置json文件来生成的,框架内目前已对数据流配置是否有效进行了检查,而此工具可将配置的json文件数据流向图可视化,生成一份自定义格式的文档或图片,以直观的方式展现json文件中的数据流向。 工具位于`source/common/xstream/framework/tools/xstream_framework_datashow.py` **1. 准备环境**:工具通过python3 + graphviz + dot实现,使用前需安装 python3(推荐python3.5.2)、graphviz库、json库 **2. 使用工具**:使用该文件的运行格式为:python xstream_framework_datashow.py xxx.json **3. 可视化后的workflow**: * 某个node的inputs得不到feed,图中体现为:绿色填充,标签中带有字段:(No-Feed) * 全局inputs和全局outputs重名,图中体现为:红色双箭头边相连,边带有字段:same-global-inputs-outputs * 某些node间的outputs重名,图中体现为:浅蓝色双箭头边相连,边带有字段:same-node-outputs ## Python-Workflow构建工具 XStream中Workflow是通过Json配置文件来描述的。当一个Workflow变得复杂时,Json配置文件则变得冗长,增加维护的困难性,体现在如下几个方面: * 串联各个节点的输入和输出名字需要手动填写,容易出错或者造成命名冲突。 * 各个节点的顺序关系要保证,对于不熟悉的开发者来说,需要花时间去梳理Node的逻辑关系之后才能添加新的Node。 * 无法快速的发现并去除冗余路径上面的节点。 * 图可能出现环路。 经过实践发现,构建Workflow的过程其实和编程类似。Json在这个地方就是起到了编程语言的作用。与其发明一种新的语言,就不如使用如今非常流行的Python语言来实现快速构建Workflow,并解决上面的问题。可以通过下面命令,来安装Python-Workflow构建工具 ```bash cd source/common/xstream/python_api pip install -e ``` 安装成功之后便可以使用了。详细参见[Python-Workflow构建](./xstream-python-workflow.md) ## 性能Profiler工具 开发中.. ## 渲染可视化工具 开发中..