Skip to content

Commit

Permalink
Merge pull request #552 from kodaline/develop_issue_#461
Browse files Browse the repository at this point in the history
FIX: crash loop on faulty embedder settings
  • Loading branch information
pieroit authored Nov 8, 2023
2 parents 8bae130 + 9cddfe6 commit 9cce6a1
Show file tree
Hide file tree
Showing 2 changed files with 17 additions and 1 deletion.
5 changes: 5 additions & 0 deletions core/cat/db/crud.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,11 @@ def delete_setting_by_id(setting_id: str) -> None:
get_db().remove(query.setting_id == setting_id)


def delete_settings_by_category(category: str) -> None:
query = Query()
get_db().remove(query.category == category)


def update_setting_by_id(payload: models.Setting) -> Dict:

query = Query()
Expand Down
13 changes: 12 additions & 1 deletion core/cat/routes/embedder.py
Original file line number Diff line number Diff line change
Expand Up @@ -123,7 +123,18 @@ def upsert_embedder_setting(
# reload llm and embedder of the cat
ccat.load_natural_language()
# crete new collections (different embedder!)
ccat.load_memory()
try:
ccat.load_memory()
except Exception as e:
log.error(e)
crud.delete_settings_by_category(category=EMBEDDER_SELECTED_CATEGORY)
crud.delete_settings_by_category(category=EMBEDDER_CATEGORY)
raise HTTPException(
status_code=400,
detail={
"error": str(e)
}
)
# recreate tools embeddings
ccat.mad_hatter.find_plugins()
ccat.mad_hatter.embed_tools()
Expand Down

0 comments on commit 9cce6a1

Please sign in to comment.