We Built an Exceedingly Polite AI Dog That Answers Questions About Your APIs
At Akita, our main value proposition is helping users find and fix production issues as quickly as possible, by telling them about their APIs while requiring as little work as possible.
But our users often asked for features we hadn’t built yet, including the ability to automatically generate documentation, write tests for APIs, and provide example API request and response payloads. It turns out that, by using ChatGPT in our web console, we could get surprisingly great results at all of those tasks.
I’m excited to introduce to the world Aki: our ChatGPT-powered assistant. In this blog post, I’ll talk about the motivation for our new friend, show what he can do, and talk about some of the limitations people will need to watch out for with alpha-Aki. Talk to Aki today, no code changes or SDKs necessary.
When ChatGPT first came out, I spent most of my time with it asking it to pretend to be various historical figures or to write bad poetry. While I was impressed, the assistant’s tendency to extrapolate data in unpredictable directions and outright make stuff up made me doubtful of its suitability as a genuinely useful tool for technical work.
But as the Founding Frontend Engineer at Akita, I always wish we could be doing more to present the interesting data we already have—and ChatGPT’s potential to help with this is exciting. So one day I tried feeding it some basic information about our internal APIs, and was surprised to see ChatGPT read between the lines and describe (with reasonable accuracy) the likely purpose of each endpoint using only an HTTP method and a URL.
My initial luck with ChatGPT led me to feed it an entire OpenAPI3 endpoint spec generated by Akita. Our OpenAPI3 specs feature additional data that we infer, such as string formats (e.g. email and various timestamp formats) and example values that Akita has observed in use, so ChatGPT had much more to work with. The results were so exciting that we decided to give our AI assistant a bit of polish and release it to our users to see what value they can get out of it!
Aki Comes to Life
I am now excited to introduce Aki, an exceedingly polite AI dog that answers questions about your APIs. Not only does Aki help you find already-available information faster, but Aki is also able to infer meaning in your API spec, with surprising insight.
Many of our users tell us they don’t know exactly what some of their API endpoints do in practice. The endpoints are often under-documented; wading through logs is not always the most helpful. Aki can simply look at Akita’s endpoint information and synthesize likely explanations:
One of my favorite things about interacting with Aki is that he is very concerned with manners. This is largely because I thought it was funny for a cartoon Akita to talk like an English gentleman, but I also found it endearing to have conversations with a little fancy guy and thought others might too:
Aki is not only charming, but competent. Users have often asked for example payloads and this was not possible until Aki came around:
Users have also said they wish that Akita could automatically generate tests for them. You can ask Aki to help with generating API calls:
Finally, if you’re looking for a fast and easy way to sketch out some documentation for your API endpoint, just ask Aki!
That said, Aki still doesn’t get everything right, as he is in alpha and also a robot.
First of all, Aki is operating under limited information, as he only knows about your APIs from the traffic that he’s seen. With a lot of careful prompting, we’ve gotten Aki to be less prone to overstating its confidence, especially when attempting to apply some basic best practices to real-world API endpoints. Here we show Aki hedging when he is not sure:
Aki is not good at math. While he can usually give a correct answer to questions like “what is the error rate of this endpoint?” He can also give wildly inaccurate responses, like in this example where Aki was wrong twice in a row (though he was very apologetic for the error, to his credit).
Finally, if you get off track from your endpoints, Aki will get off track too:
While we encourage you to play around with Aki and provide us feedback so we can improve its responses, if you choose to break off from the subject of API endpoints and start asking about how many Akitas could fit in an elevator, you’re on your own (though we do wish you luck).
Ask Aki today
Today, Akita is the fastest, easiest way for software teams to see what API endpoints they have, what’s slow, and what’s throwing errors. With the addition of Aki, you can now use Akita to answer more questions than before.
Akita works by passively watching API traffic, using a technology called eBPF. This means you can get insights about your APIs and talk to Aki with no SDKs, no code changes, no querying, and no custom dashboards.
To talk to Aki, try out our beta today. We’d love to hear what Aki told you about your APIs that you didn’t know before.