Skip to content

Commit 3f348fa

Browse files
committed
fix typing
Change-Id: If892b20ca29d1afb82c48ae1a49bef58e0421bab
1 parent af6ce40 commit 3f348fa

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

google/generativeai/types/content_types.py

+11-2
Original file line numberDiff line numberDiff line change
@@ -671,15 +671,24 @@ def _encode_fd(fd: FunctionDeclaration | protos.FunctionDeclaration) -> protos.F
671671
return fd.to_proto()
672672

673673

674-
GoogleSearchRetrievalType = Union[protos.GoogleSearchRetrieval, dict[str, float]]
674+
class DynamicRetrievalConfigDict(TypedDict):
675+
mode: protos.DynamicRetrievalConfig.mode
676+
dynamic_threshold: float
677+
678+
DynamicRetrievalConfig = Union[protos.DynamicRetrievalConfig, DynamicRetrievalConfigDict]
679+
680+
class GoogleSearchRetrievalDict(TypedDict):
681+
dynamic_retrieval_config: DynamicRetrievalConfig
682+
683+
GoogleSearchRetrievalType = Union[protos.GoogleSearchRetrieval, GoogleSearchRetrievalDict]
675684

676685

677686
def _make_google_search_retrieval(gsr: GoogleSearchRetrievalType):
678687
if isinstance(gsr, protos.GoogleSearchRetrieval):
679688
return gsr
680689
elif isinstance(gsr, Mapping):
681690
drc = gsr.get("dynamic_retrieval_config", None)
682-
if drc is not None:
691+
if drc is not None and isinstance(drc, Mapping):
683692
mode = drc.get("mode", None)
684693
if mode is not None:
685694
mode = to_mode(mode)

0 commit comments

Comments
 (0)