Skip to content

Commit 91d6e17

Browse files
fix launchable notebook api_settings: dict -> ApiSettings(...) pydantic model
cuOpt 26.4 + pydantic settings migration in PR #32 requires ApiSettings instead of plain dicts. Two cells in launchable.ipynb still passed dicts, causing AttributeError: 'dict' object has no attribute 'api' at runtime.
1 parent d39ffae commit 91d6e17

1 file changed

Lines changed: 10 additions & 10 deletions

File tree

notebooks/launchable.ipynb

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -2073,20 +2073,20 @@
20732073
],
20742074
"source": [
20752075
"# Instantiate CVaR optimization problem for the S&P 500 example\n",
2076-
"api_settings = {\n",
2077-
" \"api\": \"cvxpy\", # \"cvxpy\" or \"cuopt_python\"\n",
2078-
" \"weight_constraints_type\": \"parameter\", # \"parameter\" or \"bounds\" (CVXPY only)\n",
2079-
" \"cash_constraints_type\": \"parameter\", # \"parameter\" or \"bounds\" (CVXPY only)\n",
2080-
" }\n",
2076+
"api_settings = ApiSettings(\n",
2077+
" api=\"cvxpy\", # \"cvxpy\" or \"cuopt_python\"\n",
2078+
" weight_constraints_type=\"parameter\", # \"parameter\" or \"bounds\" (CVXPY only)\n",
2079+
" cash_constraints_type=\"parameter\", # \"parameter\" or \"bounds\" (CVXPY only)\n",
2080+
")\n",
20812081
"cvar_problem = cvar_optimizer.CVaR(\n",
20822082
" returns_dict=returns_dict,\n",
20832083
" cvar_params=cvar_params,\n",
20842084
" api_settings=api_settings\n",
20852085
")\n",
20862086
"\n",
20872087
"# Solve on GPU\n",
2088-
"gpu_solver_settings = {\"solver\":cp.CUOPT, \"verbose\": False, \"solver_method\": \"PDLP\"} \n",
2089-
"gpu_results, gpu_portfolio = cvar_problem.solve_optimization_problem(solver_settings=gpu_solver_settings)\n"
2088+
"gpu_solver_settings = {\"solver\": cp.CUOPT, \"verbose\": False, \"solver_method\": \"PDLP\"}\n",
2089+
"gpu_results, gpu_portfolio = cvar_problem.solve_optimization_problem(solver_settings=gpu_solver_settings)"
20902090
]
20912091
},
20922092
{
@@ -2221,14 +2221,14 @@
22212221
"cvar_problem = cvar_optimizer.CVaR(\n",
22222222
" returns_dict=returns_dict,\n",
22232223
" cvar_params=cvar_params,\n",
2224-
" api_settings={\"api\": \"cuopt_python\"}\n",
2224+
" api_settings=ApiSettings(api=\"cuopt_python\")\n",
22252225
")\n",
22262226
"\n",
22272227
"# Solver settings for cuOpt Python API\n",
2228-
"cuopt_settings = {\"log_to_console\":True, \"presolve\": 0, \"method\": 1}\n",
2228+
"cuopt_settings = {\"log_to_console\": True, \"presolve\": 0, \"method\": 1}\n",
22292229
"\n",
22302230
"# Solve using cuOpt Python API\n",
2231-
"cuopt_gpu_results, cuopt_gpu_portfolio = cvar_problem.solve_optimization_problem(solver_settings=cuopt_settings)\n"
2231+
"cuopt_gpu_results, cuopt_gpu_portfolio = cvar_problem.solve_optimization_problem(solver_settings=cuopt_settings)"
22322232
]
22332233
},
22342234
{

0 commit comments

Comments
 (0)