I was able to use a json-schema shard to streamline the generation of the JSON. I think the implementation is more elegant than what I've seen in other openai libraries. I'm really excited about functions and their potential! What has been your experience with them?