I have an org that is currently in Spring '17, and I want to create a sandbox in Summer '17.
Is there a way I can declare what version of sandbox I want and will the sandbox always be created in the same version as the production org?
Nope, you can't request a Summer 17 org at this time. The version is controlled during the new release preview. Generally, depending on the pod your sandbox is on, you must either refresh during a certain window, or not refresh during a certain window. This release's refresh window has already happened, but for future releases, make sure you subscribe to admin emails (on your user record), and pay attention to the preview release post that is sent out about 2-4 weeks before the window occurs.