{"record":{"id":"d4d8615586487d86","repo":"BerriAI/litellm","slug":"ragflow-vector-stores-support-dataset-management-o","errorCode":null,"errorMessage":"RAGFlow vector stores support dataset management only, not search/retrieval","messagePattern":"RAGFlow vector stores support dataset management only, not search/retrieval","errorType":"exception","errorClass":"NotImplementedError","httpStatus":null,"severity":"error","filePath":"litellm/llms/ragflow/vector_stores/transformation.py","lineNumber":97,"sourceCode":"\n        # Remove trailing slashes\n        api_base = api_base.rstrip(\"/\")\n\n        # RAGFlow datasets API endpoint\n        return f\"{api_base}/api/v1/datasets\"\n\n    def transform_search_vector_store_request(\n        self,\n        vector_store_id: str,\n        query: str | list[str],\n        vector_store_search_optional_params: VectorStoreSearchOptionalRequestParams,\n        api_base: str,\n        litellm_logging_obj: LiteLLMLoggingObj,\n        litellm_params: dict,\n        extra_body: dict[str, Any] | None = None,\n    ) -> tuple[str, dict]:\n        \"\"\"RAGFlow vector stores are management-only, search is not supported.\"\"\"\n        raise NotImplementedError(\"RAGFlow vector stores support dataset management only, not search/retrieval\")\n\n    def transform_search_vector_store_response(\n        self, response: httpx.Response, litellm_logging_obj: LiteLLMLoggingObj\n    ) -> VectorStoreSearchResponse:\n        \"\"\"RAGFlow vector stores are management-only, search is not supported.\"\"\"\n        raise NotImplementedError(\"RAGFlow vector stores support dataset management only, not search/retrieval\")\n\n    def transform_create_vector_store_request(\n        self,\n        vector_store_create_optional_params: VectorStoreCreateOptionalRequestParams,\n        api_base: str,\n    ) -> tuple[str, dict]:\n        \"\"\"\n        Transform create request to RAGFlow POST /api/v1/datasets format.\n\n        Maps LiteLLM params to RAGFlow dataset creation parameters.\n        RAGFlow-specific fields can be passed via metadata.\n        \"\"\"","sourceCodeStart":79,"sourceCodeEnd":115,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/llms/ragflow/vector_stores/transformation.py#L79-L115","documentation":"Capability guard in the RAGFlow vector-store config: transform_search_vector_store_request is deliberately unimplemented because RAGFlow datasets are management-only. Any vector-store search/retrieval attempt through LiteLLM raises this immediately.","triggerScenarios":"Triggered when attempting search/retrieval against RAGFlow vector stores, which only support dataset management.","commonSituations":"See trigger scenarios.","solutions":["Use the RAGFlow vector store for dataset create/update/delete operations only.","For search/retrieval use a RAGFlow chat/retrieval flow instead of the vector store API."],"exampleFix":"# call vector_stores.create/update/delete; do not call search on ragflow vector stores.","handlingStrategy":"fallback","validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8","analyzedAt":"2026-08-18T11:44:31.656Z","contentChangedAt":null,"schemaVersion":2},"datasetVersion":"2026-09-14T00:17:10.932Z"}