TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: Knowledge graph of restaurants and chefs, built using LLMs

201 pointsby theophilec3 months ago
Hi HN!<p>My latest side project is knowledge graph that maps the French culinary network using data extracted from restaurant reviews from LeFooding.com. The project uses LLMs to extract structured information from unstructured text.<p>Some technical aspects you may be interested in:<p>- Used structured generation to reliably parse unstructured text into a consistent schema<p>- Tested multiple models (Mistral-7B-v0.3, Llama3.2-3B, gpt4o-mini) for information extraction<p>- Created an interactive visualization using gephi-lite and Retina (WebGL)<p>- Built (with Claude) a simple Flask web app to clean and deduplicate the data<p>- Total cost for inferencing 2000 reviews with gpt4o-mini: less than 1€!<p>You can explore the visualization here: [Interactive Culinary Network](<a href="https:&#x2F;&#x2F;ouestware.gitlab.io&#x2F;retina&#x2F;1.0.0-beta.4&#x2F;#&#x2F;graph&#x2F;?url=https%3A%2F%2Fgist.githubusercontent.com%2Ftheophilec%2F351f17ece36477bc48438d5ec6d14b5a%2Fraw%2Ffa85a89541c953e8f00d6774fe42f8c4bd30fa47%2Fgraph.gexf&amp;r=x&amp;sa=re&amp;ca[]=t&amp;ca[]=ra-s&amp;st[]=u&amp;st[]=re&amp;ed=u" rel="nofollow">https:&#x2F;&#x2F;ouestware.gitlab.io&#x2F;retina&#x2F;1.0.0-beta.4&#x2F;#&#x2F;graph&#x2F;?url...</a>)<p>The code for the project is available on GitHub: - Main project: <a href="https:&#x2F;&#x2F;github.com&#x2F;theophilec&#x2F;foudinge">https:&#x2F;&#x2F;github.com&#x2F;theophilec&#x2F;foudinge</a> - Data cleaning tool: <a href="https:&#x2F;&#x2F;github.com&#x2F;theophilec&#x2F;foudinge-scrub">https:&#x2F;&#x2F;github.com&#x2F;theophilec&#x2F;foudinge-scrub</a><p>Happy to get feedback!

13 comments

tantalor3 months ago
The embedding is kind of weird. Like, there&#x27;s no reason a &quot;degree: 1&quot; node should be so far away from its sibling.<p>Example: <a href="https:&#x2F;&#x2F;imgur.com&#x2F;a&#x2F;7Cktyzp" rel="nofollow">https:&#x2F;&#x2F;imgur.com&#x2F;a&#x2F;7Cktyzp</a><p>This makes the graph look more random&#x2F;noisy&#x2F;disorganized than it actually is.
评论 #43244857 未加载
评论 #43243323 未加载
评论 #43244026 未加载
评论 #43253902 未加载
arnath3 months ago
This is a super cool idea! I&#x27;ve sort of mused about an idea for general web search that&#x27;s very similar to this concept, where you start with a set of trusted entities and then branch out from there, but choosing how you establish trust is really important. But this is a really clever application, well done!
评论 #43245742 未加载
moandcompany3 months ago
Very cool work.<p>It&#x27;s worth mentionion that the Graph browser using &quot;Retina&quot; is a project from Ouestware (<a href="https:&#x2F;&#x2F;www.ouestware.com&#x2F;en&#x2F;" rel="nofollow">https:&#x2F;&#x2F;www.ouestware.com&#x2F;en&#x2F;</a>) which is also contributor to the GraphCommons and GephiLite projects.
评论 #43245092 未加载
评论 #43243113 未加载
nluken3 months ago
Given the structured nature of the data, how does this compare to running a specialized classification model that looks for specific words in a review and uses those to assign Chefs to Restaurants? With some fine tuning, you might get more consistent results than feeding the reviews into a generative model.
评论 #43244464 未加载
jonnycoder3 months ago
This looks great! I was just looking for a good web knowledge graph visualizer.
评论 #43264555 未加载
bevan3 months ago
This was inspiring, what a cool idea. Just curious—-for 4o mini isn’t there a json mode that reliably produces structured output? Was that what you were referring to &#x2F; ended up using?
评论 #43245875 未加载
holtwork3 months ago
Great project. I propose an improvement over this conventional kind of object-style graph. Instead, every single item should be a node or an edge. The objects are needless complexities that obscure pure graph relations. Like this: <a href="https:&#x2F;&#x2F;memelang.net&#x2F;03&#x2F;" rel="nofollow">https:&#x2F;&#x2F;memelang.net&#x2F;03&#x2F;</a>
drabbiticus3 months ago
Very interesting. A small tweak and it seems like this could be applied to the problem of identifying degree of separation from political dissidents or other targets with the right data source. Lots of tools already exist that do that, but it&#x27;s kind of wild how accessible and scalable certain techniques have become.
nswanberg3 months ago
Nice! How&#x27;d the local models do vs gpt4o-mini? Did you spend much time playing with datasette?
评论 #43244907 未加载
pranavm273 months ago
Do you think this will work as effectively with Google or Social Media review and rating datasets? As every country may not have a LeFooding.com<p>Would like to here everyone&#x27;s thoughts
nickthegreek3 months ago
Graph embed does not appear to work in FF 135. Loaded in Chrome though.<p>Edit: Seems to be a me issue.
评论 #43243579 未加载
评论 #43243576 未加载
repsiace3 months ago
Looks interesting, have you tried utilizing a multimodal model?
martinky243 months ago
What&#x27;s the use case for maintaining a list of restaurants that use LLMs?
评论 #43243013 未加载
评论 #43243016 未加载
评论 #43243291 未加载