"I am using protobuf, with the..." <- I saw a project where they had problems using micropb. Not sure what caused them, but everything started working smoothly once they migrated to postcard-rpc. I prefer postcard-rpc in my projects, you can try to use it with PyO3. Still, protobuf is a very viable and popular solution. Another approach you can take: use postcard on rust side and https://pypi.org/project/pypostcard python package