Inspiration
We believe that every business will want to create a plugin for ChatGPT very soon. It's a massive opportunity to lower friction and acquire new users. Not only that, but they will also probably want to build plugins for other LLM providers like Google, Bing, and all the Open Source players. That is a lot of work, that with the current set of tools is unrealistic for most teams. We want to help teams in this process.
What it does
Our tool ingests existing API documentation, breaks it down into vectors, uses those vectors to create API schemas, and then uses those schemas to generate the plugin files.
How we built it
We build this tool using a Python backend and Next.js frontend. The backend:
- Accepts a documentation Start and Base URL
- Reads the Start URL and saves the content to s3
- Iteratively explores any linked pages that match the base URL
- Repeats these steps until the Base Domain is fully explored
- Breaks all this data up into vectors and stores them in pinecone
- Extracts the API endpoints and schemas using a series of prompts
- Builds the required plugin files from these schemas
Challenges we ran into
The largest challenge is that some business APIs have over 400 endpoints and just as many documentation pages. This means that:
- Vector embeddings had to be combined with other parameters to produce effective results. Producing reliable schemas was not a simple task.
- Given OpenAI’s limitation on plugin endpoints, we had to limit compatibility to only 5 GET endpoints (we chose the first 5 GET array endpoints listed in the documentation).
Accomplishments that we’re proud of
In relation to the challenge above, we’re very proud of producing complete API schemas from just documentation. This was not a simple task given how large and messy the documentation can be, but it is an extremely simple user experience. Unfortunately, we weren’t able to incorporate this complete schema into the ChatGPT plugin due to OpenAI's limitation, but we think we can solve that in the future by adding an intermediary layer.
What we learned
We learned that making plugins is not a trial task, it takes time and has several complexities. That fact further enforces the need for a tool like ours. Not everyone should have to go through this process for each plugin they create.
What’s next for AI Plugin Builder
As mentioned in the live demo, we think there are several axes we can build on to make this tool more valuable for businesses. These include:
- Automatically building a live dashboard that provides observability as to what a businesses plugin is being used for by users
- Giving users more customizability as to which endpoints are included in the plugin and which aren’t
- Expanding the supported requests
Built With
- openai
- openaiplugins
- python
Log in or sign up for Devpost to join the conversation.