We support bucketing of text match scores, and in recent RC builds, have made it even more flexible by allowing you to specify the number of docs that go into a bucket (instead of just number of buckets). See:
https://github.com/typesense/typesense/pull/2120
But my earlier comment holds: from my experience with other customers, seldom do 4 independent ranking fields work well in practice. Either you should model it as some form of weighted score or fine-tune the model itself to incorporate those signals.