Total maximum reward per year is a fixed number of XTZ therefore the effective amount of percentage inflation due to rewards is due to reduce over time.
It can be updated through a protocol update voted upon by the tezos community. There is no way to tell when such a change will happen but it can be expected to be addressed within a year so as to keep up.
There is effectively a balance between the incentive of bakers to see the percentage inflation be maintained and people not participating in the rewards scheme to see it controlled not too high.
Ultimately there is a complex set of preferences at play to set that rate but at the heart of it baking/delegation offers rewards at a relatively low risk in exchange of reduced liquidity of the capital.
This represents an opportunity cost for agents who can also benefit from active trading on exchange and are willing to take on more risk.
At equilibrium various agents risk/reward preferences will balance to set the XTZ inflation level at an optimal rate for the network.
EDIT 20191012: by protocol the inflation rate is 80XTZ per block. To convert to a yearly number one needs to make an assumption regarding the number of blocks baked per year.
So far the Tezos network has produced roughly 157 cycles in 468 days which is about 122~123 cycles per year instead of the theoretical 128 cycles per year if we were to bake 1440blocks per day (1 per minute). If we look at the more recent stats from tzscan here
we can see that we produce closer to 1400 blocks per day on average which is about 124 cycles per year.
For the efficiency measure we can see here the average reward per period is about 320,000 instead of the theoretical max of 327,680 (4096x80) so we should rather use 78 XTZ per block as effective efficiency instead of 80 xtz per block
So on average over the whole history of tezos we generate on average about 501,541 blocks per year (using 365 days per year) which amounts to 39,120,213 XTZ worth of rewards (assuming the average 78 XTZ reward per block)