Skip to main content

适用于NoneBot2的Comfyui绘图插件

Project description

nonebot-plugin-comfyui

⭐基于NoneBot2调用Comfyui(https://github.com/comfyanonymous/ComfyUI)进行绘图的插件⭐
⭐AI文生图,图生图...插件(comfyui能做到的它都可以)⭐
⭐本插件适配多后端, 可以同时使用多个后端生图哦


⭐ 介绍

支持调用comfyui工作流进行绘画的插件, 支持选择工作流, 调整分辨率等等

群 687904502 / 116994235

📜 免责声明

[!note] 本插件仅供学习研究使用,使用者需自行承担使用插件的风险。作者不对插件的使用造成的任何损失或问题负责。请合理使用插件,遵守相关法律法规。 使用本插件即表示您已阅读并同意遵守以上免责声明。如果您不同意或无法遵守以上声明,请不要使用本插件。

核心功能/优势!

  • 相比SD-WebUI, 不需要单独适配插件, 能在comfyui上跑通, 使用机器人一样可以!具有很高的灵活度!
  • 支持调用comfyui工作流进行绘画/文字/视频输出
  • 支持自由选择工作流, 能把工作流注册成命令, 并且支持为工作流自定义命令参数, 灵活度拉满! emb emb
  • 支持同时使用多个后端(自动选择/手动选择), 支持多后端同时生图(-con 参数) emb
  • 独创reflex模式, 来自定义comfyui参数
  • 具备图像审核, 防止涩涩
  • 使用ALC实现跨平台
  • 支持comfyui队列, 使用任务id来查询任务状态, 获取任务生成结果, 终止任务等等
  • 支持查询comfyui节点详细信息
  • 支持一个工作流同时输出多种媒体(同时输出几张图片, 文字, 视频)
  • 支持本地审核图片了, 不需要再调用雕雕的api

💿 安装

pip 安装

pip install nonebot-plugin-comfyui

[!note] 在nonebot的pyproject.toml中的plugins = ["nonebot_plugin_comfyui"]添加此插件

nb-cli安装

nb plugin install nonebot-plugin-comfyui

git clone安装(不推荐)

  • 命令窗口cmd下运行
git clone https://github.com/DiaoDaiaChan/nonebot-plugin-comfyui

⚙️ 配置

在.env中添加以下配置

基础配置 类型 必填项 默认值 说明
comfyui_url str "http://127.0.0.1:8188" comfyui后端地址
comfyui_url_list list ["http://127.0.0.1:8188", "http://127.0.0.1:8288"] comfyui后端地址列表
comfyui_multi_backend bool False 多后端支持
comfyui_model str "" 覆写加载模型节点的时候使用的模型
comfyui_workflows_dir str ./data/comfyui comfyui工作流路径(默认机器人路径/data/comfyui)
comfyui_default_workflows str "txt2img" 不传入工作流参数的时候默认使用的工作流名称(请你自己准备喜欢的工作流, 或者复制本仓库中的comfyui_work_flows中的工作流来学习使用)
comfyui_max_res int 2048 最大分辨率 ^ 2 (暂时没用)
comfyui_base_res int 1024 基础分辨率 ^ 2 (使用-ar 参数的时候插件决定的分辨率)
comfyui_audit bool True 启动图片审核
comfyui_audit_local bool False 启动本地图片审核
comfyui_audit_site str "http://server.20020026.xyz:7865" 图片审核地址(使用sd-webui的tagger插件的API)
comfyui_save_image bool True 是否保存媒体文件到本地(机器人路径/data/comfyui)
comfyui_cd int 20 绘画cd
comfyui_day_limit int 50 每天能画几次/多少秒(重启机器人会重置)
comfyui_limit_as_seconds bool False 使用画图所需要的时间来进行限制, 每天能调用夺少秒
comfyui_timeout int 5 请求后端的时候的超时时间
comfyui_url= "http://127.0.0.1:8188"
comfyui_url_list = ["http://127.0.0.1:8188", "http://127.0.0.1:8288"]
comfyui_multi_backend = false
comfyui_model = ""
comfyui_workflows_dir = "./data/comfyui"
comfyui_default_workflows = "txt2img"
comfyui_max_res = 2048
comfyui_base_res = 1024
comfyui_audit = true
comfyui_audit_local = false
comfyui_audit_site = "http://server.20020026.xyz:7865"
comfyui_save_image = true
comfyui_cd = 20
comfyui_day_limit = 20
comfyui_limit_as_seconds = false
comfyui_timeout = 5

关键!

comfyui_urlcomfyui_workflows_dir是必须的, 否则插件无法正常工作

重要!

关于comfyui_workflows_dir路径下的工作流格式

请导出工作流的时候选择导出为API格式!

重要!插件基础芝士

一些小trick

trick

⭐ 使用

[!note] 请注意你的 COMMAND_START 以及上述配置项。

指令:

指令 需要@ 范围 说明 权限
prompt all 生成图片 all
comfyui帮助 all 获取简易帮助 all
查看工作流 all 查看所有工作流 all
queue all 查看队列 all

💝 特别鸣谢

  • nonebot2: 本项目的基础,非常好用的聊天机器人框架。

TODO

  • 支持中文生图(不打算支持, 需要的小伙伴可以使用comfyui的翻译插件即可)
  • 支持图片审核
  • 查看历史生图记录
  • 多媒体支持 (已支持图片/视频/文字/音频)
  • 保存图片
  • 支持设置多个后端
  • 支持自定义命令
  • 支持并发生图
  • 支持本地审核图像啦

更新日志

2025.02.15 0.6

  • 支持音频输出
  • 新的 -gif 参数 / 不加上它输入gif图片的时候默认截取第一帧
  • 优化了任务失败时候的异常捕获
  • 新增comfyui_timeout, 请求后端的时候的超时时间, 默认5秒
  • 新增了tips
  • 新增了并发功能, 使用 -con, -并发 来使用多后端同时生成
  • 新增了自定义参数预设功能 设定自定义参数
  • 更新了查看工作流的显示效果和帮助菜单
  • 添加插件版本更新提示
  • 添加了本地审核 (comfyui_audit_local)

2024.12.17 0.5.2

  • 支持转发消息(ob11适配器), 使用 -f 参数使这条消息转发, 也可以在override中添加 forward: true
  • queue命令支持新的参数, 具体请看帮助
  • 新capi命令, 具体请看帮助
  • 新的节点覆盖操作, replace_prompt和replace_negative_prompt 替换提示词

2024.12.13 0.5.1

  • 支持查询, 获取队列 (发送 comfyui帮助来查看)
  • 添加能使用画图耗费的时间来限制 (设置 comfyui_limit_as_seconds = true)
  • 添加了异常, 方便处理生图出错的情况
  • 支持一个工作流同时输出多种媒体(同时输出几张图片, 文字, 视频) 输出设置

2024.11.29 0.4.4

  • 支持了自定义参数 见 重要!插件基础芝士
  • 查看工作流命令可以使用工作流的数字索引, 例如 查看工作流 1
  • 添加了CD和每日调用限制(见comfyui_cd, comfyui_day_limit)

2024.11.18 0.4

  • 支持输出文字
  • 支持自定义命令(例如我可以把一个工作流注册为一个命令, 通过它直接调用工作流), 请看新的覆写节点
  • 优化了日志输出

2024.11.11 0.3

  • 支持视频
  • 生成的图片等会保存到本地(comfyui_save_image)来设置
  • 群里画出的涩涩会尝试发送到私聊
  • 新的 -o 参数, 会忽略掉自带的提示词, 全听输入的
  • 新的 -be 参数, 选择后端索引或者输入后端url
  • 支持设置多个后端

2024.11.2

  • 更新了图片帮助, 以及图片工作流
  • 编写了新的说明
  • 私聊不进行审核

2024.10.29

  • 添加 查看工作流 命令

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nonebot_plugin_comfyui-0.6.tar.gz (39.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nonebot_plugin_comfyui-0.6-py3-none-any.whl (44.6 kB view details)

Uploaded Python 3

File details

Details for the file nonebot_plugin_comfyui-0.6.tar.gz.

File metadata

  • Download URL: nonebot_plugin_comfyui-0.6.tar.gz
  • Upload date:
  • Size: 39.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.10.9

File hashes

Hashes for nonebot_plugin_comfyui-0.6.tar.gz
Algorithm Hash digest
SHA256 ac776a4dfd22fc3aab5881823e09cb9cd8065b7e54e12772fb2a22d737fbcc71
MD5 376e770d28c711e48eb70ee597a71a74
BLAKE2b-256 ac7e8af1153d3078ec10d6803aa2f7bf82f93a6cf8d0546671882427a7b6afeb

See more details on using hashes here.

File details

Details for the file nonebot_plugin_comfyui-0.6-py3-none-any.whl.

File metadata

File hashes

Hashes for nonebot_plugin_comfyui-0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 44866effafaf4336744d10bd87978fd758798eee7acbeee51d3ac5da4eb9c241
MD5 8d18a06ac99f8d487c7f9d07067adc42
BLAKE2b-256 90c8ebef9e8575b9cf6ff18a6c84c70f78a24d76dd433d2e10d9e6840c0eb924

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page