in google/generativeai/types/content_types.py [0:0]
def to_part(part: PartType):
if isinstance(part, Mapping):
part = _convert_dict(part)
if isinstance(part, protos.Part):
return part
elif isinstance(part, str):
return protos.Part(text=part)
elif isinstance(part, protos.FileData):
return protos.Part(file_data=part)
elif isinstance(part, (protos.File, file_types.File)):
return protos.Part(file_data=file_types.to_file_data(part))
elif isinstance(part, protos.FunctionCall):
return protos.Part(function_call=part)
elif isinstance(part, protos.FunctionResponse):
return protos.Part(function_response=part)
else:
# Maybe it can be turned into a blob?
return protos.Part(inline_data=to_blob(part))