I script my own solutions, in PHP, so I can’t be of much help to you there.
But, from what I can see of what you posted, isn’t this a typo?: Dimensions for text-embedding-3-large should be 3072, not 3047. Unless you meant to say 1024.
To create a collection, I essentially follow this guidance (for cURL): REST - /v1/schema | Weaviate - Vector Database
As for the module configuration, I believe this is the correct format: