Files
ycyy-ComfyUI-YCYY-API/options/openai_text_advanced_options_node.py
T
2026-09-14 15:29:57 +08:00

39 lines
1.4 KiB
Python

from comfy_api.latest import io
from ..utils.request_utils import parse_json_options
class OpenAITextAdvancedOptions(io.ComfyNode):
"""Parse user-supplied protocol/API-specific JSON request parameters."""
@classmethod
def define_schema(cls) -> io.Schema:
return io.Schema(
node_id="YCYY_OpenAI_Text_Advanced_Options",
display_name="OpenAI Text Advanced Options",
category="YCYY/API/utils",
inputs=[
io.String.Input(
id="options_json",
multiline=True,
default="{}",
tooltip=(
"JSON object containing protocol/API-specific request parameters. "
"Example:\n{\n \"temperature\": 0.7,\n \"reasoning\": {\n"
" \"effort\": \"medium\"\n }\n}"
),
),
],
outputs=[
io.Custom("YCYY_OPENAI_TEXT_ADVANCED_OPTIONS").Output(
id="advanced_options",
display_name="advanced_options",
tooltip="Advanced request parameters for OpenAI Text API",
)
],
description="Pass custom JSON parameters to the OpenAI Text API.",
)
@classmethod
def execute(cls, options_json) -> io.NodeOutput:
return io.NodeOutput(parse_json_options(options_json))