Implement cost calculator for Tuber (#471)

* Adding cost calculation in tuner for BYOK

* fix

* implement cost calculator for Tuner

* Update api/services/integrations/tuner/completion.py

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

* feat: expose render_options in node spec

* Update api/services/integrations/registry.py

Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>

---------

Co-authored-by: mohamed salem <259547077+mohamedsalem-bot@users.noreply.github.com>
Co-authored-by: cubic-dev-ai[bot] <191113872+cubic-dev-ai[bot]@users.noreply.github.com>
Co-authored-by: Abhishek Kumar <abhishek@a6k.me>
This commit is contained in:
Mohamed-Mamdouh 2026-07-02 08:21:14 +01:00 committed by GitHub
parent 97803b8121
commit 65d46bc313
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
16 changed files with 479 additions and 188 deletions

View file

@ -16,6 +16,7 @@ from api.services.workflow.node_specs._base import (
NodeExample,
NodeSpec,
PropertyOption,
PropertyRendererOptions,
PropertySpec,
PropertyType,
)
@ -50,7 +51,7 @@ def spec_field(
display_options: DisplayOptions | None = None,
options: list[PropertyOption] | None = None,
editor: str | None = None,
extra: dict[str, Any] | None = None,
renderer_options: PropertyRendererOptions | None = None,
spec_exclude: bool = False,
min_value: float | None = None,
max_value: float | None = None,
@ -69,7 +70,7 @@ def spec_field(
"display_options": display_options,
"options": options,
"editor": editor,
"extra": extra or {},
"renderer_options": renderer_options,
"spec_exclude": spec_exclude,
"min_value": min_value,
"max_value": max_value,
@ -206,7 +207,7 @@ def _build_property_spec(
max_length=max_length,
pattern=pattern,
editor=meta.get("editor"),
extra=meta.get("extra") or {},
renderer_options=meta.get("renderer_options"),
)