[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-PaddlePaddle--VisualDL":3,"tool-PaddlePaddle--VisualDL":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",147882,2,"2026-04-09T11:32:47",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":75,"owner_location":75,"owner_email":75,"owner_twitter":75,"owner_website":76,"owner_url":77,"languages":78,"stars":113,"forks":114,"last_commit_at":115,"license":116,"difficulty_score":117,"env_os":118,"env_gpu":118,"env_ram":118,"env_deps":119,"category_tags":123,"github_topics":124,"view_count":32,"oss_zip_url":75,"oss_zip_packed_at":75,"status":17,"created_at":130,"updated_at":131,"faqs":132,"releases":173},5910,"PaddlePaddle\u002FVisualDL","VisualDL","Deep Learning Visualization Toolkit（『飞桨』深度学习可视化工具 ）","VisualDL 是百度飞桨（PaddlePaddle）生态中一款功能强大的深度学习可视化工具，旨在帮助开发者“看见”模型训练的内部细节。在深度学习过程中，黑盒般的训练流程往往让人难以定位问题，VisualDL 通过丰富的图表直观展示参数变化趋势、模型结构、数据样本、张量分布直方图、PR\u002FROC 曲线以及高维数据投影等关键信息，让复杂的训练过程和模型架构变得清晰易懂，从而帮助用户高效优化模型。\n\n这款工具特别适合人工智能开发者、算法研究人员及深度学习爱好者使用。其核心亮点在于极简的接入方式：用户只需在训练代码中插入几行 Python 指令，即可实时记录并可视化实验数据。VisualDL 不仅原生支持飞桨框架，还具备高度的兼容性，能够解析 Paddle、ONNX、Caffe 等多种主流模型结构。此外，它提供了一键启动模型结构可视化的便捷功能，并支持通过 VDL.service 轻松保存与分享实验结果。无论是调试网络结构、监控超参数影响，还是分析数据分布，VisualDL 都能以低门槛、高效率的方式，成为你探索深度学习奥秘的得力助手。","[**中文**](.\u002FREADME_CN.md)\n\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FPaddlePaddle\u002FVisualDL\u002Fdevelop\u002Ffrontend\u002Fpackages\u002Fcore\u002Fpublic\u002Fimages\u002Flogo-visualdl.svg?sanitize=true\" width=\"70%\"\u002F>\n\u003C\u002Fp>\n\n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"https:\u002F\u002Factions-badge.atrox.dev\u002FPaddlePaddle\u002FVisualDL\u002Fgoto?ref=develop\">\u003Cimg alt=\"Build Status\" src=\"https:\u002F\u002Fimg.shields.io\u002Fendpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2FPaddlePaddle%2FVisualDL%2Fbadge%3Fref%3Ddevelop&style=flat-square\" alt=\"Build Status\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fvisualdl\u002F\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fvisualdl?style=flat-square\" alt=\"PyPI\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fvisualdl\u002F#files\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fvisualdl?style=flat-square\" alt=\"Downloads\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fblob\u002Fdevelop\u002FLICENSE\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fpaddlepaddle\u002Fvisualdl?style=flat-square\" alt=\"License\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"javascript:void(0)\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FQQ_Group-1045783368-52B6EF?style=social&logo=tencent-qq&logoColor=000&logoWidth=20\" alt=\"QQ Group\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n## Introduction\n\nVisualDL, a visualization analysis tool of PaddlePaddle, provides a variety of charts to show the trends of parameters, and visualizes model structures, data samples, histograms of tensors, PR curves , ROC curves and high-dimensional data distributions. It enables users to understand the training process and the model structure more clearly and intuitively so as to optimize models efficiently.\n\nVisualDL provides various visualization functions, including **tracking metrics in real-time, visualizing the model structure, displaying the data sample, visualizing the relationship between hyperparameters and model metrics, presenting the changes of distributions of tensors, showing the pr curves, projecting high-dimensional data to a lower dimensional space and more.** Additionally, VisualDL provides VDL.service, which enables developers easily to save, track and share visualization results of experiments. For specific guidelines of each function, please refer to  [**VisualDL User Guide**](.\u002Fdocs\u002Fcomponents\u002FREADME.md). For up-to-date experience, please feel free to try our [**Online Demo**](https:\u002F\u002Fwww.paddlepaddle.org.cn\u002Fpaddle\u002Fvisualdl\u002Fdemo). Currently, VisualDL iterates rapidly and new functions will be continuously added.\n\nBrowsers supported by VisualDL are:\n\n- Google Chrome ≥ 79\n- Firefox ≥ 67\n- Microsoft Edge ≥ 79\n- Safari ≥ 11.1\n\nVisualDL natively supports the use of Python. Developers can retrieve plentiful visualization results by simply adding a few lines of Python code into the model before training.\n\n\n\n## Contents\n\n* [Key Highlights](#Key-Highlights)\n* [Installation](#Installation)\n* [Usage Guideline](#Usage-Guideline)\n* [Function Preview](#Function-Preview)\n* [Frequently Asked Questions](#Frequently-Asked-Questions)\n* [Contribution](#Contribution)\n* [More Details](#More-Details)\n* [Technical Communication](#Technical-Communication)\n\n\n\n## Key Highlights\n\n### Easy to Use\n\nThe high-level design of API makes it easy to use. Only one click can initiate the visualization of model structures.\n\n\n### Various Functions\n\nThe function contains the visualization of training parameters, data samples, graph structures, histograms of tensors, PR curves and high-dimensional data distributions.\n\n### High Compatibility\n\nVisualDL provides the visualization of the mainstream model structures such as Paddle, ONNX, Caffe, widely supporting visual analysis for diverse users.\n\n### Fully Support\n\nBy Integrating into PaddlePaddle and related modules, VisualDL allows developers to use different components without obstructions, and thus to have the best experience in the PaddlePaddle ecosystem.\n\n## Installation\n\n\n### Install by PiP\n\n```shell\npython -m pip install visualdl -i https:\u002F\u002Fmirror.baidu.com\u002Fpypi\u002Fsimple\n```\n\n### Install by Code\n\n```\ngit clone https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL.git\ncd VisualDL\n\npython setup.py bdist_wheel\npip install --upgrade dist\u002Fvisualdl-*.whl\n```\n\nPlease note that Python 2 is no longer maintained officially since January 1, 2020. VisualDL now only supports Python 3 in order to ensure the usability of codes.\n\n\n## Usage Guideline\n\nVisualDL stores the data, parameters and other information of the training process in a log file. Users can launch the panel to observe the visualization results.\n\n### 1. Log\n\nThe Python SDK is provided at the back end of VisualDL, and a logger can be customized through LogWriter. The interface description is shown as follows:\n\n```python\nclass LogWriter(logdir=None,\n                max_queue=10,\n                flush_secs=120,\n                filename_suffix='',\n                **kwargs)\n```\n\n#### Interface Parameters\n\n| parameters      | type    | meaning                                                      |\n| --------------- | ------- | ------------------------------------------------------------ |\n| logdir          | string  | The path location of log file. VisualDL will create a log file under this path to record information generated by the training process. If not specified, the path will be  `runs\u002F${CURRENT_TIME}`as default. |\n| max_queue       | int     | The maximum capacity of the data generated before recording in a log file. Default value is 10. If the capacity is reached, the data are immediately written into the log file. |\n| flush_secs      | int     | The maximum cache time of the data generated before recording in a log file. Default value is 120. When this time is reached, the data are immediately written to the log file. (When the log message queue reaches the maximum cache time or maximum capacity, it will be written to the log file immediately)|\n| filename_suffix | string  | Add a suffix to the default log file name.                   |\n| display_name    | string  | This parameter is displayed in the location of `Select Data Stream` in the panel. If not set, the default name is `logdir`.(When `logdir` is too long or needed to be hidden). |\n| file_name    | string  | Set the name of the log file. If the file_name already exists, setting the file_name will be new records in the same log file, which will continue to be used. Note that the name should include 'vdlrecords'. |\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_6e9513e38f94.png\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e6ce974148a4.png\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n#### Example\n\nCreate a log file and record scalar values:\n\n```python\nfrom visualdl import LogWriter\n\n# create a log file under `.\u002Flog\u002Fscalar_test\u002Ftrain`\nwith LogWriter(logdir=\".\u002Flog\u002Fscalar_test\u002Ftrain\") as writer:\n    # use `add_scalar` to record scalar values\n    writer.add_scalar(tag=\"acc\", step=1, value=0.5678)\n    writer.add_scalar(tag=\"acc\", step=2, value=0.6878)\n    writer.add_scalar(tag=\"acc\", step=3, value=0.9878)\n# you can also use the following method without using context manager `with`:\n\"\"\"\nwriter = LogWriter(logdir=\".\u002Flog\u002Fscalar_test\u002Ftrain\")\n\nwriter.add_scalar(tag=\"acc\", step=1, value=0.5678)\nwriter.add_scalar(tag=\"acc\", step=2, value=0.6878)\nwriter.add_scalar(tag=\"acc\", step=3, value=0.9878)\n\nwriter.close()\n\"\"\"\n```\n\n### 2. Launch Panel\n\nIn the above example, the log has recorded three sets of scalar values. Developers can view the visualization results of the log file through launching the visualDL panel. There are two ways to launch the log file:\n\n#### Launch by Command Line\n\nUse the command line to launch the VisualDL panel：\n\n```python\nvisualdl --logdir \u003Cdir_1, dir_2, ... , dir_n> --model \u003Cmodel_file> --host \u003Chost> --port \u003Cport> --cache-timeout \u003Ccache_timeout> --language \u003Clanguage> --public-path \u003Cpublic_path> --api-only --component_tabs \u003Ctab_name1, tab_name2, ...>\n```\n\nParameter details:\n\n| parameters      | meaning                                                      |\n| --------------- | ------------------------------------------------------------ |\n| --logdir        | Set one or more directories of the log. All the logs in the paths or subdirectories will be displayed on the VisualDL Board indepentently. |\n| --model         | Set a path to the model file (not a directory). VisualDL will visualize the model file in Graph page. PaddlePaddle、ONNX、Keras、Core ML、Caffe and other model formats are supported. Please refer to [Graph - Functional Instructions](.\u002Fdocs\u002Fcomponents\u002FREADME.md#functional-instructions-2). |\n| --host          | Specify IP address. The default value is `127.0.0.1`. Specify it as `0.0.0.0` or public IP address so that other machines can visit VisualDL Board.       |\n| --port          | Set the port. The default value is `8040`.                   |\n| --cache-timeout | Cache time of the backend. During the cache time, the front end requests the same URL multiple times, and then the returned data are obtained from the cache. The default cache time is 20 seconds. |\n| --language      | The language of the VisualDL panel. Language can be specified as 'en' or 'zh', and the default is the language used by the browser. |\n| --public-path   | The URL path of the VisualDL panel. The default path is '\u002Fapp', meaning that the access address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002Fapp'. |\n| --api-only      | Decide whether or not to provide only API. If this parameter is set, VisualDL will only provides API service without displaying the web page, and the API address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002F&lt;public_path&gt;\u002Fapi'. Additionally, If the public_path parameter is not specified, the default address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002Fapi'. |\n| --component_tabs  | Decide which components are presented in page, currently support 15 components, i.e. 'scalar', 'image', 'text', 'embeddings', 'audio', 'histogram', 'hyper_parameters', 'static_graph', 'dynamic_graph', 'pr_curve', 'roc_curve', 'profiler', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client'. If this parameter is set, only specified components will be presented. If not set, and specify --logdir parameter, only components with data in vdlrecords log are presented. If both --component_tabs and --logdir are not set, only present 'static_graph', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client' components by default |\n\nTo visualize the log file generated in the previous step, developers can launch the panel through the command:\n\n```\nvisualdl --logdir .\u002Flog\n```\n\n#### Launch in Python Script\n\n\nDevelopers can start the VisualDL panel in Python script as follows:\n\n```python\nvisualdl.server.app.run(logdir,\n                        model=\"path\u002Fto\u002Fmodel\",\n                        host=\"127.0.0.1\",\n                        port=8080,\n                        cache_timeout=20,\n                        language=None,\n                        public_path=None,\n                        api_only=False,\n                        open_browser=False)\n```\n\nPlease note: since all parameters are indefinite except `logdir`, developers should specify parameter names when using them.\n\nThe interface parameters are as follows:\n\n| parameters    | type                                               | meaning                                                      |\n| ------------- | -------------------------------------------------- | ------------------------------------------------------------ |\n| logdir        | string or list[string_1, string_2, ... , string_n] | Set one or more directories of the log. All the logs in the paths or subdirectories will be displayed on the VisualDL Board indepentently.|\n| model         | string                                             | Set a path to the model file (not a directory). VisualDL will visualize the model file in Graph page. |\n| host          | string                                             | Specify IP address. The default value is `127.0.0.1`. Specify it as `0.0.0.0` or public IP address so that other machines can visit VisualDL Board.       |\n| port          | int                                                | Set the port. The default value is `8040`.                   |\n| cache_timeout | int                                                | Cache time of the backend. During the cache time, the front end requests the same URL multiple times, and then the returned data are obtained from the cache. The default cache time is 20 seconds. |\n| language      | string                                             | The language of the VisualDL panel. Language can be specified as 'en' or 'zh', and the default is the language used by the browser. |\n| public_path   | string                                             | The URL path of the VisualDL panel. The default path is '\u002Fapp', meaning that the access address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002Fapp'. |\n| api_only      | boolean                                            | Decide whether or not to provide only API. If this parameter is set, VisualDL will only provides API service without displaying the web page, and the API address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002F&lt;public_path&gt;\u002Fapi'. Additionally, If the parameter public_path is not specified, the default address is 'http:\u002F\u002F&lt;host&gt;:&lt;port&gt;\u002Fapi'. |\n| open_browser  | boolean                                            | Whether or not to open the browser. If this parameter is set as True, the browser will be opened automatically and VisualDL panel will be launched at the same time. If parameter api_only is specified as True,  parameter open_browser can be ignored. |\n| component_tabs | string or list[string_1, string_2, ... , string_n] | Decide which components are presented in page, currently support 15 components, i.e. 'scalar', 'image', 'text', 'embeddings', 'audio', 'histogram', 'hyper_parameters', 'static_graph', 'dynamic_graph', 'pr_curve', 'roc_curve', 'profiler', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client'. If this parameter is set, only specified components will be presented. If not set, and specify --logdir parameter, only components with data in vdlrecords log are presented. If both --component_tabs and --logdir are not set, only present 'static_graph', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client' components by default |\n\nTo visualize the log file generated in the previous step, developers can launch the panel through the command:\n\n```python\nfrom visualdl.server import app\n\napp.run(logdir=\".\u002Flog\")\n```\n\nAfter launching the panel by one of the above methods, developers can see the visualization results on the browser shown as blow:\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e849515bef30.png\" width=\"70%\"\u002F>\n\u003C\u002Fp>\n\n### 3. Read data in log files using LogReader\n\nVisualDL also provides `LogReader` interface to read any data from log files.\n\n```python\nclass LogReader(file_path='')\n```\n#### Interface Parameters\n| parameters | type   | meaning                              |\n| ---------- | ------ | ------------------------------------ |\n| file_path  | string | File path of the log file. Required. |\n#### Example\nIf there is a log file named `vdlrecords.1605533348.log` in the directory of `.\u002Flog`, we can retrieve the data under the 'loss' tag in the scalar by:\n```python\nfrom visualdl import LogReader\nreader = LogReader(file_path='.\u002Fvdlrecords.1605533348.log')\ndata = reader.get_data('scalar', 'loss')\nprint(data)\n```\nThe result will be a list shown as below：\n```python\n...\nid: 5\ntag: \"Metrics\u002FTraining(Step): loss\"\ntimestamp: 1605533356039\nvalue: 3.1297709941864014\n...\n```\n\nFor more information of `LogReader`, please refer to [LogReader](.\u002Fdocs\u002Fio\u002FLogReader.md).\n\n\n## Function Preview\n\n### Scalar\n\n**Scalar** makes use of various charts to display how the parameters, such as accuracy, loss and learning rate, changes during the training process. In this case, developers can observe not only the single but also the multiple groups of parameters in order to understand the training process and thus speed up the process of model tuning.\n\n#### Dynamic Display\n\nAfter the launch of VisualDL Board, the LogReader will continuously record the data to display in the front-end. Hence, the changes of parameters can be visualized in real-time, as shown below:\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e5c2e4e53660.gif\" width=\"60%\"\u002F>\n\u003C\u002Fp>\n\n\n\n#### Comparison of Multiple Experiments\n\nDevelopers can compare multiple experiments by specifying and uploading the path of each experiment at the same time so as to visualize the same parameters in the same chart.\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_60c6b85e2824.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n\n### Image\n\n**Image** provides real-time visualizations of the image data during the training process, allowing developers to observe the changes of images at different training stages and  to deeply understand the effects of the training process.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_293883fcc9fa.gif\" width=\"55%\"\u002F>\n\u003C\u002Fp>\n\n\n### Audio\n\n**Audio** aims to allow developers to listen to the audio data in real-time during the training process, helping developers to monitor the process of speech recognition and text-to-speech.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_dabf93bf2de7.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### Text\n**Text** visualizes the text output of NLP models within any stage, aiding developers to compare the changes of outputs so as to deeply understand the training process and simply evaluate the performance of the model.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_81cc11bcacda.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### Graph\n\n**Graph** enables developers to visualize model structures by only one click. Moreover, **Graph** allows developers to explore model attributes, node information, node input and output. aiding them analyze model structures quickly and understand the direction of data flow easily. Additionally, Graph supports the visualization of dynamic and static model graph respectively.\n\n- dynamic graph\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_220f76202674.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n- static graph\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_51ee9def8c50.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### Histogram\n\n**Histogram** displays how the trend of tensor (weight, bias, gradient, etc.) changes during the training process in the form of histogram. Developers can adjust the model structures accurately by having an in-depth understanding of the effect of each layer.\n\n- Offset Mode\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_9227189de6ea.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n\n- Overlay Mode\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_4f69e07b42b7.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### PR Curve\n\n**PR Curve** displays the precision and recall values under different thresholds, helping developers to find the best threshold efficiently.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_76b588b2e6ea.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### ROC Curve\n\n**ROC Curve** shows the performance of a classification model at all classification thresholds; the larger the area under the curve, the better the model performs, aiding developers in evaluating the model performance and choosing an appropriate threshold.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a99e8107fbb8.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### High Dimensional\n\n**High Dimensional** provides three approaches--T-SNE, PCA and UMAP--to do the dimensionality reduction, allowing developers to have an in-depth analysis of the relationship between high-dimensional data and to optimize algorithms based on the analysis.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_ed21309136bd.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### Hyper Parameters\n\n**Hyper Parameters** visualize the relationship between hyperparameters and model metrics (such as accuracy and loss) in a rich view, helping you identify the best hyperparameters in an efficient way.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_60c750443af4.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### Performance Analysis\n**Performance Analysis**(Profiler) visualize the profiling data collected during your program runs, helping you identify program bottlenecks and optimize performance. Please refer to [VisualDL Profiler Guide](.\u002Fprofiler\u002FREADME.md)。\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a904728f57f3.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### Performance Analysis\n**Performance Analysis**(Profiler) visualize the profiling data collected during your program runs, helping you identify program bottlenecks and optimize performance. Please refer to [VisualDL Profiler Guide](.\u002Fdocs\u002Fcomponents\u002Fprofiler\u002FREADME.md).\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a904728f57f3.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### X2Paddle\nThe X2Paddle component provides the functions of onnx model format visualization and transformation to paddle format.\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_30646a11f3f5.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### FastDeployServer\nThe FastDeployServer component provides the functions of loading and editing the model repository, fastdeployserver service management and monitoring, and providing the client to test service. Please refer to [use VisualDL for fastdeploy serving deployment visualization](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_server\u002FREADME.md).\n\n \u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_35a4badc682c.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### FastDeployClient\nThe FastDeployClient component is mainly used to quickly access the fastdeployserver service, to help users visualize prediction requests and results. Please refer to [use VisualDL as fastdeploy client for request visualization](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_client\u002FREADME.md).\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_901071c8dec1.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### VDL.service\n\n**VDL.service** enables developers to easily save, track and share visualization results with anyone for free.\n\n\u003Cp align=\"center\">\n\u003Cimg src=https:\u002F\u002Fuser-images.githubusercontent.com\u002F48054808\u002F93731055-fbeafb00-fbfd-11ea-80f4-bbfd08a0fc35.png width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n## Frequently Asked Questions\n\nIf you are confronted with some problems when using VisualDL, please refer to [our FAQs](.\u002Fdocs\u002Ffaq.md).\n\n## Contribution\n\nVisualDL, in which Graph is powered by [Netron](https:\u002F\u002Fgithub.com\u002Flutzroeder\u002Fnetron), is an open source project supported by [PaddlePaddle](https:\u002F\u002Fwww.paddlepaddle.org\u002F) and [ECharts](https:\u002F\u002Fecharts.apache.org\u002F).\n\nDevelopers are warmly welcomed to use, comment and contribute.\n\n## More Details\n\nFor more details related to the use of VisualDL, please refer to [**VisualDL User Guide**](.\u002Fdocs\u002Fcomponents\u002FREADME.md), [**VisualDL Profiler Guide**](.\u002Fdocs\u002Fcomponents\u002Fprofiler\u002FREADME.md), [**Use VisualDL for fastdeploy serving deployment visualization**](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_server\u002FREADME.md), [**Use VisualDL as fastdeploy client for request visualization**](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_client\u002FREADME.md).\n\n## Technical Communication\n\nWelcome to join the official QQ group 1045783368 to communicate with PaddlePaddle team and other developers.\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_6dacf35993b1.png\" width=\"20%\"\u002F>\n\u003C\u002Fp>\n\n","[**中文**](.\u002FREADME_CN.md)\n\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002FPaddlePaddle\u002FVisualDL\u002Fdevelop\u002Ffrontend\u002Fpackages\u002Fcore\u002Fpublic\u002Fimages\u002Flogo-visualdl.svg?sanitize=true\" width=\"70%\"\u002F>\n\u003C\u002Fp>\n\n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"https:\u002F\u002Factions-badge.atrox.dev\u002FPaddlePaddle\u002FVisualDL\u002Fgoto?ref=develop\">\u003Cimg alt=\"Build Status\" src=\"https:\u002F\u002Fimg.shields.io\u002Fendpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2FPaddlePaddle%2FVisualDL%2Fbadge%3Fref%3Ddevelop&style=flat-square\" alt=\"Build Status\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fvisualdl\u002F\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fvisualdl?style=flat-square\" alt=\"PyPI\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fpypi.org\u002Fproject\u002Fvisualdl\u002F#files\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fdm\u002Fvisualdl?style=flat-square\" alt=\"Downloads\" \u002F>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fblob\u002Fdevelop\u002FLICENSE\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002Fpaddlepaddle\u002Fvisualdl?style=flat-square\" alt=\"License\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n\u003Cp align=\"center\">\n\u003Ca href=\"javascript:void(0)\">\u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FQQ_Group-1045783368-52B6EF?style=social&logo=tencent-qq&logoColor=000&logoWidth=20\" alt=\"QQ Group\" \u002F>\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n## 简介\n\nVisualDL是飞桨的可视化分析工具，提供多种图表来展示参数变化趋势，并支持模型结构、数据样本、张量直方图、PR曲线、ROC曲线以及高维数据分布的可视化。它帮助用户更清晰直观地理解训练过程和模型结构，从而高效优化模型。\n\nVisualDL提供了丰富的可视化功能，包括 **实时跟踪指标、可视化模型结构、展示数据样本、可视化超参数与模型指标的关系、呈现张量分布的变化、绘制PR曲线、将高维数据投影到低维空间等**。此外，VisualDL还提供了VDL.service服务，方便开发者轻松保存、追踪和分享实验的可视化结果。关于各功能的具体使用指南，请参阅 [**VisualDL 用户指南**](.\u002Fdocs\u002Fcomponents\u002FREADME.md)。如需最新体验，欢迎试用我们的 [**在线演示**](https:\u002F\u002Fwww.paddlepaddle.org.cn\u002Fpaddle\u002Fvisualdl\u002Fdemo)。目前，VisualDL正在快速迭代，将持续新增更多功能。\n\nVisualDL支持的浏览器包括：\n\n- Google Chrome ≥ 79\n- Firefox ≥ 67\n- Microsoft Edge ≥ 79\n- Safari ≥ 11.1\n\nVisualDL原生支持Python语言。开发者只需在训练前向模型代码中添加几行Python代码，即可获取丰富的可视化结果。\n\n\n\n## 目录\n\n* [核心亮点](#Key-Highlights)\n* [安装](#Installation)\n* [使用指南](#Usage-Guideline)\n* [功能预览](#Function-Preview)\n* [常见问题](#Frequently-Asked-Questions)\n* [贡献](#Contribution)\n* [更多详情](#More-Details)\n* [技术交流](#Technical-Communication)\n\n\n\n## 核心亮点\n\n### 易于使用\n\nAPI设计简洁易用，仅需一次点击即可启动模型结构的可视化。\n\n### 功能多样\n\n涵盖训练参数、数据样本、网络结构、张量直方图、PR曲线及高维数据分布等多种可视化功能。\n\n### 高兼容性\n\nVisualDL支持主流模型架构的可视化，如Paddle、ONNX、Caffe等，广泛适用于不同用户群体的视觉分析需求。\n\n### 全面支持\n\n通过与飞桨及相关模块深度集成，VisualDL确保开发者能够无缝使用各类组件，在飞桨生态中获得最佳体验。\n\n## 安装\n\n\n### 使用 pip 安装\n\n```shell\npython -m pip install visualdl -i https:\u002F\u002Fmirror.baidu.com\u002Fpypi\u002Fsimple\n```\n\n### 使用源码安装\n\n```\ngit clone https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL.git\ncd VisualDL\n\npython setup.py bdist_wheel\npip install --upgrade dist\u002Fvisualdl-*.whl\n```\n\n请注意，自2020年1月1日起，Python 2 已停止官方维护。为保证代码可用性，VisualDL目前仅支持 Python 3。\n\n\n## 使用指南\n\nVisualDL会将训练过程中的数据、参数等信息存储在一个日志文件中。用户可以通过启动面板来查看可视化结果。\n\n### 1. 日志\n\nVisualDL后端提供了Python SDK，可通过LogWriter自定义日志记录器。接口说明如下：\n\n```python\nclass LogWriter(logdir=None,\n                max_queue=10,\n                flush_secs=120,\n                filename_suffix='',\n                **kwargs)\n```\n\n#### 接口参数\n\n| 参数          | 类型    | 含义                                                      |\n| --------------- | ------- | ------------------------------------------------------------ |\n| logdir          | 字符串  | 日志文件的存储路径。VisualDL会在该路径下创建日志文件，用于记录训练过程中产生的信息。若未指定，则默认路径为 `runs\u002F${CURRENT_TIME}`。 |\n| max_queue       | 整数    | 在写入日志文件之前，允许缓存的最大数据条目数量。默认值为10。当达到此限制时，数据会立即写入日志文件。 |\n| flush_secs      | 整数    | 数据在写入日志文件之前的最长缓存时间。默认值为120秒。当达到此时间时，数据会立即写入日志文件。（当日志消息队列达到最大缓存时间或最大容量时，也会立即写入日志文件）|\n| filename_suffix | 字符串  | 为默认的日志文件名添加后缀。                   |\n| display_name    | 字符串  | 此参数会显示在面板的“选择数据流”位置。若未设置，则默认名称为`logdir`。（当`logdir`过长或需要隐藏时适用）。 |\n| file_name       | 字符串  | 设置日志文件的名称。如果文件名已存在，新设置的文件名将在同一日志文件中继续记录，不会创建新文件。注意，文件名应包含“vdlrecords”。 |\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_6e9513e38f94.png\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e6ce974148a4.png\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n#### 示例\n\n创建日志文件并记录标量值：\n\n```python\nfrom visualdl import LogWriter\n\n# 在 `.\u002Flog\u002Fscalar_test\u002Ftrain` 下创建日志文件\nwith LogWriter(logdir=\".\u002Flog\u002Fscalar_test\u002Ftrain\") as writer:\n    # 使用 `add_scalar` 记录标量值\n    writer.add_scalar(tag=\"acc\", step=1, value=0.5678)\n    writer.add_scalar(tag=\"acc\", step=2, value=0.6878)\n    writer.add_scalar(tag=\"acc\", step=3, value=0.9878)\n# 你也可以不使用上下文管理器 `with`，而采用如下方式：\n\"\"\"\nwriter = LogWriter(logdir=\".\u002Flog\u002Fscalar_test\u002Ftrain\")\n\nwriter.add_scalar(tag=\"acc\", step=1, value=0.5678)\nwriter.add_scalar(tag=\"acc\", step=2, value=0.6878)\nwriter.add_scalar(tag=\"acc\", step=3, value=0.9878)\n\nwriter.close()\n\"\"\"\n```\n\n### 2. 启动面板\n\n在上述示例中，日志记录了三组标量值。开发者可以通过启动 visualDL 面板来查看日志文件的可视化结果。有两种方式可以启动日志文件：\n\n#### 命令行启动\n\n使用命令行启动 visualDL 面板：\n\n```python\nvisualdl --logdir \u003Cdir_1, dir_2, ... , dir_n> --model \u003Cmodel_file> --host \u003Chost> --port \u003Cport> --cache-timeout \u003Ccache_timeout> --language \u003Clanguage> --public-path \u003Cpublic_path> --api-only --component_tabs \u003Ctab_name1, tab_name2, ...>\n```\n\n参数说明：\n\n| 参数          | 含义                                                      |\n| --------------- | ------------------------------------------------------------ |\n| --logdir        | 设置一个或多个日志目录。路径或子目录中的所有日志都会独立显示在 visualDL Board 上。 |\n| --model         | 设置模型文件的路径（不是目录）。visualDL 会在 Graph 页面中可视化该模型文件。支持 PaddlePaddle、ONNX、Keras、Core ML、Caffe 等多种模型格式。请参考 [Graph - 功能说明](.\u002Fdocs\u002Fcomponents\u002FREADME.md#functional-instructions-2)。 |\n| --host          | 指定 IP 地址。默认值为 `127.0.0.1`。若设置为 `0.0.0.0` 或公网 IP 地址，则其他机器也可以访问 visualDL Board。       |\n| --port          | 设置端口。默认值为 `8040`。                   |\n| --cache-timeout | 后端缓存时间。在此期间，前端多次请求同一 URL 时，返回的数据将来自缓存。默认缓存时间为 20 秒。 |\n| --language      | visualDL 面板的语言。可指定为 'en' 或 'zh'，默认为浏览器使用的语言。 |\n| --public-path   | visualDL 面板的 URL 路径。默认路径为 '\u002Fapp'，即访问地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002Fapp'。 |\n| --api-only      | 决定是否仅提供 API。若设置此参数，visualDL 将仅提供 API 服务，而不显示网页，API 地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002F\u003Cpublic_path>\u002Fapi'。此外，若未指定 public_path 参数，则默认地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002Fapi'。 |\n| --component_tabs  | 决定页面上展示哪些组件，目前支持 15 种组件，即 'scalar'、'image'、'text'、'embeddings'、'audio'、'histogram'、'hyper_parameters'、'static_graph'、'dynamic_graph'、'pr_curve'、'roc_curve'、'profiler'、'x2paddle'、'fastdeploy_server'、'fastdeploy_client'。若设置此参数，则仅展示指定的组件。若未设置，但指定了 --logdir 参数，则仅展示 vdlrecords 日志中包含数据的组件。若既未设置 --component_tabs，也未设置 --logdir，则默认仅展示 'static_graph'、'x2paddle'、'fastdeploy_server'、'fastdeploy_client' 组件 |\n\n要可视化上一步生成的日志文件，开发者可以通过以下命令启动面板：\n\n```\nvisualdl --logdir .\u002Flog\n```\n\n#### 在 Python 脚本中启动\n\n\n开发者可以在 Python 脚本中启动 visualDL 面板，方法如下：\n\n```python\nvisualdl.server.app.run(logdir,\n                        model=\"path\u002Fto\u002Fmodel\",\n                        host=\"127.0.0.1\",\n                        port=8080,\n                        cache_timeout=20,\n                        language=None,\n                        public_path=None,\n                        api_only=False,\n                        open_browser=False)\n```\n\n请注意：由于除 `logdir` 外其他参数均为可选，因此在使用时应明确指定参数名称。\n\n接口参数如下：\n\n| 参数          | 类型                                               | 含义                                                      |\n| ------------- | -------------------------------------------------- | ------------------------------------------------------------ |\n| logdir        | 字符串或列表[字符串_1, 字符串_2, ... , 字符串_n]   | 设置一个或多个日志目录。路径或子目录中的所有日志都将独立地显示在 VisualDL Board 上。|\n| model         | 字符串                                             | 设置模型文件的路径（不是目录）。VisualDL 会在 Graph 页面中可视化该模型文件。 |\n| host          | 字符串                                             | 指定 IP 地址。默认值为 `127.0.0.1`。将其指定为 `0.0.0.0` 或公网 IP 地址，以便其他机器可以访问 VisualDL Board。       |\n| port          | 整数                                                | 设置端口。默认值为 `8040`。                   |\n| cache_timeout | 整数                                                | 后端缓存时间。在缓存时间内，前端多次请求同一 URL 时，返回的数据将来自缓存。默认缓存时间为 20 秒。 |\n| language      | 字符串                                             | VisualDL 面板的语言。语言可设置为 'en' 或 'zh'，默认为浏览器使用的语言。 |\n| public_path   | 字符串                                             | VisualDL 面板的 URL 路径。默认路径为 '\u002Fapp'，即访问地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002Fapp'。 |\n| api_only      | 布尔值                                             | 决定是否仅提供 API。如果设置了此参数，VisualDL 将仅提供 API 服务，而不显示网页，API 地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002F\u003Cpublic_path>\u002Fapi'。此外，如果未指定 public_path 参数，则默认地址为 'http:\u002F\u002F\u003Chost>:\u003Cport>\u002Fapi'。 |\n| open_browser  | 布尔值                                             | 是否打开浏览器。如果将此参数设置为 True，浏览器将自动打开，同时启动 VisualDL 面板。如果指定了 api_only 参数为 True，则可以忽略 open_browser 参数。 |\n| component_tabs | 字符串或列表[字符串_1, 字符串_2, ... , 字符串_n] | 决定页面上展示哪些组件，目前支持 15 个组件，即 'scalar', 'image', 'text', 'embeddings', 'audio', 'histogram', 'hyper_parameters', 'static_graph', 'dynamic_graph', 'pr_curve', 'roc_curve', 'profiler', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client'。如果设置了此参数，则仅展示指定的组件。如果没有设置，但指定了 --logdir 参数，则仅展示 vdlrecords 日志中有数据的组件。如果既没有设置 --component_tabs，也没有设置 --logdir，则默认仅展示 'static_graph', 'x2paddle', 'fastdeploy_server', 'fastdeploy_client' 组件。\n\n要可视化上一步生成的日志文件，开发者可以通过以下命令启动面板：\n\n```python\nfrom visualdl.server import app\n\napp.run(logdir=\".\u002Flog\")\n```\n\n通过上述方法之一启动面板后，开发者可以在浏览器中看到如下所示的可视化结果：\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e849515bef30.png\" width=\"70%\"\u002F>\n\u003C\u002Fp>\n\n\n\n### 3. 使用 LogReader 读取日志文件中的数据\n\nVisualDL 还提供了 `LogReader` 接口，用于从日志文件中读取任何数据。\n\n```python\nclass LogReader(file_path='')\n```\n#### 接口参数\n| 参数        | 类型   | 含义                              |\n| ---------- | ------ | ------------------------------------ |\n| file_path  | 字符串 | 日志文件的路径。必填。 |\n#### 示例\n如果在 `.\u002Flog` 目录下有一个名为 `vdlrecords.1605533348.log` 的日志文件，我们可以通过以下方式获取标量中 'loss' 标签下的数据：\n```python\nfrom visualdl import LogReader\nreader = LogReader(file_path='.\u002Fvdlrecords.1605533348.log')\ndata = reader.get_data('scalar', 'loss')\nprint(data)\n```\n结果将是一个如下所示的列表：\n```python\n...\nid: 5\ntag: \"Metrics\u002FTraining(Step): loss\"\ntimestamp: 1605533356039\nvalue: 3.1297709941864014\n...\n```\n\n有关 `LogReader` 的更多信息，请参阅 [LogReader](.\u002Fdocs\u002Fio\u002FLogReader.md)。\n\n\n## 功能预览\n\n### 标量\n\n**标量**利用各种图表来展示训练过程中参数的变化情况，例如准确率、损失和学习率等。在这种情况下，开发者不仅可以观察单个参数的变化，还可以同时观察多组参数的变化，从而更好地理解训练过程并加快模型调优的速度。\n\n#### 动态显示\n\n启动 VisualDL Board 后，LogReader 会持续记录数据并在前端显示。因此，参数的变化可以实时可视化，如下所示：\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_e5c2e4e53660.gif\" width=\"60%\"\u002F>\n\u003C\u002Fp>\n\n\n\n#### 多实验对比\n\n开发者可以通过同时指定并上传每个实验的路径，将相同的参数在同一张图中进行可视化，从而实现多实验的对比。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_60c6b85e2824.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n\n### 图像\n\n**图像**在训练过程中提供图像数据的实时可视化，使开发者能够观察不同训练阶段图像的变化，并深入理解训练过程的效果。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_293883fcc9fa.gif\" width=\"55%\"\u002F>\n\u003C\u002Fp>\n\n\n### 音频\n\n**音频**旨在让开发者在训练过程中实时收听音频数据，帮助开发者监控语音识别和文本转语音的过程。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_dabf93bf2de7.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### 文本\n**文本**可视化 NLP 模型在任意阶段的文本输出，帮助开发者比较不同阶段的输出变化，从而深入理解训练过程并简单评估模型性能。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_81cc11bcacda.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### 图形\n\n**图形** 功能使开发者只需点击一下即可可视化模型结构。此外，**图形** 还允许开发者探索模型属性、节点信息以及节点的输入和输出，从而帮助他们快速分析模型结构并轻松理解数据流的方向。另外，图形功能分别支持动态图和静态图的可视化。\n\n- 动态图\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_220f76202674.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n- 静态图\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_51ee9def8c50.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### 直方图\n\n**直方图** 以直方图的形式展示张量（权重、偏置、梯度等）在训练过程中的变化趋势。开发者可以通过深入理解每一层的影响，从而更准确地调整模型结构。\n\n- 偏移模式\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_9227189de6ea.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n\n- 叠加模式\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_4f69e07b42b7.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### PR 曲线\n\n**PR 曲线** 展示不同阈值下的精确率和召回率值，帮助开发者高效地找到最佳阈值。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_76b588b2e6ea.png\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### ROC 曲线\n\n**ROC 曲线** 显示分类模型在所有分类阈值下的性能；曲线下面积越大，模型性能越好，这有助于开发者评估模型性能并选择合适的阈值。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a99e8107fbb8.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### 高维数据\n\n**高维数据** 提供三种降维方法——T-SNE、PCA 和 UMAP——使开发者能够深入分析高维数据之间的关系，并基于这些分析优化算法。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_ed21309136bd.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n### 超参数\n\n**超参数** 以丰富的视图可视化超参数与模型指标（如准确率和损失）之间的关系，帮助您高效地识别最佳超参数。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_60c750443af4.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### 性能分析\n**性能分析**（Profiler）可视化程序运行期间收集的剖析数据，帮助您识别程序瓶颈并优化性能。请参阅 [VisualDL Profiler 指南](.\u002Fprofiler\u002FREADME.md)。\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a904728f57f3.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### 性能分析\n**性能分析**（Profiler）可视化程序运行期间收集的剖析数据，帮助您识别程序瓶颈并优化性能。请参阅 [VisualDL Profiler 指南](.\u002Fdocs\u002Fcomponents\u002Fprofiler\u002FREADME.md)。\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_a904728f57f3.gif\" width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n### X2Paddle\nX2Paddle 组件提供 ONNX 模型格式可视化及转换为 Paddle 格式的功能。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_30646a11f3f5.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### FastDeployServer\nFastDeployServer 组件提供加载和编辑模型仓库、管理与监控 FastDeployServer 服务的功能，并提供客户端用于测试服务。请参阅 [使用 VisualDL 进行 FastDeploy 服务部署可视化](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_server\u002FREADME.md)。\n\n \u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_35a4badc682c.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### FastDeployClient\nFastDeployClient 组件主要用于快速访问 FastDeployServer 服务，帮助用户可视化预测请求和结果。请参阅 [使用 VisualDL 作为 FastDeploy 客户端进行请求可视化](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_client\u002FREADME.md)。\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_901071c8dec1.gif\" width=\"100%\"\u002F>\n\u003C\u002Fp>\n\n\n### VDL.service\n\n**VDL.service** 使开发者能够轻松保存、跟踪和免费与任何人分享可视化结果。\n\n\u003Cp align=\"center\">\n\u003Cimg src=https:\u002F\u002Fuser-images.githubusercontent.com\u002F48054808\u002F93731055-fbeafb00-fbfd-11ea-80f4-bbfd08a0fc35.png width=\"85%\"\u002F>\n\u003C\u002Fp>\n\n\n## 常见问题解答\n\n如果您在使用 VisualDL 时遇到一些问题，请参阅 [我们的常见问题解答](.\u002Fdocs\u002Ffaq.md)。\n\n## 贡献\nVisualDL 的图形功能由 [Netron](https:\u002F\u002Fgithub.com\u002Flutzroeder\u002Fnetron) 提供支持，是一个由 [PaddlePaddle](https:\u002F\u002Fwww.paddlepaddle.org\u002F) 和 [ECharts](https:\u002F\u002Fecharts.apache.org\u002F) 支持的开源项目。我们热烈欢迎开发者使用、评论和贡献。\n\n## 更多详情\n有关 VisualDL 使用的更多详细信息，请参阅 [VisualDL 用户指南](.\u002Fdocs\u002Fcomponents\u002FREADME.md)、[VisualDL Profiler 指南](.\u002Fdocs\u002Fcomponents\u002Fprofiler\u002FREADME.md)、[使用 VisualDL 进行 FastDeploy 服务部署可视化](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_server\u002FREADME.md)以及[使用 VisualDL 作为 FastDeploy 客户端进行请求可视化](.\u002Fdocs\u002Fcomponents\u002Ffastdeploy_client\u002FREADME.md)。\n\n## 技术交流\n欢迎加入官方 QQ 群 1045783368，与 PaddlePaddle 团队及其他开发者交流。\n\n\u003Cp align=\"center\">\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_readme_6dacf35993b1.png\" width=\"20%\"\u002F>\n\u003C\u002Fp>","# VisualDL 快速上手指南\n\nVisualDL 是百度飞桨（PaddlePaddle）推出的深度学习可视化分析工具。它支持实时追踪训练指标、可视化模型结构、展示数据样本、绘制高维数据分布等功能，帮助开发者直观理解训练过程与模型结构，从而高效优化模型。\n\n## 环境准备\n\n在开始使用前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**：Linux, macOS, Windows\n*   **Python 版本**：Python 3.x (VisualDL 已不再支持 Python 2)\n*   **浏览器要求**：\n    *   Google Chrome ≥ 79\n    *   Firefox ≥ 67\n    *   Microsoft Edge ≥ 79\n    *   Safari ≥ 11.1\n\n## 安装步骤\n\n推荐使用国内镜像源进行安装，以获得更快的下载速度。\n\n### 方式一：通过 pip 安装（推荐）\n\n```shell\npython -m pip install visualdl -i https:\u002F\u002Fmirror.baidu.com\u002Fpypi\u002Fsimple\n```\n\n### 方式二：源码安装\n\n如需使用最新开发版功能，可通过源码安装：\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL.git\ncd VisualDL\n\npython setup.py bdist_wheel\npip install --upgrade dist\u002Fvisualdl-*.whl\n```\n\n## 基本使用\n\nVisualDL 的使用流程主要分为两步：**记录日志** 和 **启动面板**。\n\n### 1. 记录日志\n\n在训练代码中引入 `LogWriter`，将标量、图像、直方图等数据写入日志文件。以下是最简单的记录标量（Scalar）示例：\n\n```python\nfrom visualdl import LogWriter\n\n# 创建日志目录 .\u002Flog\u002Fscalar_test\u002Ftrain\nwith LogWriter(logdir=\".\u002Flog\u002Fscalar_test\u002Ftrain\") as writer:\n    # 记录标量数据：tag 为名称，step 为步数，value 为数值\n    writer.add_scalar(tag=\"acc\", step=1, value=0.5678)\n    writer.add_scalar(tag=\"acc\", step=2, value=0.6878)\n    writer.add_scalar(tag=\"acc\", step=3, value=0.9878)\n```\n\n> **提示**：如果不使用 `with` 上下文管理器，请在代码末尾手动调用 `writer.close()` 以确保数据完整写入。\n\n### 2. 启动可视化面板\n\n日志生成后，使用命令行启动 VisualDL 服务即可查看可视化结果。\n\n**启动命令：**\n\n```shell\nvisualdl --logdir .\u002Flog\n```\n\n**参数说明：**\n*   `--logdir`: 指定日志文件所在的目录（支持多个目录，用逗号分隔）。\n*   `--host`: 指定 IP 地址，默认为 `127.0.0.1`。若需远程访问，可设置为 `0.0.0.0`。\n*   `--port`: 指定端口号，默认为 `8040`。\n\n执行命令后，终端会显示访问地址（例如 `http:\u002F\u002F127.0.0.1:8040\u002Fapp`），在浏览器中打开该地址即可看到刚才记录的准确率变化曲线及其他可视化组件。","某计算机视觉算法团队正在基于飞桨框架训练一个复杂的图像分类模型，急需监控训练动态并调优超参数。\n\n### 没有 VisualDL 时\n- 开发者只能依赖控制台打印的稀疏日志，无法直观看到损失函数和准确率在每一个 step 的细微波动，难以判断模型是否陷入局部最优。\n- 排查梯度消失或爆炸问题时，缺乏张量分布直方图，只能靠猜测调整学习率，导致反复试错，耗时数天。\n- 想要分析模型为何对特定类别识别错误时，无法直接查看训练集中被误判的原始图片样本，数据与结果割裂。\n- 对比不同超参数组合的实验效果时，需手动整理多份日志文件生成报表，效率低下且容易出错。\n\n### 使用 VisualDL 后\n- 通过实时标量图表，团队成员能清晰看到训练曲线平滑下降，立即发现过拟合趋势并及时引入正则化策略。\n- 利用张量直方图功能，直观观测到各层权重分布变化，迅速定位到异常层并将学习率下调，将调试时间从几天缩短至几小时。\n- 直接在“数据样本”组件中浏览带预测标签的图片，快速发现数据标注噪声，针对性清洗数据后模型精度提升 2%。\n- 借助超参数分析面板，自动关联不同实验的配置与最终指标，一键选出最优参数组合，无需人工比对。\n\nVisualDL 将黑盒般的训练过程转化为可视化的决策依据，让深度学习模型的迭代优化变得透明、高效且可控。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FPaddlePaddle_VisualDL_6e9513e3.png","PaddlePaddle","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FPaddlePaddle_0457ef24.jpg","",null,"http:\u002F\u002Fpaddlepaddle.org","https:\u002F\u002Fgithub.com\u002FPaddlePaddle",[79,83,87,91,95,99,102,106,110],{"name":80,"color":81,"percentage":82},"HTML","#e34c26",56.9,{"name":84,"color":85,"percentage":86},"TypeScript","#3178c6",20.4,{"name":88,"color":89,"percentage":90},"JavaScript","#f1e05a",12.8,{"name":92,"color":93,"percentage":94},"Python","#3572A5",9.5,{"name":96,"color":97,"percentage":98},"Rust","#dea584",0.2,{"name":100,"color":101,"percentage":98},"SCSS","#c6538c",{"name":103,"color":104,"percentage":105},"Shell","#89e051",0.1,{"name":107,"color":108,"percentage":109},"Dockerfile","#384d54",0,{"name":111,"color":112,"percentage":109},"CSS","#663399",4880,632,"2026-04-02T08:36:27","Apache-2.0",1,"未说明",{"notes":120,"python":121,"dependencies":122},"浏览器要求：Google Chrome ≥ 79, Firefox ≥ 67, Microsoft Edge ≥ 79, Safari ≥ 11.1。该工具主要用于记录日志和可视化展示，对运行环境的计算资源（GPU\u002F内存）无特殊高要求，主要依赖在于浏览器兼容性。","Python 3 (不再支持 Python 2)",[],[14],[125,126,127,128,129],"visualization","deep-learning","paddlepaddle","onnx","caffe","2026-03-27T02:49:30.150509","2026-04-09T23:49:03.942608",[133,138,143,148,153,158,163,168],{"id":134,"question_zh":135,"answer_zh":136,"source_url":137},26805,"如何在生产环境中正确部署 VisualDL 或 Flask 应用以避免开发服务器警告？","不要直接使用 Flask 的开发服务器（app.run），在生产环境中应使用 Gevent 等 WSGI 服务器。安装 gevent (pip install gevent) 后，使用以下代码启动：\nfrom flask import Flask\nfrom gevent.pywsgi import WSGIServer\n\napp = Flask(__name__)\n\n@app.route('\u002Fapi', methods=['GET'])\ndef index():\n    return \"Hello, World!\"\n\nif __name__ == '__main__':\n    http_server = WSGIServer(('', 5000), app)\n    http_server.serve_forever()","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F446",{"id":139,"question_zh":140,"answer_zh":141,"source_url":142},26806,"在 Python 脚本中启动 VisualDL 面板时出现错误或无响应怎么办？","这可能是操作系统层面的多进程问题（特别是在 macOS 上）。建议在启动代码的 `if __name__ == '__main__':` 块中添加以下设置来指定多进程启动方法：\nimport multiprocessing\nmultiprocessing.set_start_method('spawn')\n然后再执行 VisualDL 的启动逻辑。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F671",{"id":144,"question_zh":145,"answer_zh":146,"source_url":147},26807,"在 Docker 容器内运行 VisualDL 时，浏览器页面无法显示图像或报内部服务器错误怎么办？","首先确保启动命令指定了 host 为 0.0.0.0 以允许外部访问：\nvisualdl --logdir=scratch_log --host=0.0.0.0\n如果在容器内 curl 测试返回 302 重定向，说明服务已启动，请直接使用浏览器访问映射的端口（如 http:\u002F\u002F\u003C宿主机 IP>:8040\u002F）。如果仍报 'Internal server error'，请检查 Paddle 和 VisualDL 的版本兼容性，尝试升级 Paddle 镜像版本或 VisualDL 到最新版。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F683",{"id":149,"question_zh":150,"answer_zh":151,"source_url":152},26808,"生成 log 文件后，在浏览器 Graph 页面无法显示可视化模型结果（特别是 Windows 用户）如何解决？","这是一个已知问题，修复代码已在 PR #1244 中提交。临时解决方案是手动修改本地安装的文件：\n1. 在 Python 中运行 `import visualdl; print(visualdl.path)` 找到安装路径。\n2. 根据 PR #1244 中的文件修改内容，找到对应文件并进行修改。\n3. 修改完成后重启 VisualDL 即可生效。或者等待包含该修复的下一个小版本发布。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F1235",{"id":154,"question_zh":155,"answer_zh":156,"source_url":157},26809,"运行官方代码时出现 'Failed to save model graph, error: '' '错误怎么办？","这也是 Windows 下的一个已知问题，与上述 Graph 显示问题类似。解决方法参考 PR #1244 或 PR #1233：\n1. 运行 `import visualdl; print(visualdl.path)` 定位安装目录。\n2. 参照 PR 中的代码变更修改本地对应的源文件。\n3. 保存后重新运行即可解决该报错。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F1234",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},26810,"VisualDL 与旧版本 PyTorch (如 0.4) 配合使用时出现段错误 (Segmentation Fault) 怎么办？","这是由于版本不兼容导致的。如果必须使用 PyTorch 0.4，建议降级 VisualDL 到早期版本，例如：\npip install visualdl==0.0.1a2\n该版本已知可以与 PyTorch 0.4 协同工作。强烈建议升级 PyTorch 或使用更新的 VisualDL 版本以获得更好的兼容性。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F423",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},26811,"如何在 Windows 上通过 Anaconda 或直接安装 VisualDL？","VisualDL 现已支持 Windows。请确保 Python 版本在 3.6 及以上，然后直接使用 pip 安装最新版：\npip install --upgrade visualdl\n无需手动克隆代码或编译 wheel 文件，直接通过 pip 安装即可解决大部分环境依赖问题。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F269",{"id":169,"question_zh":170,"answer_zh":171,"source_url":172},26812,"如何指定多个特定的日志文件夹进行对比，而不是显示目录下所有子目录？","可以在启动命令中使用逗号分隔多个具体的日志路径：\nvisualdl --logdir \u003Cpath_to_log1,path_to_log2,path_to_log3>\n注意路径之间不要有空格。如果前端显示颜色区分度不够，可能是前端渲染限制，建议减少同时对比的曲线数量或检查是否为特定环境下的显示 Bug（有用户反馈更换电脑后正常）。","https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fissues\u002F1028",[174,179,184,189,194,199,204,209,214,219,224,229,234,239,244,249,254],{"id":175,"version":176,"summary_zh":177,"released_at":178},172064,"v3.0.0-beta","## 变更内容\n* 由 @xiaoyixin-cmd 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1207 中修复导航栏问题\n* 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1212 中将 protoc 升级至 v4.21.12\n* 由 @xiaoyixin-cmd 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1213 中修复名称错误的 bug\n* [Bug] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1218 中修复 Windows 系统下中断失败的 bug\n* [Bug] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1221 中增强分析器服务器代码的鲁棒性\n* [Bug Fix] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1224 中提升分布式数据获取的鲁棒性\n* [新功能] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1228 中添加 paddle2onnx 组件\n* [前端] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1232 中新增模型转换前端界面\n* [Bug] 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1244 中修复 Windows 系统下导出图的 bug\n* 由 @rainyfly 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1249 中解决 Python 3.10 和 Gradio 的兼容性问题\n* [新功能] 由 @Difers 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1263 中支持 Paddle PIR 可视化 🚀\n* 由 @changeyoung98 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1280 中更新 build.yml 文件\n* [Ospp] 由 @cse0001 在 https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1279 中实现 VisualDL 对 Paddle PIR 的支持\n------------\n## 重要新特性\n### PIR 可视化\n运行测试用例后，访问 [http:\u002F\u002F0.0.0.0:8040\u002F](http:\u002F\u002F0.0.0.0:8040\u002F) 查看可视化计算图。\n\n#### pir_program_test（PIR 静态计算图可视化）\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996090463-249b4ade-ad21-47fc-8017-dee9ad30f979.png)\n\n#### pir_graph_test（输入 PIR 动态图可视化）\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996125143-5c21f177-6fa3-4203-84ea-d1d276323163.png)\n\n#### cond_test（ifop 可视化）\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996043233-fbf7b462-7436-41b4-8d8e-55febb4d10fe.png)\n\n完全展开后：\n\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996056427-ca87bc8e-78aa-4bbd-8abb-d9c6669780e9.png)\n\n#### while_test（whileop 可视化）\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996156062-275278ea-900a-44d9-a477-55dac6494456.png)\n\n完全展开后：\n\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996166186-f5f350af-90fc-4192-835c-4d7847a9fa43.png)\n\n#### cond_inside_cond_test（双层 ifop 嵌套结构可视化）\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996206268-4586af9c-7f68-4b4f-9790-f26db4f1dd58.png)\n\n展开一层 ifop 后：\n\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996221339-32a802b7-bad3-4369-9505-9b5b5e08e863.png)\n\n完全展开后：\n\n![](https:\u002F\u002Fcdn.nlark.com\u002Fyuque\u002F0\u002F2024\u002Fpng\u002F32921027\u002F1725996236240-5b6252b6-acb3-4f4b-9bfa-7aab74ce4b35.png)\n\n**完整变更日志**: https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fcompare\u002Fv2.5.0...v2.6.0","2024-10-30T02:46:42",{"id":180,"version":181,"summary_zh":182,"released_at":183},172065,"v2.5.0","**ZH**\n\n- 功能新增\n    - 增加X2Paddle模型转换组件，提供onnx模型到paddle的一键转换 ([#1148](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1148) [#1153](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1153) [#1160](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1160) [#1170](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1170))\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211203066-f2e43ef5-104f-436a-b44c-cad2b37ad518.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n    - 增加FastDeployServer组件，支持FastDeploy的serving可视化部署 ([#1169](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1169) [#1198](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1198) [#1199](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1199) [#1202](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1202))\n     \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211196832-1a05bf80-5aaa-493f-bba2-27e819c18bb9.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n    - 增加FastDeployClient组件，支持对fastdeployserver服务进行可视化访问 ([#1169](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1169) [#1197](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1197))\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211203852-059d5b98-6299-4057-97d8-5209805aa67f.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n- 其它改进\n    - **BE**: 增加启动参数component_tabs，支持选择指定组件进行显示 ([#1157](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1157) [#1159](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1159))\n\n**EN**\n\n- Features\n    - Add X2Paddle component, to support conversion from onnx model to paddle model ([#1148](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1148) [#1153](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1153) [#1160](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1160) [#1170](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1170))\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211203066-f2e43ef5-104f-436a-b44c-cad2b37ad518.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n    - Add FastDeployServer component, to support fastdeploy serving deployment visualization ([#1169](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1169) [#1198](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1198) [#1199](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1199) [#1202](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1202))\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211196832-1a05bf80-5aaa-493f-bba2-27e819c18bb9.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n    - Add FastDeployClient component, to support request visualization for fastdeployserver service ([#1169](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1169) [#1197](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1197))\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F211203852-059d5b98-6299-4057-97d8-5209805aa67f.gif\" width=\"100%\"\u002F>\n    \u003C\u002Fp>\n\n- Enhancement\n    - **BE** Add a new launching parameter component_tabs, to support selecting which components ar","2023-01-17T11:47:28",{"id":185,"version":186,"summary_zh":187,"released_at":188},172066,"v2.4.2","**ZH**\n\n- 问题修复\n    - **FE**: 修复直方图的显示问题 （[#1177](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1177)）\n    - **BE**: 修复cpu版paddle导出的profiler性能数据文件的载入问题 （[#1176](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1176)）\n    - **BE**: 修复当graph中存在多个program block时候的导出错误 ([#1180](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1180)）\n\n- 其它改进\n    - **BE**: 用户启动vdl不指定logdir参数时让程序不报错退出 （[#1171](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1171)）\n    - **BE**: 新增add_scalars接口 ([#1175](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1175))\n\n**EN**\n\n- Bug Fixes\n    - **FE**: Fix histogram tab presentation problem （[#1177](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1177)）\n    - **BE**: Fix a bug of loading profiler data exported by paddle of cpu version （[#1176](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1176)）\n    - **BE**: Fix error of exporting graph with multiple program blocks ([#1180](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1180))\n\n- Enhancement\n    - **BE**: Do not crash vdl when logdir is missing in launching parameters （[#1171](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1171)）\n    - **BE**: Add add_scalars component ([#1175](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1175))","2022-12-26T03:20:57",{"id":190,"version":191,"summary_zh":192,"released_at":193},172067,"v2.4.1","**ZH**\n\n- 问题修复\n    - **FE**: 删除带中文名的资源文件 ([#1122](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1122))\n    - **BE**: 在依赖项中增加multiprocess依赖 ([#1123](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1123))\n\n- 其他改进\n    - **BE**: 新增对框架导出性能数据的protobuf格式支持 ([#1128](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1128))\n\n\n**EN**\n\n- Bug Fixes\n    - **FE**: Remove resource files with Chinese characters in filenames ([#1122](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1122))\n    - **BE**: Add multiprocess dependency in requirements ([#1123](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1123))\n\n- Enhancement\n    - **BE**: Support protobuf format of profiler data exported by paddlepaddle. ([#1128](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1128))\n","2022-09-16T02:07:11",{"id":195,"version":196,"summary_zh":197,"released_at":198},172068,"v2.4.0","**ZH**\n\n- 功能新增\n  - 增加性能数据可视化功能，提供Overview、Operator、GPU Kernel、Distributed、Trace、Memory共六个视图的分析。([#1112](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1112) [#1114](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1114) [#1118](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1118))\n    - Overview视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893177-a049c8d5-2310-4138-8dd5-844cf198e425.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Operator视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893218-bff646f1-3d9f-448b-99c8-39f2309db65d.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - GPU Kernel视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893227-64837816-e6a5-41ad-b8f4-d1dfef3fd40b.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Distributed视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893682-e9330b99-e344-423a-8935-dc050a4cab45.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Trace视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893687-1788586e-4371-4136-baf7-f3edcbc19003.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Memory视图\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185893743-43643f2d-0c5a-46ad-8ad8-b04ae48ecc97.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n**EN**\n\n- Features\n  - Add visualization for profiling data, support six viewers for analysis, i.e. Overview, Operator, GPU Kernel, Distributed, Trace and Memory. ([#1112](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1112) [#1114](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1114) [#1118](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1118))\n    - Overview\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894151-53ffc60b-7203-4cb8-a289-5d97332d0691.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Operator\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894180-546c7012-6623-4163-b1d4-e7607b1ed72d.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - GPU Kernel\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894242-ec382146-56aa-42bc-ae81-ed7221b72bb4.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Distributed\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894274-fc9aae45-0faf-429c-8c5e-54ea0a45cbf2.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Trace\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894306-05eb72ca-33b9-4b49-a036-2f4b3b1e7e65.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Memory\n\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F185894209-fec56d3c-65ef-4240-a957-0965521d36f7.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n","2022-08-23T10:17:56",{"id":200,"version":201,"summary_zh":202,"released_at":203},172069,"v2.3.0","**ZH**\n\n- 功能新增\n  - **BE**:  增加add_graph接口支持动态图模型可视化 （[#1077](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1077) [#1093](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1093)）\n  - **FE**:  增加动态图可视化页面 （[#1091](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1091) [#1096](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1096) [#1097](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1097)）\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175808777-5bc24d7a-9115-44d0-8709-a82a3e341b3d.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n    \n    - 展开和折叠指定节点\n    \n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175810790-a35f83bf-a23c-4a28-afb7-2e0cf7711b9c.png\" width=\"80%\"\u002F>\n        \u003C\u002Fp>\n\n    - 一键全展开和全折叠\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175809551-67f67552-59b7-4aca-a1cc-fe5606e7e512.png\" width=\"80%\"\u002F>\n        \u003C\u002Fp>\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175809610-d07c0b15-d1bd-4542-aacd-29b4d2ba8fcb.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - 飞桨API链接功能\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175809570-241db056-0b41-4e3a-828d-376a011a4645.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175809574-8c173b88-ed27-4c29-a3e1-a3887d2d3107.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n    \n\n- 问题修复\n  - **FE**:  修复图像数据放大后比例失调的问题 （[#1090](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1090)）\n\n- 其他改进\n  - **FE**:  优化文本数据显示的用户体验 （[#1090](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1090)）\n\n**EN**\n\n- Features\n  - **BE**:  Add add_graph interface for dynamic model of paddle（[#1077](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1077) [#1093](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1093)）\n  - **FE**:  Add dynamic graph page （[#1091](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1091) [#1096](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1096) [#1097](https:\u002F\u002Fgithub.com\u002FPaddlePaddle\u002FVisualDL\u002Fpull\u002F1097)）\n  \u003Cp align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175811156-a80ca0c4-207d-44d7-bd5a-9701a7875722.gif\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Fold and unfold one node\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175810800-4823b9f1-3d59-44e8-aaa5-a80577624452.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175810790-a35f83bf-a23c-4a28-afb7-2e0cf7711b9c.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Fold and unfold all nodes\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175810856-ff98a1ed-2a4f-4cc1-bc9b-3085857c0b81.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n    \u003Cp align=\"center\">\n    \u003Cimg src=\"https:\u002F\u002Fuser-images.githubusercontent.com\u002F22424850\u002F175810837-a0953956-7320-4e78-9c52-72ad13962216.png\" width=\"80%\"\u002F>\n    \u003C\u002Fp>\n\n    - Li","2022-08-23T10:12:53",{"id":205,"version":206,"summary_zh":207,"released_at":208},172070,"v2.2.1","**ZH**\n\n- 问题修复\n    - **FE**: 修复错误页面跳转链接错误的问题 (#973)\n    - **BE**: 更新 VDL.service 的链接 (#976)\n    - **FE**: 修复标量数据部分情况下极值无法正确显示的问题 (#981)\n    - **FE**: 修复标量数据 WallTime 显示错误的问题 (#998)\n    - **FE**: 修复标量数据坐标轴范围计算错误的问题 (#998)\n\n- 其他改进\n    - 折线图可以显示 `NaN` 和 `Infinity` 了 (#983, #984, #998)\n    - **BE**: 数据采样时永远保留最新值 (#980)\n\n\n**EN**\n\n- Bug Fixes\n    - **FE**: Fix link error in error pages (#973)\n    - **BE**: Update endpoint of VDL.service (#976)\n    - **FE**: Fix extrema cannot display in some cases in scalar page (#981)\n    - **FE**: Fix WallTime display error in scalar page (#998)\n    - **FE**: Fix axis range calculation error in scalar page (#998)\n\n- Enhancement\n    - `NaN` and `Infinity` values can display in scalar charts (#983, #984, #998)\n    - **BE**: Keep the latest values when sampling data (#980)","2021-09-06T08:03:22",{"id":210,"version":211,"summary_zh":212,"released_at":213},172071,"v2.2.0","**ZH**\n\n- 问题修复\n    - **BE**: 修复 `Image` 组件使用 `numpy.pad` 接口版本兼容性问题 (#927)\n    - **BE**: 修复 `add_embedding` 接口 `mat` 参数不支持 `ndarray` 的问题 (#930)\n    - **BE**: 修复 `embedding` 接口 `display_name` 失效问题 (#935)\n    - **BE**: 修复全局 `Logger` 占用问题 (#944)\n    - **FE**: 修复主题在某些情况下不会随着系统设置的改变更新的问题 (#947)\n    - **FE**: 修复数据降维页面中当数据量很大时数据显示错误的问题 (#947)\n\n- 功能新增\n    - **FE**: 数据降维支持三维标签展示 (#947)\n    - **FE**: 数据降维支持色彩映射 (#950)\n    - 新增超参可视化 (#960, #961, #962, #964, #966, #967)\n\n- 其他改进\n    - **FE**: 包含数据流的侧边栏可以拖动调整大小 (#949)\n    - **FE**: 重新设计的导航栏 (#949, #951, #962)\n\n**EN**\n\n- Bug Fixes\n    - **BE**: Fix the compatibility problem of `Image` component using `numpy.pad` interface (#927)\n    - **BE**: Fix fix the problem that `mat` parameter of the `add_embedding` interface does not support `ndarray` (#930)\n    - **BE**: Fix the failure of `display_name` in `embedding` interface (#935)\n    - **BE**: Fix global `Logger` being occupied (#944)\n    - **FE**: Fix theme couldn't be changed in some case when system preference is changed (#947)\n    - **FE**: Fix display error when data size is large in high-dimensional page (#947)\n\n- Features\n    - **FE**: Add 3d label display in high-dimensional page (#947)\n    - **FE**: Add color map in high-dimensional page (#950)\n    - Add Hyper-parameters (#960, #961, #962, #964, #966, #967)\n\n- Enhancement\n    - **FE**: Sidebar with runs is now resizable (#949)\n    - **FE**: re-designed navbar (#949, #951, #962)","2021-05-24T15:45:53",{"id":215,"version":216,"summary_zh":217,"released_at":218},172072,"v2.1.1","**ZH**\n\n- 问题修复\n    - **FE**: 修复部分浏览器的兼容性问题 (#903)\n    - **FE**: 修复深色模式下切换页面会闪白的问题 (#903)\n    - **BE**: 修复旧版本的日志无法上传 VisualDL Service 的问题 (#912)\n- 功能新增\n    - 增加文本样本 (#917)\n    - **BE**: 增加图像组写入功能 (#909)\n- 其他改进\n    - **FE**: 增加了浏览器不兼容时的提示 (#903)\n    - **FE**: 调整样本页面的标题顺序 (#908)\n    - **FE**: 更好的载入提示 (#908)\n\n**EN**\n\n- Bug Fixes\n    - **FE**: Fix compatibility in some browsers (#903)\n    - **FE**: Fix flashing when switch between pages in dark mode (#903)\n    - **BE**: Fix the old version of log cannot be uploaded to VisualDL Service (#912)\n- Features\n    - Add Text Sample (#917)\n    - **BE**: Add images matrix writing function (#909)\n- 其他改进\n    - **FE**: Add browser compatibility tip (#903)\n    - **FE**: Adjust title order of sample pages (#908)\n    - **FE**: Better loading experience (#908)","2021-02-01T09:03:52",{"id":220,"version":221,"summary_zh":222,"released_at":223},172073,"v2.1.0","**ZH**\n\n- 问题修复\n    - **BE**: 修复无关文件会被上传到 VDL-Service 的问题 (#866)\n    - **BE**: 改正错误的代码注释 @foreverseer (#877)\n- 功能新增\n    - 重写高维数据映射 (#868, #869, #870, #874)\n    - 增加标量数据图表中原始数据的下载功能 (#879, #893, #894, #896)\n    - 增加ROC曲线功能 @iceriver97 (#881)\n- 其他改进\n    - **FE**: 改进 WebAssembly 和 WebWorker 的执行方式 (#871)\n    - **BE**: 支持 `ndarray` 的 `float32` 和 `double64` 类型 (#878)\n- 重要改动\n    - **BE**: `LogReader` 中参数名由 `file_name` 改为 `file_path` (#864)\n\n**EN**\n\n- Bug Fixes\n    - **BE**: Fix unrelated files uploaded to VDL-Service (#866)\n    - **BE**: Fix confused code comments @foreverseer (#877)\n- Features\n    - Rewrite High-dimension (#868, #869, #870, #874)\n    - Add raw data download support in scalar chart (#879, #893, #894, #896)\n    - Add ROC Curve @iceriver97 (#881)\n- Enhancement\n    - **FE**: Improve execution of WebAssembly and WebWorker (#871)\n    - **BE**: Support `float32` and `double64` in `ndarray` (#878)\n- Breaking Changes\n    - **BE**: Use `file_path` instead of `file_name` in `LogReader` (#864)\n","2020-12-29T13:20:08",{"id":225,"version":226,"summary_zh":227,"released_at":228},172074,"v2.0.5","**ZH**\r\n\r\n- 问题修复\r\n    - **FE**: 修复histogram页面图表坐标轴名称会重复渲染的问题 (#824)\r\n    - **FE**: 修复图表提示窗中表格内容过长的问题 (#829)\r\n    - **BE**: 修复Windows下注册表配置不正确时页面无法打开的问题 (#832)\r\n    - **FE**: 修复Scalar图表提示窗中表格数据无法按照选择的X轴指标进行展示的问题 (#851)\r\n    - **FE**: 修复Scalar图表Y轴范围不正确的问题 (#851)\r\n- 功能新增\r\n    - **FE**: Sample页面支持使用键盘快速修改step (#829)\r\n    - **FE**: Sample页面中的Image可以放大查看原图 (#829)\r\n    - **FE**: 增加主题切换功能 (#830)\r\n    - **BE**: 增加`LogReader`模块 (#827)\r\n- 其他改进\r\n    - **FE**: 改进Scalar图表提示窗中relative的可读性 (#851)\r\n\r\n**EN**\r\n\r\n- Bug Fixes\r\n    - **FE**: Remove unnecessary render of histogram chart axis label (#824)\r\n    - **FE**: Limit max length of runs in chart tooltip table (#829)\r\n    - **BE**: Fix mime type error when registry settings are broken on Windows (#832)\r\n    - **FE**: Get nearest points listed in tooltip of scalar page by selected x-axis (#851)\r\n    - **FE**: fix y axis range error in scalar chart (#851)\r\n- Features\r\n    - **FE**: Add keyboard shortcuts in sample page (#829)\r\n    - **FE**: Add image preview in image sample page (#829)\r\n    - **FE**: Add theme toggle (#830)\r\n    - **BE**: Add `LogReader` (#827)\r\n- Enhancement\r\n    - **FE**: humanize relative time display in tooltip of scalar chart (#851)","2020-11-26T10:19:27",{"id":230,"version":231,"summary_zh":232,"released_at":233},172075,"v2.0.4","## ZH\r\n\r\n### 问题修复\r\n\r\n- **BE**: 修复`add_pr_curve`不支持list的问题 (#810)\r\n- **FE**: 修复tooltip图标间距错乱的问题 (#815)\r\n- **FE**: 修复index载入中未居中 (#815)\r\n- **FE**: 修复图表载入中消失的问题 (#815)\r\n- **FE**: 时间日期无法被正确的格式化的问题 (#813, #815)\r\n- **BE**: 修复PR Curve中display_name显示的问题 (#816)\r\n\r\n### Features\r\n\r\n- 推出 VisualDL Service\r\n- **FE**: 支持深色模式\r\n\r\n\r\n## EN\r\n\r\n### Bug Fixes\r\n\r\n- **BE**: fix list not support add_pr_curve (#810)\r\n- **FE**: fix chart toolbox icons gap chaos (#815)\r\n- **FE**: index loading not centered (#815)\r\n- **FE**: get missing echarts loading back (#815)\r\n- **FE**: date & time cannot be formatted to correct locale string (#813, #815)\r\n- **BE**: fix pr display_name bug (#816)\r\n\r\n### Features\r\n\r\n- release VisualDL Service\r\n- **FE**: Support Dark mode\r\n","2020-09-21T12:20:45",{"id":235,"version":236,"summary_zh":237,"released_at":238},172076,"v2.0.3","## ZH\r\n\r\n### 问题修复\r\n\r\n- **BE**: 修复BOS文件系统追加问题 (#778)\r\n- **FE**: PR 曲线图表 Y 轴自适应数值 (#756) (#773)\r\n- **BE**: 修复Win10下命令行颜色不正常的问题 (#784)\r\n- **FE**: 修复跳转到index时参数丢失的问题 (#804)\r\n- **FE**: 修复只有step 0时直方图无法正常渲染的问题 (#807)\r\n- **FE**: 修复切换到访问过的页面时载入消失的问题 (#809)\r\n- **FE**: 修复标量和PR曲线的图表详情超长无法滚动的问题 (#809)\r\n- **BE**: 修复删除BOS文件后卡住的问题 (#805)\r\n\r\n### Features\r\n\r\n- 标量增加最值显示 (#779, #808)\r\n- **BE**: LogWriter()增加`file_name`以支持续写 (#764)\r\n- **FE**: 网络结构支持子图 (#787)\r\n- **FE**: 切换页面时记住选中的数据流 (#788, #809, #800)\r\n- **FE**: 标量页面增加只显示平滑后数据选项 (#795)\r\n- **FE**: 平滑度可以从页面参数中获取 (#797)\r\n- **FE**: 标量页面记住之前选择的平滑度 (#797)\r\n- **FE**: 网络结构记住用户上次选中的模型文件 (#789)\r\n\r\n### Enhancement\r\n\r\n- 使用毫秒增加数据精度 (#781, #783)\r\n- **BE**: 增加文件队列超时 (#772, #776)\r\n- **BE**: 去除对cv2的依赖 (#769)\r\n- **FE**: 使用es module以去除对webpack和nextjs的依赖 (#786)\r\n- **FE**: 更友好的错误提示 (#797, #804)\r\n\r\n## EN\r\n\r\n### Bug Fixes\r\n\r\n- **BE**: Fix append to bos. (#778)\r\n- **FE**: PR Curve chart Y axis will adaptive values now (#756) (#773)\r\n- **BE**: fix command color bug on win10 (#784)\r\n- **FE**: query string missing when redirect from root to index (#804)\r\n- **FE**: histogram cannot be rendered properly when data only has step 0 (#807)\r\n- **FE**: bring loading back when switching to a visited page (#809)\r\n- **FE**: scroll tooltips in scalar & pr-curve to prevent content overflow (#809)\r\n- **BE**: fix bugs when delete bos file (#805)\r\n\r\n### Features\r\n\r\n- add global extrema in scalar (#779, #808)\r\n- **BE**: add `file_name` in LogWriter() for rewriting. (#764)\r\n- **FE**: subgraph support for graph page (#787)\r\n- **FE**: remember selected runs between pages (#788, #809, #800)\r\n- **FE**: add smoothed data only option in scalar page (#795)\r\n- **FE**: set smoothing from query string (#797)\r\n- **FE**: remember smoothing in scalar page (#797)\r\n- **FE**: restore selected model when navigating back to graph page (#789)\r\n\r\n### Enhancement\r\n\r\n- use millisecounds to increase accuracy of data (#781, #783)\r\n- **BE**: add timeout for file queue (#772, #776)\r\n- **BE**: delete requirement of cv2 (#769)\r\n- **FE**: get rid of webpack & nextjs while introducing es module (#786)\r\n- **FE**: better error handling (#797, #804)","2020-09-14T11:26:52",{"id":240,"version":241,"summary_zh":242,"released_at":243},172077,"v2.0.1","#### ZH\r\n - 优化audio组件数据输入格式\r\n\r\n#### EN\r\n- improve input format of audio component","2020-08-19T04:51:34",{"id":245,"version":246,"summary_zh":247,"released_at":248},172078,"v2.0.0","#### ZH\r\n- API全面升级，设计简洁易用。\r\n- 优化日志采集策略，极大提升可视化性能。\r\n- 七大可视化功能全面覆盖：Scalar、Image、Audio、Graph、Histogram、PR Curve、High Dimensional\r\n- 新增支持BOS、HDFS等多种文件系统。\r\n- AI Studio支持一键可视化启动，打造极简极优的使用体验\r\n\r\n#### EN\r\n- The design of API is fully upgraded to make it easy to understand and use\r\n- Optimizing the strategy of collecting logs tremendously enhances the overall performance\r\n- Seven functions are provided, including Scalar, Image, Audio, Graph, Histogram, PR Curve and High Dimensional\r\n- Besides the support of domestic file system, additional file systems are also supported, such as BOS and HDFS\r\n- Only one click is enough to initiate the visualization analysis in AI Studio, providing users the best experience","2020-08-12T06:54:32",{"id":250,"version":251,"summary_zh":252,"released_at":253},172079,"v2.0.0-beta.8","## New Features\r\n- PR Curve\r\n- Audio\r\n\r\n## Bug Fix\r\n- `Step` number truncated in web UI. (#672)\r\n- Scalars compatibility in safari (#674)\r\n- Cannot display records inside a symbolic link to a directory (#702)\r\n- Disable font cache to prevent disappeared icons\r\n- Error when switch to overlay mode in histogram page\r\n\r\n## Enhancement\r\n- Rewrite tooltip in histogram chart\r\n- Support BosFS\r\n- Add sample indicator in sample pages\r\n- Merge latest Netron\r\n\r\n## Documents\r\n- Add docs for HDFS\u002FBosFS\r\n- Add English documents","2020-07-21T14:59:34",{"id":255,"version":256,"summary_zh":257,"released_at":258},172080,"v2.0.0-beta.7","feat: histogram","2020-06-28T06:55:22"]