-
Notifications
You must be signed in to change notification settings - Fork 1
Description
Current Swagger Chat
From what I understand, Swagger Chat is a support tool that reads the Swagger file registered by the user and uses ChatGPT to interpret the Swagger documentation based on the user's requests. Its main functionality is to make Swagger API documentation easier to use and to assist users in receiving development directions based on the Swagger documentation.
Structure Diagram
The diagram above represents my interpretation of the flow of the main functionality.
- Blue section: Responsible for the user-facing view.
- Red section: Responsible for responding to the user’s requests and handling the main logic for dealing with Swagger.
- Green section: Handles the interaction with ChatGPT.
Based on this diagram, I felt that the red and green sections are the core of this project.
Regarding the Separation of Agent
Therefore, I wondered whether it might be beneficial to extract the red and green sections into an Agent.
This would allow Swagger Chat to evolve in a way where Web and Agent are developed in parallel. The Web would be responsible for the UI presented to the user, while the Agent would handle the core logic of interpreting Swagger documentation and generating code samples.
Swagger Chat Agent SDK Distribution
By distributing the Agent as an SDK, it opens up many more possibilities for usage.
Instead of just users coming to the Web interface, it could directly contribute to projects that use Swagger, serving as a support tool integrated into their code.
Mitigating Financial Issues
Currently, Swagger Chat doesn't seem to ask users for an OpenAI API key, so I assume the developer might be shouldering the cost. If the project becomes more popular, it might become harder to sustain.
However, by distributing it as an SDK and allowing developers to integrate Swagger Chat into their own projects, they would use their own API keys instead of relying on the developer's OpenAI API key.
This could be a breakthrough in ensuring the long-term sustainability of the project.
What do you think about this direction?
