This is an interface that reifies that rabbit-holing process into a tiling layout. The model is instructed to output hyperlink-prompts when it mentions something you might want to delve into.
Lots of features to add (sessions, sharing, navigation, highlight-to-delve, images, ...). Would love to hear other usecases and ideas!
Kudos! This is an interesting perspective on how we really need to put a little more effort into the UX of LLMs.
But the problem, as far as I can tell, is that it's inviting someone to explore what's bad about LLMs (or what LLMs are bad at).
IE, LLMs are useful for doing things an individual could do but doesn't really want to. I have one friend who uses ChatGPT for boiler plate nondiscrimination policies and another who uses it for random villain descriptions and it's famous for boiler plate code.
But using LLMs for discovering new specific things (this app's seeming purpose) seems like a recipe for disaster. For example, I started looking at counterfeit bolts and ended up with the thing hallucinating an instance of "sword net" (real) that in 2018 targeted counterfeit fasteners (no refs on Google, Brave or DuckDuckBing) with the slogan "Secure the Foundation, Eliminate the Fake" (no refs similarly).
Edit: obviously, the system is confusing counterfeits generally with counterfeit fasterners (a more specialized issue, having less to do with intellectual property as such). But if drill distinctions like this are inevitable and this is what makes LLMs actually not useful for this sort of exploration.
Let me see if I can articulate it.
You know how a human conversation can have multiple threads? And ten minutes in, you find the topic has totally changed and you're trying to figure out the original topic? Sometimes you can get back to it, sometimes you can't, right?
Obviously it's not quite the same when you can see prompt history, but the conversation is still pretty linear. This pre-empts that problem by letting you fork thoughts.
Kudos!
I'm working on a project where I'm experimenting with pretty obvious things like removing the annoying markdown syntax all the LLMs show you for a split second and smoothing out how it renders the characters to match your frame rate.
I have a suggestion for the page you linked. The sample on the top page that shows it doing its thing, while it is useful seeing it in action, as a result of looping the example output it was a bit difficult to read. I would suggest extending the amount of time the loop lasts to give slow readers a little more time. An extra 3-5 seconds after it finishes output would be helpful from a mobile UX viewpoint.
I also have a Custom GPT "AutoExpert (Chat)" [0] that several reviewers have called "the perfect Rabbit Hole GPT" due to the way it leads users through learning a topic. You might dig it, especially since free tier users have access to these now.
EDIT: I’ve now quizzed it about string theory, quantum mechanics, classic Roman pasta dishes, Italian wines, and sent it a picture of some poison hemlock and I think I’ve found my new favourite GPT. Great work!
EDIT 2: asked it to critique a photo I took recently and that was great too, really impressed with this.
We're just getting started on what we can do with LLMs!
It would be great if we had an introduction to the site right in the prompt! to help understand its main purpose right from the start.
It'll be great if the first thing you see is [Explain what "delve into" is] as a prompt suggestion. Next, it will reply with, "It’s for exploring topics deeply, similar to going down "rabbit holes" where one interesting thing leads to another. Here are some examples ..."
Then, you guide the user through the functions step-by-step. Something like, "Click on option X to start a new thread, then choose from the suggested prompts or create your own. Follow the flow to see related threads and dive even deeper."
I’ve gathered a lot of feedback on things like this for a few different sites and apps from senior UX designers and PMs who contradict eachother on improvements and best practices all the time and from users. You’ll of course only hear from the people who want it rather then the ones who would be annoyed by it :)
Great project that seemed very easy to understand and straight forward to me, no further walk throughs needed ;)
How about enabling user to select any piece of text and use it the way the links work now?
For instance, I've noticed it doesn't linkify peoples' names, and one thing I love on Wikipedia is that you can easily lookup people mentioned in the text. So, rather than having thousand links in the page, it would be handy if I could just select the name in the text, click some button (or right-click menu item), and get the new prompt based on the selection (user having to click a few extra times for this custom use-case wouldn't be a problem IMO)
[0] https://notes.andymatuschak.org/zB74H9CuWrosEuqve7jZyCo?stac...
https://help.obsidian.md/User+interface/Tabs#Stack+tab+group...
There's an Obsidian plug-in.
Personally, I’m a huge fan of a few principles that I hope to impose on the world via book, eventually:
1. Indices over keys.
2. No single set should have more than N elements, where N is usually 10 but could be 2/3/4 if you’re doing decision trees, and could be 16 if you’re insane and want to use hex indices.
3. Each element can be referenced locally with a simple index (`3`), or a full path made by concatenating the indices of its ancestors from the root (`053`).
This would be an example of an “analytic” approach, as opposed to the ad-hoc “synthetic” approach of just visualizing whatever wikilink structure there happens to be. There’s a huge space of solutions “between” these two - such as constraining the ad-hoc visualization to meta-tagged wikilink relations — but I think the dichotomy is useful.
Personally, I prefer to use predesigned structures wherever possible for exactly these reasons. It makes automated visualization possible, in many cases… An example would be reusing the same 3/4 12-element directory template for every SWE project. I hope it’s clear how the same idea could be directly applied to a research project performed with lots of automated LLM queries.
There's an old truism in the business, that the more "suggestions" people give about your idea, the more they like it, and it's absolutely true. Solid work!
Do you have plans to monetize and/or open source it?
And Jake Collins just announced he’s open sourcing an obsidian plugin which has a ton of features: https://x.com/JacobColling/status/1795462258258002255
I'd hate that. YouTube turned on vibration (a subtle tap) for videos whenever it reached automatically generated "key concepts" in (some) videos, with no option to disable it[1] so I had to finally disable all vibration on the phone:
Settings -> Accessibility -> Touch -> Vibration (off)
[1] https://old.reddit.com/r/youtube/comments/1bro66c/videos_vib...
You can either enter your GPT key, or fill in the form here https://learn.microschools.in/ and we'll give you access if you'd like to give it a spin.
Once thing that threw me off was when I went to the original panel and clicked a second topic, it cleared out the panes that I had explored off the first topic. I had to discover they weren't really lost by re-clicking. I think it would be better if there was some visual indicator they were still there - perhaps the topic (and sub-topics) get collapsed but are still visible with the heading of the selected topic?
And maybe add some locally stored "Microsoft Recall"-like feature to revisit paths you've made. It would be text-only, so use up almost no space, and be quickly searchable.
Well done it could even work in a terminal.
It's a really clever use of the UI, and I think he'd be happy with it.
No idea if the things it's telling me are true or not, but that doesn't matter quite as much in this case.
Are hyperlinks generated as part of original prompt or you do post processing on a response with another LLM?
I believe we might see AI clients evolving into open-source editors like Atom or VS Code, with plugins and packages that can be shared and iterated upon rapidly.
Also, I received the message 'You've gone too deep!' and I'm wondering what the context length limit is. Thanks!
I have some API credits but I intend to make it sustainable. If any LLM provider wants to sponsor some credits, hit me up.
Otherwise I’ll switch models and add user accounts.
If your backend is is javascript and/or depending on how complicated it is, an easy idea might be to allow users to paste their own OpenAI API token in and have it use that. For various security/privacy reasons it would be ideal if the API calls came directly from the frontend in that case though, and given the caching implementation and other things I'm guessing decoupling that might be pretty challenging. Figured I'd throw out the idea anyway though.
Another thing that would be interesting is if there was minimal markup for the LLM to indicate "here should be an image of [search term]" or maybe even interactive code blocks etc. But obviously this is scope creep deluxe.
Also it seems to be way faster than ChatGPT, yet just as intelligent, how is that possible? Can you elaborate a little bit on the architecture you're using and how it all works? What model are you using? Is it just a straight up API to ChatGPT, or are you also using additional embeddings and fine-tuning?
Put this on a canvas too so I can zoom out and look at the footprint I left to retrace my steps
what heuristic are you using for making words clickable?
i recommend making the links just hardcode old-school blue and purple. make it obvious you can click these things. "dive on in" https://www.youtube.com/watch?v=DElxVXS7PD0
This adds a lot more barriers to knowledge exploration (and the GPT is likely trained on Wikipedia anyways) and doesn't provide sources.
I subscribe to phind, which provides a nice search/answer service, which also suggests followup questions, which works fairly well: https://imgur.com/a/WfHSzdk
But if it was in a tiling format, that would be pretty awesome for the flow, especially on mobile.
I've had something like this on my mind for a while. I really think there are some great use cases for AI around supporting/enhancing human cognition rather than trying to outsource our thinking. In this case of this, being able to rapidly "expand" your working memory with whatever is present in these cards is promising.
I look forward to seeing what you do with this.
My minor recommendation is to highlight somehow that the input fields accepts any topic and the suggestions are just random try-it-out topics, it's wasn't immediately clear. Instead of 'write a message' it could say maybe, 'enter a topic to learn about'.
Nice clean interface, OC, please keep it this way. Thanks for sharing.
This to me seems like an Infinite Wikipedia! Really cool use-case!
I really like this for source level information. Like drill down on research studies and then drill down to authors and concepts. Would be cool if it was also building a mind map or semantic tree that you could see. Like how to separate the topics by their level of generalization.
Great work!
It seems to dead-end unexpectedly on some topics. For example, I delved "path tracing" -> "importance sampling" and it output a section on probability distribution functions (PDFs) but didn't offer any links to explore those further.
Highlight-to-delve would probably fix that.
@maxkreiger - if I were to build one as a proof of concept, would you object to me having it hyperlink to your UI?
Also, WorldSim could use something like this, and perhaps web browsers.
Anyway, I suspect this resonates for anyone that has to do research on the web or in GPT. I often end up with multiple threads on GPT anyway trying to learn about something.
Would be interesting to rabbit other rabbit hole resources like Wikipedia or IMDB in this way too.
FWIW these are known as "Miller columns" if anyone wants to research the topic further: https://en.wikipedia.org/wiki/Miller_columns
Cudos! Particularly impressed with the lack of clutter and the speed.
What’s the logic used to determine what words are links? I found that it was possible to feed it new vocabulary and that it would turn those into links
It would be great if you could support Ollama (or an OpenAI compatible endpoint) for private LLMs.
* can you make it so we can share links of sessions?
* can you describe on the homepage or in a link from the homepage what it does.
* Enable the use of personal OpenAI API keys.
* Include system prompts, such as "If the topic is about X, highlight new topics by Y" and "Reply to all as if explaining the topic to a 6-year-old."
* Backlink to the original thread when the same topics are found.
* It would be great if this could be a desktop app with all answers saved locally, creating "my own personal" infinite wiki.
Maybe let us put in our own api keys?