
ArbGPT
Talk with Arbitrum Documentation with an intuitive chat interface!
About
The problem it solves Oftentimes, a significant roadblock for devs new to Web3, or unfamiliar with a protocol, is understanding the jargon and technical documentation of a system. By having ArbGPT, any dev can ask questions about the documentation and concepts in Arbitrum on various levels of abstraction and can be referenced to actual resources to learn more about Arbitrum. By embedding the entirety of Arbitrum docs, whitepapers, and research forum threads, devs can get comprehensive summaries and congregate a lot of data they otherwise would need a lot of time and effort to sort and filter through to understand concepts.
How it's made
Challenges we ran into While working on this project, I had a couple of challenges to overcome. The first was properly web scraping and grabbing data from the documentation. Due to the fact that I wanted to optimize the scraped results for markdown format, I had to detect different classes and tags to properly create markdown for embeddings. Additionally, the embeddings could not embed large chunks of data; to resolve this I split the data into chunks of 1000 tokens. Finally, a big issue with LLMs is hallucination, especially with links. While the generated data from the LLM is usually true, the links could direct to dead links, especially if there is outdated information in the context. Therefore, I manually resolved many of these issues and focused on prompting the LLM to be as accurate as possible.