Most active commenters
  • arthurtakeda(12)
  • airstrike(6)
  • (3)
  • artur_makly(3)
  • andai(3)
  • ainiriand(3)
  • simonbarker87(3)
  • Tier3r(3)

169 points arthurtakeda | 82 comments | | HN request time: 1.84s | source | bottom

Enter a topic and get a learning mind map generated by an LLM with links to learn more about each subtopic.

You can use it with local models (through Ollama) or external models.

If you have any feedback, please share it! Hope it's useful

Demo: https://youtu.be/Y-9He-tG3aM

1. airstrike ◴[] No.41898270[source]
I'd say the README should have a pic of the results otherwise I have to install it and run it to see if I want to install it and run it

Also why not host it online and let users bring their own keys?

replies(1): >>41898396 #
2. dr_dshiv ◴[] No.41898287[source]
Would be great to have a video of it working so I can see what it does before installing. Thanks!

Also, I’m generally interested in UIUX variations around LLMs. Hoping to see a round up of examples like this, at some point.

replies(2): >>41898321 #>>41899639 #
3. hmottestad ◴[] No.41898288[source]
Do you have any examples to look at? All I can see in the readme is a page with a search field and no mind maps.
replies(1): >>41898325 #
4. arthurtakeda ◴[] No.41898321[source]
just uploaded a demo on youtube: https://www.youtube.com/watch?v=Y-9He-tG3aM thanks for checking out!
5. arthurtakeda ◴[] No.41898325[source]
just uploaded a demo on youtube: https://www.youtube.com/watch?v=Y-9He-tG3aM thanks for checking out!
6. afro88 ◴[] No.41898336[source]
How do you generate / validate the links to learn more? If they're generated by the LLM there's a really high chance they are hallucinated and won't work.
replies(2): >>41898365 #>>41899327 #
7. arthurtakeda ◴[] No.41898365[source]
to be quite honest, I don't, just manually tested with different topics and got working links almost every time but agree, that can definitely happen
replies(1): >>41898394 #
8. afro88 ◴[] No.41898394{3}[source]
You could have a second automatic step that searches the web for the title of the link and validates it or gets the correct one.

Cool project!

replies(2): >>41898403 #>>41902173 #
9. arthurtakeda ◴[] No.41898396[source]
just updated the readme with the video: https://www.youtube.com/watch?v=Y-9He-tG3aM

I considered that but if I were the user I'd be wary of adding my own keys to a random person's website haha, but now that you mentioned that, since the code it's open-source I guess it's fine, thanks for the feedback!

replies(2): >>41898490 #>>41898702 #
10. arthurtakeda ◴[] No.41898403{4}[source]
good idea, I'll add that to the improvements list, thanks!
11. cj ◴[] No.41898490{3}[source]
That’s cool! It would be great if you could easily expand each subtopic into further sub-subtopics.

Was there anything particularly interesting about how you built it or the prompts needed to get decent results?

replies(1): >>41898557 #
12. arthurtakeda ◴[] No.41898557{4}[source]
I noticed that, at least with the models I tested (gpt 3.5, 4o and llama 3.1 8b), to get a response with just the JSON and then have it follow the exact structure so it correctly renders the topic and subtopics was the hardest part.

Ended up having to prompt I think twice (at the beginning and the end) so it finally followed the exact JSON structure.

replies(1): >>41898714 #
13. airstrike ◴[] No.41898702{3}[source]
Thanks for that! You can use something like gifski to turn that video into a gif so that you can embed it into the README. Here's an example from the gifski repo: https://github.com/ImageOptim/gifski

You can use the CLI version but they also have executables with a dead simple GUI if you're so inclined. I have only ever used the GUI and it's perfect on a Mac (just drag and drop your video into it). Not sure if it's the exact same on Windows but I imagine it's amazing there too

replies(1): >>41898899 #
14. airstrike ◴[] No.41898714{5}[source]
You can use structured outputs to tell ChatGPT-4o to create specific JSON matching a schema: https://platform.openai.com/docs/guides/structured-outputs/i...

It's a bit annoying because the schema has some limitations but it works with enough elbow grease

replies(1): >>41898911 #
15. arthurtakeda ◴[] No.41898899{4}[source]
Nice! Will replace the screenshot with a gif, if that doesn’t work for me I guess ffmpeg may be able do that too, thanks!
replies(3): >>41899080 #>>41899782 #>>41900363 #
16. arthurtakeda ◴[] No.41898911{6}[source]
interesting, didn’t know about that feature, thanks for sharing!
17. ◴[] No.41899008[source]
18. ◴[] No.41899080{5}[source]
19. artur_makly ◴[] No.41899128[source]
nice work!

hmm...perhaps there could be some compounded synergies with my https://VisualFlows.io

// also made with ReactFLoW. i will DM you..

replies(1): >>41899230 #
20. pryelluw ◴[] No.41899230[source]
Could you add a screenshot based demo or example to the main page?
replies(1): >>41899482 #
21. downboots ◴[] No.41899327[source]
Human intervention would be necessary for any kind of reliable knowledge curation if that were the goal . https://en.wikipedia.org/wiki/World_Brain
22. andai ◴[] No.41899427[source]
Very interesting!

My first thought when seeing this is, could I use this as a "progress map" for a subject I'm learning? So add my own notes, and use AI to find and recommend more resources?

My second thought is, can you build one of these for everything I've ever learned, and want to learn?

I've long (15 years?) been waiting for a system that knows not only my interests, but my knowledge, and can use that data to find or generate the optimal learning experience for any subject.

(Khan Academy used to have a big interconnected graph of how all the knowledge on their platform fit together (dependencies) but for some reason they removed it...)

AI is getting pretty close, especially now that they've rolled out memory and conversations... wild times we live in!

replies(6): >>41899499 #>>41899686 #>>41899960 #>>41901605 #>>41901701 #>>41911155 #
23. artur_makly ◴[] No.41899482{3}[source]
i'm guessing you were referring to the OP's app? he just added the video demo. but if not, our main page IS the app ;-)
24. artur_makly ◴[] No.41899499[source]
@andai check out https://www.perplexity.ai/spaces its _kind of_ what you are describing.. it's UX is unstructured compared to a mind-map or timeline. But we are starting to see the nascent stages of where all this is going. exciting times indeed.
25. wonger_ ◴[] No.41899639[source]
This reminds me of https://tree-of-knowledge.org/, posted a few months ago on HN. The branching/exploratory/canvas approach is better UX than a chat box.
replies(1): >>41903438 #
26. arthurtakeda ◴[] No.41899686[source]
that's a very interesting use case, could be the long-term vision for the project, thanks for sharing!
27. nosioptar ◴[] No.41899782{5}[source]
Ffmpeg can output a gif. The only difficult part might be figuring out which options you need to get the quality you want.
28. SuperHeavy256 ◴[] No.41899906[source]
I love the idea but, I have no Open AI API credits
replies(2): >>41899929 #>>41906444 #
29. null0pointer ◴[] No.41899927[source]
I like this a lot. Great for autodidacts like myself. Often when entering a new topic I’m faced with many unknown unknowns. I don’t know _what_ I should be learning. So having an LLM effectively lay out a course of study would be very helpful.
replies(1): >>41899934 #
30. arthurtakeda ◴[] No.41899929[source]
If you setup Ollama and download a local model, all you have to do is follow the readme instructions, let me know if you need any help!
31. arthurtakeda ◴[] No.41899934[source]
glad you liked it! hope it’s useful
32. hm-nah ◴[] No.41899960[source]
Smells like a knowledge graph
33. airstrike ◴[] No.41900363{5}[source]
FYI your current demo is 25MB. Not sure if you used gifski but usually it's super helpful for making gifs smaller
34. adfm ◴[] No.41900735[source]
SimpleMind plays well with LLMs and OPML.

https://simplemind.eu/blog/mapping-your-thoughts-with-chatgp...

35. pier25 ◴[] No.41900799[source]
The point of making mind maps by hand is that they help you memorize and study by synthesizing a topic.

If this is done by AI it's pretty much pointless.

replies(4): >>41901073 #>>41901710 #>>41902199 #>>41902837 #
36. InkCanon ◴[] No.41901073[source]
One of the reasons I think LLMs should not be in most parts of education. There is a huge body of research about the importance of deliberate practice. High quality learning needs effort. A lot of these tools perform the ostensible ritual of learning - note taking, mind mapping, etc - and make them frictionless, thus rendering them worthless.
replies(1): >>41901118 #
37. crucialfelix ◴[] No.41901118{3}[source]
Exactly. If anything we should build LLM powered apps that ask questions, test understanding and create that friction necessary to build deep comprehension and memory.
38. matly ◴[] No.41901605[source]
You could take a look at Obsidian [1], or similar knowledge management tools. There is certainly a lot of movement in the plugin ecosystem right now, for example the obsidian-canvas-llm-extender [2], which (likely) does what you're asking for.

1: https://obsidian.md/ 2: https://github.com/phasip/obsidian-canvas-llm-extender

replies(1): >>41902777 #
39. elric ◴[] No.41901701[source]
> Khan Academy used to have [...] but for some reason they removed it

I'm quite saddened by all the stuff that's been removed from Khan Academy over the years. Most of the non-maths content has been removed. The knowledge graph has been removed, etc. I've stopped donating to them because every time I use it, the experience has gotten worse.

replies(1): >>41903174 #
40. elric ◴[] No.41901710[source]
Agreed. I wouldn't be opposed to a (local) LLM inside my Obsidian vault; but not for writing notes, but rather for discovering connections between notes. That's something that would actually help me. Generating mind maps like this? Not so much.
41. ainiriand ◴[] No.41901796[source]
That is really cool. I am very much into learning with the support of AI.

Last month I started to learn Rust and I used this prompt to help me:

'I am an experienced software engineer who wants to learn Rust, design a learning path for 3 months, with daily goals. Try to have a good balance of learning and working exercises using available resources like Rustlings or Learn rust by example. Output this path in markdown and add space to gather my learnings in a note at the end of each week.'

Maybe with some tweaks can be useful to someone else!

replies(2): >>41901904 #>>41902959 #
42. aquariusDue ◴[] No.41901904[source]
I'd also recommend the wonderful 100 Exercises to Learn Rust authored by Luca Palmieri who also wrote Zero To Production in Rust. I'm halfway through the exercises and I find them to complement Rustlings and The Book perfectly.

So yeah, 100 Exercises to Learn Rust is what finally made traits (especially From and Into), impls and trait bounds finally click for me and I can't recommend it enough.

replies(2): >>41901922 #>>41903177 #
43. ainiriand ◴[] No.41901922{3}[source]
I did that! https://github.com/sh4ka/100-exercises-to-learn-rust
44. fao_ ◴[] No.41902173{4}[source]
But with the amount of AI generated content on the web, in a year or two (or maybe less) surely this method will fail dramatically?
45. simonbarker87 ◴[] No.41902199[source]
Came here to say this. Also, most mind map implementations are actually spider diagrams which (while useful) are not mind maps, the point of a mind map is the label the line and not the node.
replies(1): >>41902306 #
46. simonbarker87 ◴[] No.41902215[source]
Nice example of using AI for something but (like most “mind map” tools) the output isn’t a mind map, it’s a spider diagram.

The point of a mind map is to label the line and not the node. This helps the brain form a visual and spacial connection between ideas where the lines act as bridges to the next concept/idea.

Not faulting the creator here, looks like a solid implementation of AI making spider diagrams, good job.

30 years of people misusing mind maps and no one reading the Tony Buzan book have brought us to this point though where no one actually knows what mind maps are or why they are so powerful.

replies(4): >>41902336 #>>41902343 #>>41903239 #>>41904307 #
47. andai ◴[] No.41902306{3}[source]
Huh, I've been doing it wrong my whole life.
replies(1): >>41902660 #
48. 7734128 ◴[] No.41902336[source]
If most people are using a term "wrong", then they are using it correctly.
replies(2): >>41903380 #>>41904317 #
49. kqr ◴[] No.41902343[source]
I thought this was the difference between mindmaps (anonymous connections between things) and concept maps, where edges are directed and labeled such that (node, edge, node) triplets form propositions.

I agree concept maps are more useful but at this point I do think they deserve their own word.

replies(1): >>41903393 #
50. simonbarker87 ◴[] No.41902660{4}[source]
Use Your Head by Tony Buzan is totally worth a read and is how I learned mind mapping 22 years ago. I can still remember the rough layout and shape of many of the mind maps I made for GCSE and A-level revision. I’m 100% certain that reading that book and sticking to his methodologies added one or two letter grades to my exams at that age.
51. soco ◴[] No.41902777{3}[source]
I always found Obsidian and whatever other tools a huge time investment by itself with more effort to use them than actually getting the managed knowledge.
replies(1): >>41902876 #
52. knighthack ◴[] No.41902837[source]
It's not quite pointless. A prepared outline/mind-map gives you a roadmap for learning beforehand; it can function like a good index.

It's better to memorize domain knowledge upon paths that are clearly understood (thus you are memorizing well-worn, acceptable paths), rather than synthesizing your understanding of a topic as you go along. The second is prone to mistakes and mistaken understanding, unless you're a subject matter expert or charting new domains of knowledge.

replies(3): >>41902896 #>>41903929 #>>41905838 #
53. Tier3r ◴[] No.41902876{4}[source]
Same for Anki, Notion, Zettelkatsen etc. Even ignoring the setup cost, it costs as much effort to insert in something as it does to retrieve it. The value prop tends to be low for individuals.
replies(2): >>41909924 #>>41910513 #
54. Tier3r ◴[] No.41902896{3}[source]
That is IMO already done by domain experts in the form of textbooks, courses, university classes etc. And with formal, tested relationships between various islands of knowledge. I'm not too sure how much I would trust an LLM to do this
55. ◴[] No.41902959[source]
56. sourcepluck ◴[] No.41903086[source]
I wonder has the author of this project seen the discussions here on tacit knowledge (which a lot of comments here seem to almost be touching off) https://news.ycombinator.com/item?id=29531947
57. sersi ◴[] No.41903174{3}[source]
Do they ever explain why they removed this content?
58. chamomeal ◴[] No.41903177{3}[source]
How do they compare to “the book” (I forget the exact title).

I tried to get through it a couple times, but I have no background in C and the lifetimes part confused the hell outta me. Combined with all the other new things, my interest just sorta fizzled.

Love those enums, though!!

replies(1): >>41911547 #
59. xgboost3d ◴[] No.41903239[source]
Very cool! Similar to mind map extraction and search in airesearch.js.org and you can integrate specific functions. For example it would help the mind map for it to be self organizing in the nodes and connections
60. cloudhead ◴[] No.41903380{3}[source]
Thank god the world doesn’t actually work this way..
replies(2): >>41903500 #>>41903753 #
61. cloudhead ◴[] No.41903393{3}[source]
A mind map is a specific type of concept map, where the edges are labeled
replies(1): >>41903918 #
62. anon012012 ◴[] No.41903438{3}[source]
(TOK dev here.) Thanks for the linking. I'm sorry I could not keep it glorious (that is free and login-free). I got spammed by bots and I don't have time to discriminate so I made it BYOK and kept it at that. My idea deserves a better execution than this and so I don't mind if other people go at it. All the best.

BTW, related to learning AI software, I'm working on something else... Calling it "InfoRush AI" for now, it looks like that: https://imgur.com/0tncarJ This is Python, BYOK, FOSS. Multicolumn synchronous browsing... orchestrated by the tree of knowledge. Going beyond and beyond. I'll post it on HN soon, (when it's done).

63. Mashimo ◴[] No.41903500{4}[source]
But it somewhat does, no? Why else would words change meaning over time?
64. lolinder ◴[] No.41903753{4}[source]
This is exactly how the world works.

Language does what language wants to, pedants try to fight it, pedants eventually lose. To boldly split an infinitive continues to be correct in spite of it being "wrong".

replies(1): >>41905385 #
65. Tomte ◴[] No.41903918{4}[source]
No.

A Mind Map has labeled edges (and usually only edges, no nodes). It was invented by Tony Buzan and he has a bunch of rules that they have to obey.

A Concept Map had labeled edges between nodes and an education theory behind it. It was invented by Joseph Novak, building on ideas by David Ausubel.

Mind Mapping tools usually produce neither.

66. Tomte ◴[] No.41903929{3}[source]
That’s an advance organizer (again, Joseph Novak). But it needs to be created by an expert, not by an LLM.
67. QuantumGood ◴[] No.41904307[source]
I looked it up out of curiosity. In Buzan's "The Mind Map Book" (and other books by him), he suggests mind maps can significantly enhance learning, memory, and creative thinking, and that labeling lines/branches:

• Creates meaningful connections between concepts

• Allows more fluid and associative thinking

• Allow for greater creativity and recall compared to spider diagrams

He suggests using curved lines, colors and images, and to develop your own personal style of mind mapping

68. QuantumGood ◴[] No.41904317{3}[source]
Looosely speaking.
69. andai ◴[] No.41904747[source]
Why the heck did this get flagged? Almost all the comments are positive.
replies(2): >>41905690 #>>41906447 #
70. royaltjames ◴[] No.41905385{5}[source]
Specifically this is how American English works. From composition to pronunciation. It's a beautiful mess <3
replies(1): >>41906077 #
71. InkCanon ◴[] No.41905690[source]
Would also like to know this.
72. graypegg ◴[] No.41905768[source]
Neat! Though I feel like this needs to be "integrated" into something else to achieve full potential. I think a lot of people end up falling down wikipedia rabbit holes (me included!) and something where my browser can provide the same sort of "topic quicklinks" that wikipedia articles have [0] but for anywhere on the web? I'd love that!

[0] https://en.wikipedia.org/wiki/Very_high_frequency#Electromag... (deep linked to the "Electromagnetic Spectrum" topic quick links, but you might have to click the accordion control to unfold it)

73. pier25 ◴[] No.41905838{3}[source]
Making the index is part of the learning.
74. lolinder ◴[] No.41906077{6}[source]
It's how all languages work. Some languages have bodies that like to pretend they can regulate them, but it doesn't actually work.
75. airstrike ◴[] No.41906444[source]
"OpenAI API" has sort of become a standard API for any models through other tools which expose identical end points regardless of the underlying model. You can use ollama for that
76. airstrike ◴[] No.41906447[source]
The worst part is we can't even vouch for it?
77. zs234465234165 ◴[] No.41909924{5}[source]
Anki doesn’t belong on this list
replies(1): >>41910014 #
78. Tier3r ◴[] No.41910014{6}[source]
As much as I love Anki there is enormous friction in creating the cards, especially as a beginner. And you very easily get overfitting when you keep seeing the same question.
79. xyzsparetimexyz ◴[] No.41910513{5}[source]
A technique I've found that works for learning languagea in Anki is to generate or download massive deck, suspend all of it and then whenever I encounter an unfamiliar word in the wild I unsuspend it and set it up for review. Takes like 5 seconds.
80. ru6xul6 ◴[] No.41911155[source]
I had the exact same wish for an interconnected knowledge map, so I'm building it myself! Please check out https://onri.ai, which plots all human knowledge on a Google Map, with their dependencies. I'm still building out the navigation algorithm and user features, but please let me know whether that fits your use case :)
81. ainiriand ◴[] No.41911547{4}[source]
For me the 100 exercises were a gentler introduction to the language for some topics, making the exercises was a bit difficult without having read the book first.

But I would give it a try, I did that and then the book was much more accessible.