(knowledge_id=None, document_id=None)
| 266 | |
| 267 | |
| 268 | def drop_knowledge_index(knowledge_id=None, document_id=None): |
| 269 | if knowledge_id is None and document_id is None: |
| 270 | raise AppApiException(500, _('Knowledge ID or Document ID must be provided')) |
| 271 | |
| 272 | if knowledge_id is not None: |
| 273 | k_id = knowledge_id |
| 274 | else: |
| 275 | document = QuerySet(Document).filter(id=document_id).first() |
| 276 | k_id = document.knowledge_id |
| 277 | |
| 278 | sql = f"SELECT indexname, indexdef FROM pg_indexes WHERE tablename = 'embedding' AND indexname = 'embedding_hnsw_idx_{k_id}'" |
| 279 | index = sql_execute(sql, []) |
| 280 | if index: |
| 281 | sql = f'DROP INDEX "embedding_hnsw_idx_{k_id}"' |
| 282 | update_execute(sql, []) |
| 283 | maxkb_logger.info(f'Dropped index for knowledge ID: {k_id}') |
| 284 | |
| 285 | |
| 286 | def update_resource_mapping_by_knowledge(knowledge_id: str): |
no test coverage detected