@@ -185,6 +185,24 @@ def _check_rag_embedding_model_config(
185185 return gapic_vector_db .rag_embedding_model_config .ByteSize () > 0
186186
187187
188+ def _check_document_corpus (
189+ gapic_corpus_type_config : GapicRagCorpus .CorpusTypeConfig ,
190+ ) -> bool :
191+ try :
192+ return gapic_corpus_type_config .__contains__ ("document_corpus" )
193+ except AttributeError :
194+ return gapic_corpus_type_config .document_corpus .ByteSize () > 0
195+
196+
197+ def _check_memory_corpus (
198+ gapic_corpus_type_config : GapicRagCorpus .CorpusTypeConfig ,
199+ ) -> bool :
200+ try :
201+ return gapic_corpus_type_config .__contains__ ("memory_corpus" )
202+ except AttributeError :
203+ return gapic_corpus_type_config .memory_corpus .ByteSize () > 0
204+
205+
188206def _convert_gapic_to_rag_managed_db (
189207 gapic_rag_managed_db : GapicRagVectorDbConfig .RagManagedDb ,
190208) -> RagManagedDb :
@@ -252,10 +270,10 @@ def convert_gapic_to_vector_db(
252270
253271
254272def convert_gapic_to_vertex_ai_search_config (
255- gapic_vertex_ai_search_config : VertexAiSearchConfig ,
256- ) -> VertexAiSearchConfig :
273+ gapic_vertex_ai_search_config : GapicVertexAiSearchConfig ,
274+ ) -> Optional [ VertexAiSearchConfig ] :
257275 """Convert Gapic VertexAiSearchConfig to VertexAiSearchConfig."""
258- if gapic_vertex_ai_search_config .serving_config :
276+ if gapic_vertex_ai_search_config .ByteSize () > 0 :
259277 return VertexAiSearchConfig (
260278 serving_config = gapic_vertex_ai_search_config .serving_config ,
261279 )
@@ -293,6 +311,8 @@ def convert_gapic_to_backend_config(
293311 gapic_vector_db : GapicRagVectorDbConfig ,
294312) -> RagVectorDbConfig :
295313 """Convert Gapic RagVectorDbConfig to VertexVectorSearch, Pinecone, or RagManagedDb."""
314+ if not gapic_vector_db or not gapic_vector_db .ByteSize ():
315+ return None
296316 vector_config = RagVectorDbConfig ()
297317 if _check_pinecone (gapic_vector_db ):
298318 vector_config .vector_db = Pinecone (
@@ -314,16 +334,21 @@ def convert_gapic_to_backend_config(
314334 gapic_vector_db .rag_embedding_model_config
315335 )
316336 )
337+ if (
338+ vector_config .vector_db is None
339+ and vector_config .rag_embedding_model_config is None
340+ ):
341+ return None
317342 return vector_config
318343
319344
320345def convert_gapic_to_rag_corpus_type_config (
321346 gapic_rag_corpus_type_config : GapicRagCorpus .CorpusTypeConfig ,
322347) -> RagCorpusTypeConfig :
323348 """Convert GapicRagCorpus.CorpusTypeConfig to RagCorpusTypeConfig."""
324- if gapic_rag_corpus_type_config . document_corpus :
349+ if _check_document_corpus ( gapic_rag_corpus_type_config ) :
325350 return RagCorpusTypeConfig (corpus_type_config = DocumentCorpus ())
326- elif gapic_rag_corpus_type_config . memory_corpus :
351+ elif _check_memory_corpus ( gapic_rag_corpus_type_config ) :
327352 return RagCorpusTypeConfig (
328353 corpus_type_config = MemoryCorpus (
329354 llm_parser = LlmParserConfig (
0 commit comments