201 pointsby theophilec4 months ago15 comments
  • tantalor4 months ago
    The embedding is kind of weird. Like, there's no reason a "degree: 1" node should be so far away from its sibling.

    Example: https://imgur.com/a/7Cktyzp

    This makes the graph look more random/noisy/disorganized than it actually is.

    • peppery4 months ago
      Since you did the hard work of parsing rich metadata already, it would be even cooler if your network visualization oriented nodes by some of this information. Here the 'hiveplot' idea (https://hiveplot.com/ ) is often even more useful than e.g. springloaded or UMAP based layouts; clustering into semantically-meaningful categories into axes (say, city or arrondissement? years open? cuisine? an explicit phylogeny from oldest culinary grandparents to youngest?) then choosing a coordinate to localize nodes on the axes (total node degree? prix? "les plus" tags?...) automatically compels us think about salient features of the data.
    • theophilec4 months ago
      I agree the spatialization could be better. I used one of the algorithms in Gephi-lite directly. Do you have a favorite spatialization algorithm to recommend?
      • theophilec4 months ago
        FYI I updated the visualization. Credit goes to @jacomyal from @ouestware on GitHub who helped me out.
        • tantalor4 months ago
          The "Chloé Woestelandt" test is still just as bad
          • theophilec4 months ago
            • tantalor4 months ago
              Yes! This looks amazing. Thanks!

              I made a mistake; I had checked the other link in your post ("You can explore the visualization here: [Interactive Culinary Network]") instead of the main link.

    • visarga4 months ago
      Yeah, they should have used UMAP or tSNE to cluster the data a bit
    • 4 months ago
      undefined
  • arnath4 months ago
    This is a super cool idea! I've sort of mused about an idea for general web search that'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!
    • fads_go4 months ago
      so you mean how academics search for relevant publications on a topic, which is the direct inspiration for the original Google ranking algorithm, back in the happy days when the web was young and had not optimized itself around short-term money making.
  • moandcompany4 months ago
    Very cool work.

    It's worth mentionion that the Graph browser using "Retina" is a project from Ouestware (https://www.ouestware.com/en/) which is also contributor to the GraphCommons and GephiLite projects.

    • dylan6044 months ago
      I was clicking around with the embed, and eventually hit the "home/house" icon. That takes me to a Retnia credit/loading screen with no way to back out of it that I could see. Was forced to hard refresh the page. If there is a close button, it could be made more obvious
    • theophilec4 months ago
      Thank you for the kind words!

      Yes, Retina and Gephi are great. In fact I noticed a bug which they fixed immediatly while making the project.

  • nluken4 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.
    • theophilec4 months ago
      The data is initially not at all structured, and the critics talk about a chef's CV in passing. For instance, take this example:

      > At Grenat, Antoine Joannier and Neil Mahatsry are bathed in an ardent red glow, much like the pomegranate-toned walls of their space. After working together at La Brasserie Communale, where they first met, the duo is now firing on all cylinders in the heart of Marseille, where Antoine tends to guests seated around blonde wood tables, delivering dishes ignited by Neil behind the bar. From oysters to prime cuts of red meat, […]

      I tried using NER models and the results were not great. Furthermore, these models do not extract relationships between entities (other models exist for that though). Haven't tried fine-tuning at all!

      There is also a lot of variation in the ways of presenting a chef's prior restaurants, which makes this a good use-case for LLMs.

      • varelaseb4 months ago
        LLMs have without a doubt replaced NER models and libraries like SpaCy. At least for my use-cases, creating ontologies and populating knowledge graphs.
      • nluken4 months ago
        Nice breakdown. Cheers!
  • jonnycoder4 months ago
    This looks great! I was just looking for a good web knowledge graph visualizer.
  • bevan4 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 / ended up using?
    • theophilec4 months ago
      Yes I ended up using that. Libraries like outlines give that functionality to open models.
  • holtwork4 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: https://memelang.net/03/
  • drabbiticus4 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's kind of wild how accessible and scalable certain techniques have become.
  • nswanberg4 months ago
    Nice! How'd the local models do vs gpt4o-mini? Did you spend much time playing with datasette?
    • theophilec4 months ago
      Local models hallucinated a lot more that gpt4o-mini, so I stayed with OpenAI. On top of that, I paid around 14€ for inference on ~200 examples on OVH and inference was much slower. I am planning on getting everything running on Mistral or Llama though.

      I used sqlite everywhere so datasette was good for visualizing scraped and extracted data. Simon released structured generation for llm a few days after I did the project though, so I haven't tried yet.

  • pranavm274 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

    Would like to here everyone's thoughts

  • nickthegreek4 months ago
    Graph embed does not appear to work in FF 135. Loaded in Chrome though.

    Edit: Seems to be a me issue.

    • theophilec4 months ago
      It works on FF135.0.1 (aarch64) for me. Ad blocker?
      • nickthegreek4 months ago
        Tried without adblocker and turned off pihole. I did get it work on Zen Browser (FF engine). So my FF might have gotten borked. Console is giving me:

        Failed to create WebGL context: WebGL creation failed: * tryANGLE (FEATURE_FAILURE_EGL_NO_CONFIG) * Exhausted GL driver options. (FEATURE_FAILURE_WEBGL_EXHAUSTED_DRIVERS)

        Glad its workin for others!

    • speerer4 months ago
      Worked for me (FF 135.0.1 on Ubuntu)
  • repsiace4 months ago
    Looks interesting, have you tried utilizing a multimodal model?
  • martinky244 months ago
    What's the use case for maintaining a list of restaurants that use LLMs?
    • moandcompany4 months ago
      The phrasing, possibly due to French->English translation, may cause a misleading reading.

      It appears the author/poster is using LLMs (OpenAI and Claude, specifically) to extract entity and relationship data to create a knowledge graph of French Restaurants and Chefs.

      https://github.com/theophilec/foudinge-scrub/blob/0a2701756f...

      • theophilec4 months ago
        Thanks for the clarification. I updated the title!
    • neuroelectron4 months ago
      Yeah i read it that way to. :D
    • 4 months ago
      undefined
  • schnable4 months ago
    [flagged]
    • Rooster614 months ago
      Me too. Title might need a bit of adjusting. Neat concept though!

      I do wish it expanded out past French cuisine. It has its place, but I am very much tired of French cooking being held above other locales/styles

      • theophilec4 months ago
        The graph contains restaurants in France and Belgium but all cuisines are represented.

        It's completely possible to expand the graph to other parts of the world. What source of reviews/info do you have in mind?

        • Rooster614 months ago
          My apologies, only gave it a cursory glance. Should have dug a bit deeper
    • 4 months ago
      undefined
  • iterateoften4 months ago
    [flagged]
    • AyyEye4 months ago
      Learning is a perfectly fine end in itself.