From e0a5086db5ca27b30f14d9f3cf1e1a211d0ce8f4 Mon Sep 17 00:00:00 2001 From: ethanlacerenza <71321892+ethanlacerenza@users.noreply.github.com> Date: Fri, 17 Nov 2023 13:11:50 +0100 Subject: [PATCH 1/2] Exception handling in case an incorrect key is loaded. --- core/cat/routes/llm.py | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/core/cat/routes/llm.py b/core/cat/routes/llm.py index 5dfe96b1d..29deb0860 100644 --- a/core/cat/routes/llm.py +++ b/core/cat/routes/llm.py @@ -79,6 +79,7 @@ def get_llm_settings(request: Request, languageModelName: str) -> Dict: "value": setting, "schema": schema } + @router.put("/settings/{languageModelName}") @@ -119,7 +120,19 @@ def upsert_llm_setting( # crete new collections # (in case embedder is not configured, it will be changed automatically and aligned to vendor) # TODO: should we take this feature away? - ccat.load_memory() + # Exception handling in case an incorrect key is loaded. + try: + ccat.load_memory() + except Exception as e: + log.error(e) + crud.delete_settings_by_category(category=LLM_SELECTED_CATEGORY) + crud.delete_settings_by_category(category=LLM_CATEGORY) + raise HTTPException( + status_code=400, + detail={ + "error": str(e) + } + ) # recreate tools embeddings ccat.mad_hatter.find_plugins() ccat.mad_hatter.embed_tools() From f9921a9b3a9d5a4bdc7ca7569cff5dcb3a24e70d Mon Sep 17 00:00:00 2001 From: Ethan Lacerenza <71321892+ethanlacerenza@users.noreply.github.com> Date: Fri, 17 Nov 2023 16:43:28 +0100 Subject: [PATCH 2/2] Update llm.py --- core/cat/routes/llm.py | 1 - 1 file changed, 1 deletion(-) diff --git a/core/cat/routes/llm.py b/core/cat/routes/llm.py index 29deb0860..b493581e8 100644 --- a/core/cat/routes/llm.py +++ b/core/cat/routes/llm.py @@ -81,7 +81,6 @@ def get_llm_settings(request: Request, languageModelName: str) -> Dict: } - @router.put("/settings/{languageModelName}") def upsert_llm_setting( request: Request,