Tags: comet-ml/opik
Tags
[OPIK-3502] [Python BE] Fix ScoreResult import and update json_schema… …_validator tests (#4486) - Fix wrong import path for ScoreResult in metrics.py - Update test_metrics_factory.py to match new json_schema_validator behavior that reads schema from dataset items via schema_key parameter
[OPIK-3502] [BE] Fix optimizer SDK API key and environment configurat… …ion (#4482) * [OPIK-3502] [BE] Clear env vars between jobs to prevent credential leakage When no API key or workspace is provided, explicitly clear the environment variables to prevent previous job's credentials from being reused by subsequent jobs from different users. * [OPIK-3502] [BE] Fix json_schema_validator to read schema from dataset item Changed json_schema_validator metric to use schema_key parameter (default: 'json_schema') to read the schema from each dataset item instead of requiring a static schema in metric parameters. This allows different schemas per dataset item for more flexible validation. * [OPIK-3502] [BE] Add OPIK_URL_OVERRIDE config for Python backend - docker-compose.override.yaml: Default to host.docker.internal:8080 for dev-runner - values.yaml: Default to opik-backend:8080 for Kubernetes deployments This ensures the optimizer SDK can reach the Java backend in all environments. * Update Helm documentation --------- Co-authored-by: CometActions <github-actions@comet.com>
[NA] [DOCS] Update dashboard documentation image (#4481) * [NA] [DOCS] Update dashboard documentation image - Replace dashboards_page.png with dashboard_example.png - Update image reference in dashboards.mdx - Update alt text from "Dashboards page" to "Dashboard" * Optimised images with calibre/image-actions --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
[OPIK-3465] [FE] Add copy suffix to duplicated widget titles (#4480)
Update versions to 1.9.53 and bump base version to 1.9.54
[NA] [BE][FE][SDK] Rename OPIK_BUILTIN to OPIK_FREE and improve free … …model UX (#4443) * [NA] [BE][FE][SDK] Rename OPIK_BUILTIN to OPIK_FREE and improve free model UX Rename internal terminology from OPIK_BUILTIN to OPIK_FREE and enhance the user experience for the free model in the Playground. - Display free model directly in model selector (not in a dropdown/submenu) - Show model as "gpt-4o-mini (free)" with Opik icon for clear identification - Dynamic model label from backend config via `model_label` field - Provider label changed from "Opik Built-in" to "Opik" - Description updated to "Free model provided by Opik - no API key required" - API key name changed to "OPIK_FREE_MODEL_API_KEY" in configuration page - Free model included in search/filter results - LlmProvider enum: OPIK_BUILTIN → OPIK_FREE (value: "opik-free") - Package rename: opikbuiltin → freemodel - Class renames: OpikBuiltin* → FreeModel* - Config: opikbuiltinProviderEnabled → opikfreeProviderEnabled - Environment variable: TOGGLE_OPIKBUILTIN_PROVIDER_ENABLED → TOGGLE_OPIKFREE_PROVIDER_ENABLED - Added model_label to provider configuration for dynamic UI display - PROVIDER_TYPE.OPIK_BUILTIN → PROVIDER_TYPE.OPIK_FREE - PROVIDER_MODEL_TYPE.OPIK_BUILTIN_MODEL → PROVIDER_MODEL_TYPE.OPIK_FREE_MODEL - Feature toggle: OPIKBUILTIN_PROVIDER_ENABLED → OPIKFREE_PROVIDER_ENABLED - Refactored PromptModelSelect for improved free model presentation - TypeScript SDK provider types updated - OpenAPI specs updated * Address PR feedback: add validation and improve robustness - FreeModelConfig: Add JavaDoc explaining required fields - FreeModelConfig: isEnabled() now validates that actualModel, spanProvider, and baseUrl are set, ensuring fail-fast on misconfiguration - PromptModelSelect: Handle empty string for model_label with .trim() check * Fix camelCase naming for opikFreeProviderEnabled Rename opikfreeProviderEnabled to opikFreeProviderEnabled to follow consistent camelCase naming convention in configuration properties. * Remove opikFreeProviderEnabled feature toggle The free model visibility is already controlled by freeModel.enabled backend config, making the feature toggle redundant. This simplifies the codebase by removing unnecessary toggle checks. Changes: - Remove toggle from backend config and ServiceTogglesConfig - Remove toggle from frontend feature-toggles and DEFAULT_STATE - Update ProviderSelect and ProviderGrid to explicitly exclude OPIK_FREE - Update PROVIDER_FEATURE_TOGGLE_MAP type to use Exclude<> - Regenerate OpenAPI specs and SDKs * [NA] [FE] Add opik_free_model metadata flag for BI tracking Add a boolean flag to span metadata when users use the free model, enabling the BI team to identify and track free model usage in the analytics database. * Revision 3: Refactor PromptModelSelect - extract useModelOptions hook - Extract data transformation logic into useModelOptions hook - Simplify renderSelectTrigger with getSelectedModelInfo callback - Fix vertical alignment with py-1 padding on options container - Reduce component from 484 to ~350 lines * Revision 4: Fix useModelOptions type errors - Change ProviderKey to ProviderObject (correct exported type) - Use ModelOption[] instead of inline type for consistency * Revision 5: Fix free model row vertical alignment in PromptModelSelect
[NA] [BE][FE][SDK] Rename OPIK_BUILTIN to OPIK_FREE and improve free … …model UX (#4443) * [NA] [BE][FE][SDK] Rename OPIK_BUILTIN to OPIK_FREE and improve free model UX Rename internal terminology from OPIK_BUILTIN to OPIK_FREE and enhance the user experience for the free model in the Playground. - Display free model directly in model selector (not in a dropdown/submenu) - Show model as "gpt-4o-mini (free)" with Opik icon for clear identification - Dynamic model label from backend config via `model_label` field - Provider label changed from "Opik Built-in" to "Opik" - Description updated to "Free model provided by Opik - no API key required" - API key name changed to "OPIK_FREE_MODEL_API_KEY" in configuration page - Free model included in search/filter results - LlmProvider enum: OPIK_BUILTIN → OPIK_FREE (value: "opik-free") - Package rename: opikbuiltin → freemodel - Class renames: OpikBuiltin* → FreeModel* - Config: opikbuiltinProviderEnabled → opikfreeProviderEnabled - Environment variable: TOGGLE_OPIKBUILTIN_PROVIDER_ENABLED → TOGGLE_OPIKFREE_PROVIDER_ENABLED - Added model_label to provider configuration for dynamic UI display - PROVIDER_TYPE.OPIK_BUILTIN → PROVIDER_TYPE.OPIK_FREE - PROVIDER_MODEL_TYPE.OPIK_BUILTIN_MODEL → PROVIDER_MODEL_TYPE.OPIK_FREE_MODEL - Feature toggle: OPIKBUILTIN_PROVIDER_ENABLED → OPIKFREE_PROVIDER_ENABLED - Refactored PromptModelSelect for improved free model presentation - TypeScript SDK provider types updated - OpenAPI specs updated * Address PR feedback: add validation and improve robustness - FreeModelConfig: Add JavaDoc explaining required fields - FreeModelConfig: isEnabled() now validates that actualModel, spanProvider, and baseUrl are set, ensuring fail-fast on misconfiguration - PromptModelSelect: Handle empty string for model_label with .trim() check * Fix camelCase naming for opikFreeProviderEnabled Rename opikfreeProviderEnabled to opikFreeProviderEnabled to follow consistent camelCase naming convention in configuration properties. * Remove opikFreeProviderEnabled feature toggle The free model visibility is already controlled by freeModel.enabled backend config, making the feature toggle redundant. This simplifies the codebase by removing unnecessary toggle checks. Changes: - Remove toggle from backend config and ServiceTogglesConfig - Remove toggle from frontend feature-toggles and DEFAULT_STATE - Update ProviderSelect and ProviderGrid to explicitly exclude OPIK_FREE - Update PROVIDER_FEATURE_TOGGLE_MAP type to use Exclude<> - Regenerate OpenAPI specs and SDKs * [NA] [FE] Add opik_free_model metadata flag for BI tracking Add a boolean flag to span metadata when users use the free model, enabling the BI team to identify and track free model usage in the analytics database. * Revision 3: Refactor PromptModelSelect - extract useModelOptions hook - Extract data transformation logic into useModelOptions hook - Simplify renderSelectTrigger with getSelectedModelInfo callback - Fix vertical alignment with py-1 padding on options container - Reduce component from 484 to ~350 lines * Revision 4: Fix useModelOptions type errors - Change ProviderKey to ProviderObject (correct exported type) - Use ModelOption[] instead of inline type for consistency * Revision 5: Fix free model row vertical alignment in PromptModelSelect
PreviousNext