It seems to give answers that are 100% incorrect and when told so says "of course you're right, here is the right answer". The only stuff I'd use it for is if I already know exactly how to write the script and I'm just using it to type it for me quickly because I don't remember if aws_instance is the correct spelling or aws-instance in terraform...
But with code, it’s easy enough to prove correctness just by running it.
That being said, the one bug I find consistently is that with the AWS APIs, all list type methods pagínate and you have to account for that. Python/boto3 have built in paginators.
This an insidious bug because things will work correctly in a dev account with only few resources. But will fail in hard to debug ways in production.
What’s even worse is that ChatGPT “knows” the pattern and will correct itself once you say something like
“This won’t work with more than 50 roles/ec2 instances, etc”
I may not know always know the correct API or CloudFormation/CDK/Terraform syntax. But if it gets it wrong, I can read the docs and correct it.
Providing sources doesn’t usually help. ChatGPT consistently makes up sources.
Certainly with code the proof is in the pudding, but most recently my problem was "I need to create AWS monitors in Datadog to alert when a region is down." ChatGPT was hopeless but bard was able to point me to the exact doc explaining how to set it up.
I’ve also recently been involved in designing a DevOps /Docker deployment pipeline for a customer. They use Java and I haven’t used Java in decades.
Before I would have just done my POC using a Python or Node container and rely on the fact that they knew Java well enough to get the concepts. But I used Java and started the chain of questions “answer all question based on talking to someone who doesn’t know Java. Explain everything step by step.”
In both cases, ChatGPT will usually get me 99% there. But I have to keep trying things and giving it the error messages and iterating.
Of course there is the hallucination issue.
On the other hand, I’ve done a lot of work professionally with old school chat it’s integrated with web pages and call centers with the only intelligent component is that we could parse out parts of speech (nouns, verbs, adjectives, etc) and only search on those.
I would never recommend putting an LLM style chatbot in front of a customer. When I work with customers - especially in the government - the questions and answers are heavily vetted before being put in production.
They would never take a chance that either the customer could jailbreak the chatbot and have it say something and trigger a political argument about “bias” or that it would give incorrect information about a government benefit.