{"record":{"id":"7b2a615f08dfc5c8","repo":"BerriAI/litellm","slug":"vertex-project-is-required-for-vertex-ai-rag-inges-7b2a61","errorCode":null,"errorMessage":"vertex_project is required for Vertex AI RAG ingestion. Set it in vector_store config.","messagePattern":"vertex_project is required for Vertex AI RAG ingestion\\. Set it in vector_store config\\.","errorType":"validation","errorClass":"ValueError","httpStatus":null,"severity":"error","filePath":"litellm/rag/ingestion/vertex_ai_ingestion.py","lineNumber":98,"sourceCode":"        Store content in Vertex AI RAG corpus.\n\n        Vertex AI workflow:\n        1. Create RAG corpus (if not provided)\n        2. Upload file using RAG API (Vertex AI handles chunking/embedding)\n\n        Args:\n            file_content: Raw file bytes\n            filename: Name of the file\n            content_type: MIME type\n            chunks: Ignored - Vertex AI handles chunking\n            embeddings: Ignored - Vertex AI handles embedding\n            existing_file_id: Existing provider file ID, unsupported for Vertex AI\n\n        Returns:\n            Tuple of (rag_corpus_id, file_id)\n        \"\"\"\n        if not self.project_id:\n            raise ValueError(\"vertex_project is required for Vertex AI RAG ingestion. Set it in vector_store config.\")\n\n        # Get or create RAG corpus\n        rag_corpus_id = self.vector_store_config.get(\"vector_store_id\")\n        if not rag_corpus_id:\n            rag_corpus_id = await self._create_rag_corpus(\n                display_name=self.ingest_name or \"litellm-rag-corpus\",\n                description=self.vector_store_config.get(\"description\"),\n            )\n\n        # Upload file to RAG corpus\n        result_file_id = None\n        if file_content and filename and rag_corpus_id:\n            result_file_id = await self._upload_file_to_corpus(\n                rag_corpus_id=rag_corpus_id,\n                filename=filename,\n                file_content=file_content,\n                content_type=content_type,\n            )","sourceCodeStart":80,"sourceCodeEnd":116,"githubUrl":"https://github.com/BerriAI/litellm/blob/77b7c6c40c0c5aa5fbcb1d6a1825ac39ca8829b8/litellm/rag/ingestion/vertex_ai_ingestion.py#L80-L116","documentation":"Raised at the start of the Vertex AI RAG ingestion flow when the vector_store config lacks the mandatory 'vertex_project' setting; without a GCP project id no RAG corpus endpoint can be addressed, so ingestion aborts before any API call.","triggerScenarios":"Thrown at litellm/rag/ingestion/vertex_ai_ingestion.py:98 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":["Set vertex_project in the vector store config."],"exampleFix":null,"handlingStrategy":"validation","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"}