ComfyUI全面掌握-知识点详解——ComfyUI 开发与扩展基础(开发指南+环境搭建)

news2026/5/22 3:47:20
本文为「ComfyUI 全面掌握」系列第 23 篇是高阶进阶章节的第一篇知识点详解博客。作为开发系列的起点本文将带你系统了解 ComfyUI 社区贡献流程并手把手搭建完整的自定义节点开发环境为后续的节点开发与发布奠定坚实的技术基础。知识点详解——ComfyUI 开发与扩展基础开发指南环境搭建目录一、引言从使用者到贡献者1.1 为什么要学习 ComfyUI 开发1.2 本文学习目标二、ComfyUI 开源项目概览与社区贡献指南2.1 仓库结构与核心模块2.2 参与社区贡献的方式2.3 开发规范与代码风格2.4 开发文档体系介绍三、开发环境搭建全流程3.1 整体流程概览3.2 安装 Python 3.103.3 安装 VS Code 与必备扩展3.4 克隆 ComfyUI 源码仓库3.5 创建虚拟环境与安装依赖3.6 配置 comfy-cli 命令行工具3.7 验证开发环境四、编写第一个测试节点Hello World4.1 节点目录结构4.2 编写节点代码4.3 在 ComfyUI 中加载测试五、开发调试技巧5.1 日志输出技巧5.2 VS Code 调试配置5.3 热重载与快速迭代5.4 常见错误排查六、总结与下一篇预告官方参考链接一、引言从使用者到贡献者1.1 为什么要学习 ComfyUI 开发在过去的四个章节中你已经全面掌握了 ComfyUI 的使用——从部署安装到工作流搭建从文生图到视频生成从使用已有节点到安装社区自定义节点。这是一个了不起的成就但 ComfyUI 的真正魅力在于它的可扩展性。ComfyUI 是一个完全开源的项目这意味着任何人都可以参与它的发展——不仅仅是报告 Bug 或提出功能建议更可以直接编写代码来扩展它的能力。学习 ComfyUI 开发的价值体现在多个层面对个人而言能够根据特定需求开发专属节点不再受限于现有节点的功能边界深入理解 ComfyUI 的底层架构使用起来更加得心应手掌握一项有价值的 AI 工具开发技能提升技术竞争力对团队而言能够将 ComfyUI 的生成能力与内部系统集成实现自动化生产开发符合业务需求的定制化节点提升团队工作效率对社区而言将优秀的节点发布到 Comfy Hub与其他开发者分享你的创意参与 ComfyUI 核心仓库的贡献推动项目持续发展而这一切都始于一个正确的开发环境。1.2 本文学习目标完成本文学习后你将能够✅ 理解 ComfyUI 开源项目的仓库结构和社区贡献流程✅ 独立搭建完整的自定义节点开发环境Python 3.10 VS Code comfy-cli✅ 编写并加载第一个Hello World测试节点✅ 掌握基本的开发调试技巧和常见问题排查方法一句话总结本文的目标只有一个——让你的电脑变成一个可用的 ComfyUI 开发工作站。后续的节点开发、API 集成等内容都将在本文搭建的环境之上进行。二、ComfyUI 开源项目概览与社区贡献指南2.1 仓库结构与核心模块ComfyUI 的官方 GitHub 仓库comfyanonymous/ComfyUI是整个项目的中枢。理解仓库结构是参与开发的第一步。目录/文件作用main.pyComfyUI 主入口服务启动脚本comfy/核心引擎目录包含模型加载、采样、节点注册等核心逻辑comfy_extras/内置扩展节点官方维护的额外节点集custom_nodes/自定义节点目录用户安装的第三方节点存放于此nodes.py内置基础节点定义文件web/前端 Web 界面代码models/模型文件存放目录checkpoints, loras, vae 等requirements.txtPython 依赖列表user/用户配置与数据目录开发相关的核心目录comfy/目录包含了 ComfyUI 的核心运行逻辑包括comfy/model_management.py模型加载与内存管理comfy/samplers.py采样器实现comfy/sd.pyStable Diffusion 模型处理comfy/clip.pyCLIP 模型处理comfy/controlnet.pyControlNet 支持comfy_extras/目录是官方维护的扩展节点集提供了大量社区常用功能的官方实现。这些节点的代码风格和组织方式是学习自定义节点开发的最佳参考。custom_nodes/目录是第三方自定义节点的存放位置。当你安装一个新节点时它会被克隆或复制到这个目录下。ComfyUI 启动时会自动扫描此目录并加载其中的节点。2.2 参与社区贡献的方式参与 ComfyUI 社区贡献有多种方式不一定是写代码① 报告 Bug适合所有用户如果使用过程中遇到 Bug可以在 GitHub Issues 中提交问题报告。好的 Bug 报告应包含清晰的标题和问题描述复现步骤越详细越好运行环境信息操作系统、Python 版本、ComfyUI 版本完整的错误日志相关工作流文件JSON截图② 提交功能建议适合所有用户通过 GitHub Issues 的 Feature Request 模板提交。好的功能建议应说明要解决什么问题建议的解决方案替代方案如果有③ 改进文档适合有文档编写能力的用户ComfyUI 的官方文档也是开源的可以在文档仓库提交改进。文档贡献是新手参与开源的好起点。④ 提交 Pull Request适合开发者如果你修复了一个 Bug 或实现了一个新功能可以通过 Pull Request 将代码贡献到 ComfyUI 主仓库。PR 提交前请注意确保代码风格符合项目规范确保新功能有充分的测试在 PR 描述中清楚说明改动内容和原因⑤ 开发自定义节点适合所有开发者这是最常见的贡献方式。通过开发自定义节点你可以直接扩展 ComfyUI 的功能并将成果发布到 Comfy Hub 供他人使用。这也是本章节的重点内容。2.3 开发规范与代码风格ComfyUI 项目虽然没有严格的编码规范文档但从源码中可以总结出以下约定Python 代码规范使用 4 空格缩进标准 Python 风格类名使用 PascalCase如LoadImage,KSampler,CLIPTextEncode函数和变量名使用 snake_case如get_timestep_range,model_options常量使用 UPPER_CASE如CATEGORY,RETURN_TYPES节点命名规范节点类名应反映其功能如ImageUpscale,TextConcatenateCATEGORY 使用有意义的层级结构如image/processing,text/utils输入/输出名称使用可读的 snake_case文件组织规范每个自定义节点包应放在custom_nodes/下的独立子目录中包内应包含__init__.py文件建议将节点类定义放在单独的.py文件中避免单个文件过于庞大2.4 开发文档体系介绍ComfyUI 官方文档的开发与扩展模块是你开发过程中最核心的参考资料。该模块包含文档章节内容适合场景开发指南开发流程概述、环境搭建建议入门阅读自定义节点节点结构、输入输出类型、注册规范核心开发参考节点替换旧节点迁移到新节点的方案节点更新升级API本地 API 端点与调用方式API 集成开发前端扩展JS 前端扩展开发高级 UI 定制建议在开始开发前花 30 分钟浏览开发与扩展模块的所有页面建立一个整体的认知框架。开发过程中遇到具体问题时再回到对应的页面查阅细节。三、开发环境搭建全流程3.1 整体流程概览开发环境的搭建分为以下几个步骤安装 Python 3.10 ↓ 安装 VS Code Python 扩展 ↓ 克隆 ComfyUI 源码仓库 ↓ 创建 Python 虚拟环境 ↓ 安装项目依赖 ↓ 配置 comfy-cli可选但推荐 ↓ 验证开发环境重要提示建议在独立的目录中搭建开发环境与已有 ComfyUI 安装分开。这样既不影响日常使用也避免开发过程中的修改破坏已有环境。开发环境主要用于编写和测试自定义节点不需要放置大量模型文件一个基础模型即可满足测试需求。3.2 安装 Python 3.10ComfyUI 推荐的 Python 版本是3.10。虽然较新版本如 3.11、3.12可能也能运行但为了保证兼容性特别是使用 comfy-cli 和一些自定义节点时建议严格使用 Python 3.10。检查是否已有 Pythonpython3 --version如果输出Python 3.10.x则无需重新安装。如果没有 Python 或版本不正确请按以下步骤安装macOS 安装# 使用 Homebrew 安装推荐 brew install python3.10 # 验证安装 python3.10 --versionWindows 安装访问 Python 3.10 官方下载页面选择 Windows Installer (64-bit) 下载安装时务必勾选 Add Python 3.10 to PATH打开命令提示符验证python --versionLinuxUbuntu/Debian安装sudo apt update sudo apt install python3.10 python3.10-venv python3.10-dev -y python3.10 --version3.3 安装 VS Code 与必备扩展VS CodeVisual Studio Code是目前最流行的 Python 开发 IDE免费、轻量、功能强大。① 下载并安装 VS Code访问 VS Code 官网 下载对应系统版本。② 安装 Python 扩展打开 VS Code点击左侧扩展图标或按CmdShiftX/CtrlShiftX搜索并安装以下扩展扩展名用途是否为必需Python微软官方Python 语言支持、代码补全、调试✅必需Pylance快速、功能丰富的 Python 语言服务✅必需Python DebuggerPython 调试器支持✅必需GitLensGit 历史可视化代码溯源⭕ 推荐Rainbow CSVCSV 文件语法高亮⭕ 推荐③ 配置 Python 解释器在 VS Code 中按CmdShiftPmacOS或CtrlShiftPWindows/Linux输入 Python: Select Interpreter选择你刚安装的 Python 3.10。3.4 克隆 ComfyUI 源码仓库创建一个专门的开发目录并从 GitHub 克隆 ComfyUI 源码# 创建开发目录建议放在用户目录下 mkdir ~/comfyui-dev cd ~/comfyui-dev # 克隆 ComfyUI 源码 git clone https://github.com/comfyanonymous/ComfyUI.git # 进入 ComfyUI 目录 cd ComfyUI分支选择建议默认master分支包含最新代码适合开发测试如需稳定版本可以 checkout 到具体的 Release 版本git checkout v0.3.0版本号以实际为准建议使用 master 分支因为自定义节点通常需要兼容最新版本的 ComfyUI3.5 创建虚拟环境与安装依赖① 创建 Python 虚拟环境虚拟环境可以隔离项目依赖避免不同项目之间的包冲突。# macOS / Linux python3.10 -m venv venv source venv/bin/activate # Windows python -m venv venv venv\Scripts\activate激活虚拟环境后命令行前面会出现(venv)标识。② 升级 pippip install --upgrade pip③ 安装核心依赖# 安装基础依赖 pip install -r requirements.txt # 安装开发额外依赖如需调试 PyTorch pip install torch torchvision torchaudio依赖安装加速如遇下载缓慢可使用国内镜像源pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple常见问题处理macOS M1/M2 芯片如果 PyTorch 安装失败尝试pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cpu权限问题如遇权限错误检查是否在虚拟环境内source venv/bin/activate依赖冲突使用pip list检查已安装的包必要时使用pip uninstall先卸载冲突包3.6 配置 comfy-cli 命令行工具comfy-cli 是 ComfyUI 的官方命令行工具提供了项目管理、插件安装、配置管理等功能。虽然不是开发必需的但它能大大简化开发流程。① 安装 comfy-clipip install comfy-cli② 验证安装comfy --version③ 常用命令一览命令功能开发中的用途comfy node install url安装自定义节点安装测试依赖节点comfy node list列出已安装节点查看节点加载状态comfy node update name更新指定节点更新节点到最新版本comfy run启动 ComfyUI开发模式快速启动测试comfy env显示环境信息排查环境配置问题④ 开发模式启动关键使用 comfy-cli 以开发模式启动 ComfyUI# 在 ComfyUI 项目目录下 comfy run --listen 0.0.0.0 --port 8188此时终端会显示更详细的日志信息包括节点加载过程、错误堆栈等对开发调试非常有帮助。3.7 验证开发环境在正式开始开发之前先验证环境是否配置正确。步骤 1启动 ComfyUI# 确保虚拟环境已激活 source venv/bin/activate # macOS/Linux # 或 venv\Scripts\activate # Windows # 启动 ComfyUI python main.py步骤 2验证访问浏览器访问http://127.0.0.1:8188应看到 ComfyUI 主界面。步骤 3验证节点加载观察终端输出确认没有ERROR级别的日志。如果看到Custom nodes loaded相关的提示说明节点加载正常。步骤 4验证 Python 开发环境在 VS Code 中创建一个测试文件test_env.py# test_env.py import torch import comfy print(fPyTorch 版本: {torch.__version__}) print(fCUDA 可用: {torch.cuda.is_available()}) print(fComfyUI 导入成功: {comfy.__name__})右键选择 Run Python File in Terminal 运行确认输出正常。环境验证清单✅ Python 3.10 可正常调用✅ VS Code 已选择正确的 Python 解释器✅ ComfyUI 可正常启动并访问✅ 虚拟环境已激活依赖已安装✅ comfy-cli 已安装可选✅ PyTorch 可导入✅ comfy 核心模块可导入四、编写第一个测试节点Hello World在搭建好开发环境后让我们编写第一个自定义节点——一个简单但功能完整的 Hello World 节点。这个节点会接收一个文本输入在控制台打印问候语并返回格式化后的字符串。4.1 节点目录结构在custom_nodes/目录下创建一个新的节点包custom_nodes/ └── comfyui-hello-world/ # 节点包目录 ├── __init__.py # 包初始化文件必需 └── hello_node.py # 节点实现文件4.2 编写节点代码第一步创建目录cd ~/comfyui-dev/ComfyUI/custom_nodes mkdir comfyui-hello-world cd comfyui-hello-world第二步编写__init__.py# __init__.py # ComfyUI 在加载自定义节点时会首先执行此文件 # 在此文件中导入节点类确保节点被注册到系统中 from .hello_node import HelloWorldNode第三步编写hello_node.py# hello_node.py # Hello World 自定义节点示例 # 功能接收文本输入添加问候语前缀并返回 class HelloWorldNode: 一个简单的 Hello World 节点。 展示 ComfyUI 自定义节点的基本结构和注册方式。 # 节点的类别显示在节点列表中的路径 CATEGORY example # 节点的输入类型定义 classmethod def INPUT_TYPES(cls): 定义节点的输入端口。 返回一个字典包含 required必需和 optional可选输入。 return { required: { input_text: (STRING, { multiline: True, # 允许多行文本 default: World, # 默认值 placeholder: 请输入你的名字 # 占位提示 }), greeting: ([Hello, Hi, Hey, 你好, Bonjour], { default: Hello }), }, optional: { suffix: (STRING, { default: ! }), } } # 节点的返回类型定义 RETURN_TYPES (STRING,) # 节点返回端口的显示名称可选 RETURN_NAMES (greeting_text,) # 节点的功能函数名称 FUNCTION greet # 节点的显示名称在界面上显示的名称 DISPLAY_NAME Hello World 问候 # 节点的描述信息鼠标悬停时显示 DESCRIPTION 一个简单的问候节点输入名字并选择问候语 def greet(self, input_text, greeting, suffix!): 核心功能函数。 参数名必须与 INPUT_TYPES 中定义的键名一致。 Args: input_text: 用户输入的文本 greeting: 选择的问候语 suffix: 后缀符号 Returns: 包含格式化问候语的元组 # 在控制台输出日志 print(f[HelloWorld] 收到输入: {input_text}, 问候语: {greeting}) # 生成问候文本 result f{greeting}, {input_text}{suffix} # 在控制台输出结果 print(f[HelloWorld] 输出结果: {result}) return (result,) # 节点导出映射兼容 ComfyUI 的节点发现机制 NODE_CLASS_MAPPINGS { HelloWorldNode: HelloWorldNode } NODE_DISPLAY_NAME_MAPPINGS { HelloWorldNode: Hello World 问候 }4.3 在 ComfyUI 中加载测试步骤 1重启 ComfyUI# 确保在 ComfyUI 项目目录且虚拟环境已激活 python main.py步骤 2观察启动日志在终端中你应该能看到类似以下的输出[ComfyUI] Loading custom nodes from: /path/to/comfyui-dev/ComfyUI/custom_nodes/comfyui-hello-world [ComfyUI] Registering node: HelloWorldNode (Hello World 问候)步骤 3在界面中使用浏览器访问http://127.0.0.1:8188右键点击工作区域在菜单中选择 Add Node → example → Hello World 问候节点会出现在工作区包含一个文本输入框和一个问候语下拉选择添加一个Text Multiline节点用于显示输出连接 HelloWorldNode 的输出到 Text Multiline 的输入输入文本点击 Queue Prompt 执行查看输出结果排错提示节点没有出现在菜单中 → 检查终端是否有错误日志确认__init__.py是否正确导入执行时报错 → 检查 FUNCTION 指定的方法名是否与代码中的方法名一致输出为空 → 检查 RETURN_TYPES 定义是否正确返回值是否匹配五、开发调试技巧5.1 日志输出技巧在节点开发过程中日志是最常用也最有效的调试手段。ComfyUI 会将标准输出print和标准错误sys.stderr显示在终端中。基础日志输出print([MyNode] 这是一个调试信息) print(f[MyNode] 变量值: {variable})带前缀的日志风格推荐def process(self, input_data): print(f[MyCustomNode] 开始处理...) print(f[MyCustomNode] 输入参数: {input_data}) # 处理逻辑 result do_something(input_data) print(f[MyCustomNode] 处理完成结果: {result}) return (result,)使用 Python logging 模块高级import logging logger logging.getLogger(comfyui.my_custom_node) class MyAdvancedNode: def process(self, data): logger.info(fProcessing data: {data}) logger.debug(fDetailed debug info: ...) # ...5.2 VS Code 调试配置VS Code 的调试功能可以让你在代码中设置断点逐步执行检查变量值。配置调试器在 VS Code 中打开 ComfyUI 项目目录点击左侧运行和调试图标或按CmdShiftD点击创建 launch.json 文件选择 Python Debugger → Python File将生成的launch.json配置修改为{ version: 0.2.0, configurations: [ { name: ComfyUI Debug, type: debugpy, request: launch, program: ${workspaceFolder}/main.py, console: integratedTerminal, justMyCode: false, env: { PYTHONPATH: ${workspaceFolder} } } ] }使用调试器在节点代码中点击行号左侧添加断点红点按F5启动调试ComfyUI 启动后在工作流中执行你的节点当代码执行到断点处时VS Code 会暂停执行可以使用变量面板检查当前变量值使用F10单步执行F11进入函数内部5.3 热重载与快速迭代方法一手动重启最常用每次修改代码后停止 ComfyUICtrlC然后重新启动。这种方法简单可靠适合开发初期。方法二使用 --auto-launch 参数python main.py --auto-launchComfyUI 启动后会自动打开浏览器。方法三不重启快速测试对于纯逻辑测试不涉及节点注册可以直接在 Python 中导入并测试# 在项目目录下创建 test_quick.py from custom_nodes.comfyui-hello-world.hello_node import HelloWorldNode node HelloWorldNode() result node.greet(World, Hello) print(result) # 输出: (Hello, World!,)# 运行快速测试确保虚拟环境已激活 python test_quick.py5.4 常见错误排查错误现象可能原因解决方法模块导入错误ModuleNotFoundError虚拟环境未激活或依赖未安装激活虚拟环境source venv/bin/activate安装依赖pip install -r requirements.txt节点未注册节点列表找不到__init__.py未正确导入节点类或 NODE_CLASS_MAPPINGS 缺失检查__init__.py中的导入语句确认有NODE_CLASS_MAPPINGS定义执行时报错TypeError等FUNCTION 方法名不匹配或参数名不一致确认FUNCTION method_name与实际的def method_name():一致确认方法参数名与 INPUT_TYPES 中的键名一致返回类型不匹配RETURN_TYPES 与实际返回值类型或数量不匹配确认返回值是元组确认元素数量与 RETURN_TYPES 定义一致CUDA 内存不足测试时使用了过大模型或过大的图像尺寸降低图像尺寸使用 CPU 模式测试逻辑正确性端口被占用另一个 ComfyUI 实例已在运行关闭其他实例或使用--port 8189指定不同端口六、总结与下一篇预告6.1 本章核心知识点回顾通过本文的学习你已经完成了从 ComfyUI 使用者到开发者的第一步。让我们回顾一下本文的核心内容社区贡献指南✅ 理解了 ComfyUI 仓库结构——comfy/核心引擎、comfy_extras/扩展节点、custom_nodes/自定义节点✅ 了解了五种社区贡献方式——Bug 报告、功能建议、文档改进、Pull Request、自定义节点开发✅ 掌握了开发规范和代码风格要求开发环境搭建关键产出✅ Python 3.10 已安装并可用✅ VS Code 已配置 Python 扩展和正确的解释器✅ ComfyUI 源码已克隆到开发目录✅ 虚拟环境已创建依赖已安装✅ comfy-cli 已配置可选✅ 开发环境验证通过第一个测试节点✅ 理解了自定义节点的基本代码结构——CATEGORY、INPUT_TYPES、RETURN_TYPES、FUNCTION✅ 编写了 Hello World 节点并在 ComfyUI 中成功加载✅ 掌握了基本的日志输出和调试方法6.2 下一篇预告自定义节点创建与发布环境搭建完成Hello World 节点也跑通了。下一篇博客 24我们将在此基础上大展拳脚——深入学习自定义节点的完整开发流程包括节点代码结构深度拆解继承体系、输入/输出配置、注册机制三个实操案例——文本格式化节点、图像尺寸计算节点、条件路由节点调试技巧进阶——断点调试、异常处理、输入验证节点发布至 Comfy Hub——从注册到审核的全流程准备好了吗下一篇我们将真正开始创造自定义节点。官方参考链接ComfyUI GitHub 仓库 — 主仓库源码ComfyUI 官方文档 — 开发与扩展 — 开发指南与自定义节点文档ComfyUI 自定义节点开发文档 → 开发与扩展 → 自定义节点 — 节点结构、输入输出类型规范comfy-cli GitHub 仓库 — 命令行工具源码与使用文档VS Code Python 扩展文档 — Python 开发环境配置教程Python 3.10 下载页面 — 推荐的 Python 版本Comfy Hub — 工作流与自定义节点市场

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2633536.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…