Adding Bedrock and Vertex.
-
Bedrock: Followed the same credential path as the standard AWS SDKs. Also building out the base url based on the AWS_PROFILE or other env vars such as AWS_REGION, but it may get messy with runtime vs mantle. Should work but I can't actually test the mantle endpoint with my current setup/configuration.
-
Vertex: Uses native generateContent, should work with both normal authorized_user as well as the enterprise federated stuff, since that's what I have to use. I was only able to test with Sonnet 5 and Opus 4.8 on Bedrock, and Gemini 2.5 Flash and Pro since that's all I have enabled right now unfortunately.
Tests feel a little verbose, happy to go hack at that manually a bit, but they do seem to actually test things that are being done.
For full transparency, AI was used heavily with this PR. I am quite new to Gleam and literally don't know anything about erlang so I'm just using general programming knowledge to gather/understand what the model built out and how it works. I did review the code manually, and it does seem to be mostly simple/straight forward stuff. However, I don't want to waste anyone's time if it's just flat slop and I don't know Gleam well enough to know if it did actually 'good' code vs if it's total mess that works well enough.
Closes issue #16