Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fine-Tuned ChatGPT Plugin for Gno Developers #104

Open
matijamarjanovic opened this issue Oct 14, 2024 · 5 comments
Open

Fine-Tuned ChatGPT Plugin for Gno Developers #104

matijamarjanovic opened this issue Oct 14, 2024 · 5 comments

Comments

@matijamarjanovic
Copy link

matijamarjanovic commented Oct 14, 2024

Description

As we began developing in Gno, @stefann-01 and I encountered various obstacles that we had to overcome. Gno is relatively new and not widely adopted yet, which presented challenges. Throughout our Gno research, we reviewed numerous PRs and issues, and one that particularly caught our attention was this issue.

Intrigued by the idea presented there, we thought of a temporary solution that, while not ideal, could prove helpful for both novice and experienced Gno developers.

The Idea

The solution involves creating a fine-tuned ChatGPT plugin that leverages Gno’s official documentation, examples, and all relevant explanations found on the gnolang GitHub repository. This custom ChatGPT would serve as a support tool for anyone encountering issues during Gno development. Unlike the standard ChatGPT, which is only aware of Gno’s existence, this specialized version would provide more practical solutions tailored to Gno development challenges.

Why This is Useful

While we acknowledge that this approach is not decentralized and may not fully align with the web3 ethos, it serves as a temporary yet practical solution for current Gno developers. Even without a ChatGPT Plus subscription, developers could benefit from quick, accurate answers that would otherwise be unavailable.

In the long term, we hope to explore the possibility of a decentralized AI solution, as suggested in the referenced issue. However, for now, this approach offers much-needed assistance.

Call for Feedback

We would love to hear the community's opinions on this idea, which is why we are starting this discussion. Feel free to share your thoughts below! 👀🚀

@stefann-01
Copy link

stefann-01 commented Jan 8, 2025

We’ve created the first version of the plugin based on Gno’s documentation and examples. While it’s still in its early stages and far from being perfect, it can already provide some assistance for basic Gno-related questions.

You can check it out here: Gno Developer Assistant

We’d appreciate it if someone could give it a try and share their feedback—whether it’s suggestions for improvement, bug reports, or just general thoughts. Every bit of input will help us make it better.

@moul
Copy link
Member

moul commented Jan 10, 2025

Is this open-source?

@stefann-01
Copy link

stefann-01 commented Jan 12, 2025

Is this open-source?

Unfortunately, ChatGPT does not support the option of making the knowledge base of a plugin public. However, the scraper we created for generating the files used in the knowledge base is public and can be accessed here.

Currently, the plugin utilizes two files for its knowledge base:

The configured preprompt is as follows:

This GPT is a specialized assistant designed for developers working with the Gno.land platform. It provides expertise on smart contract development in Gno, blockchain architecture of Gno.land, and Gno-specific tools and best practices. It can explain concepts, provide code snippets, debug errors, and offer recommendations tailored to the Gno.land ecosystem. Before responding to any prompt, this GPT will always read and cross-reference the knowledge provided in the uploaded files (docs.txt and gno-by-example.txt) to ensure accuracy. If it cannot confirm the accuracy of an answer based on its knowledge, it will explicitly state its uncertainty or guide the user to seek confirmation from reliable sources or official Gno.land documentation. Disclaimer: This model is an unreliable source of information. Gno is actively being developed and changed. For up-to-date information, please refer to the official documentation and GitHub.

@thehowl
Copy link
Member

thehowl commented Jan 15, 2025

Interesting, but moving to hackerspace as a more of an "experimentation" issue rather than something which is actionable within this repository.

Suggestion: why instead of feeding OpenAI more information about how to use Gno, which is not something that we want, you experiment with something like khoj (which is self-hosted?)

@thehowl thehowl transferred this issue from gnolang/gno Jan 15, 2025
@stefann-01
Copy link

Suggestion: why instead of feeding OpenAI more information about how to use Gno, which is not something that we want, you experiment with something like khoj (which is self-hosted?)

@thehowl Thanks for the suggestion! Khoj seems like a great alternative. We will try using it instead.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
Status: No status
Status: Triage
Development

No branches or pull requests

4 participants