Class VectorStoreUiController
java.lang.Object
ai.mindconnect.adminui.ui.controller.VectorStoreUiController
@RestController
@RequestMapping("/admin/vector-stores")
public class VectorStoreUiController
extends Object
Admin UI for vector stores: templates (the policies — backend, embedding
config, ingestion workflow) and the store instances created from them.
Uses the same
VectorStores resolution the knowledge tools use, so
what the UI shows is exactly what the tools do.-
Constructor Summary
ConstructorsConstructorDescriptionVectorStoreUiController(VectorStores stores, ai.mindconnect.llm.port.out.LlmConfigRepository llmConfigs, FileStore fileStore, VectorStoreService vectorStoreService) -
Method Summary
Modifier and TypeMethodDescriptionai.mindconnect.ui.model.UiPatchbackendFields(Map<String, Object> raw) Backend dropdown changed: re-render the config group for the new choice.ai.mindconnect.ui.model.UiPagecreateStore(Map<String, Object> raw) ai.mindconnect.ui.model.UiPagedeleteFile(String name, String fileId) ai.mindconnect.ui.model.UiPagedeleteStore(String name) ai.mindconnect.ui.model.UiPageai.mindconnect.ui.model.UiPagedeleteTemplate(String name) ai.mindconnect.ui.model.UiPageeditTemplate(String name) ai.mindconnect.ui.model.UiPagelist()ai.mindconnect.ui.model.UiPagenewStore()ai.mindconnect.ui.model.UiPageai.mindconnect.ui.model.UiPagesaveTemplate(Map<String, Object> raw) ai.mindconnect.ui.model.UiPageai.mindconnect.ui.model.UiPagestoreDetail(String name) ai.mindconnect.ui.model.UiPageReceives uploaded files and hands each to the sharedVectorStoreServiceingestion path — the same one the REST API's ingest endpoint takes (ingestion workflow when the template names one, direct chunking otherwise).ai.mindconnect.ui.model.UiPageuploadFiles(List<org.springframework.web.multipart.MultipartFile> uploads)
-
Constructor Details
-
VectorStoreUiController
public VectorStoreUiController(VectorStores stores, ai.mindconnect.llm.port.out.LlmConfigRepository llmConfigs, FileStore fileStore, VectorStoreService vectorStoreService)
-
-
Method Details
-
list
@GetMapping public ai.mindconnect.ui.model.UiPage list() -
uploadFiles
@PostMapping(value="/files/upload", consumes="multipart/form-data") public ai.mindconnect.ui.model.UiPage uploadFiles(@RequestParam("vs-files-upload") List<org.springframework.web.multipart.MultipartFile> uploads) -
deleteStoredFile
@DeleteMapping("/files/{id}") public ai.mindconnect.ui.model.UiPage deleteStoredFile(@PathVariable String id) throws IOException - Throws:
IOException
-
newTemplate
@GetMapping("/templates/new") public ai.mindconnect.ui.model.UiPage newTemplate() -
editTemplate
@GetMapping("/templates/{name}/edit") public ai.mindconnect.ui.model.UiPage editTemplate(@PathVariable String name) -
backendFields
@PostMapping("/templates/backend-fields") public ai.mindconnect.ui.model.UiPatch backendFields(@RequestBody Map<String, Object> raw) Backend dropdown changed: re-render the config group for the new choice. -
saveTemplate
-
deleteTemplate
@DeleteMapping("/templates/{name}") public ai.mindconnect.ui.model.UiPage deleteTemplate(@PathVariable String name) -
newStore
@GetMapping("/stores/new") public ai.mindconnect.ui.model.UiPage newStore() -
createStore
-
storeDetail
@GetMapping("/stores/{name}") public ai.mindconnect.ui.model.UiPage storeDetail(@PathVariable String name) -
upload
@PostMapping("/stores/{name}/upload") public ai.mindconnect.ui.model.UiPage upload(@PathVariable String name, @RequestParam("vs-upload") List<org.springframework.web.multipart.MultipartFile> files) Receives uploaded files and hands each to the sharedVectorStoreServiceingestion path — the same one the REST API's ingest endpoint takes (ingestion workflow when the template names one, direct chunking otherwise). -
search
-
deleteFile
-
deleteStore
@DeleteMapping("/stores/{name}") public ai.mindconnect.ui.model.UiPage deleteStore(@PathVariable String name)
-