The work is very interesting. The title is misleading.
A better title would be: "all of human ingredients compressed into 1,800 primitives"
There is little to substantively nothing about the actual cooking: preparation methods, proportions, etc.
But the idea that tomato goes well with beef the whole world over is very interesting and useful for creating flavors that will go together, perhaps surprisingly. It will be a nice resource in the future.
I have a wonderful book that explores this idea of an atlas of flavours that work together.
The flavor bible.
I can assure you that it does not contain 1800 ingredients in all of there combinations, but it does a remarkable job of covering a widely used selection of herbs spices vegetables and meats. I doubt a compressed version of the text would even be very large.
The trouble I find with LLM generated recipes is they miss the nuance of the technique. Often the success of a depends on a single step or ratio. For instance “fried chicken” has a million incarnations the world over, but you can’t just average out the recipes and end up with tasty fried chicken.
> The trouble I find with LLM generated recipes is they miss the nuance of the technique. Often the success of a depends on a single step or ratio. For instance “fried chicken” has a million incarnations the world over, but you can’t just average out the recipes and end up with tasty fried chicken.
Specify what technique you want. Explicitly say you want to correctly follow all the techniques of the chosen cuisine.
All the LLMs have ingested nearly every cookbook ever made, across multiple languages.
You can upload a photo of your spice rack (with visible labels) to ChatGPT and tell it to save your pantry ingredients as a memory.
LLMs are absurdly overpowered for cooking, when used right. If you ask it for a week long meal prep plan the results will be meh, but ask it for kheer inspired rice crispy treats (which everyone reading this should to, kheer rice crispies are the best!) and you'll get some solid results.
You may notice at first the LLM will still water things down for "American" tastes. With Claude/ChatGPT you only need to remind it once or twice not to do that and it'll course correct all future conversations.
> All the LLMs have ingested nearly every cookbook ever made, across multiple languages.
That's not a positive thing, good recipe developers are Rare. For every recipe that's been meticulously tested and documented there are 1000 that haven't been. Many cookbooks are riddled with errors.
Unless I'm missing something, there's also nothing in the paper to indicate this is "all of human ingredients"? It looks like it's 11 data sources covering a bunch of common cuisines, with the English + Chinese sources accounting for 90% (!) of the dataset. Among others, Africa and the Arab world are not present in the data (good for about 25% of the global population).
Also, all non-English terms were AI-translated to English which is methodologically understandable but surely leaves room for error.
translation is an interesting problem in and of itself still. its kind of a miracle we can do it at all, yet in some circumstances it seems obvious for there to be objective answers (cooking ingredients being one of them), but even then you never really know even with human translators if you've got it correct. even within the same language nearly every individual has their own version of it.
for example, how would you translate "chips" to another language without first knowing which version of English you are translating from? could be an american speaker with a british relative and they use the british definition of chips while otherwise mostly speaking american english.
there's a level of pragmatism in translation that needs to be assumed, and ultimately we have to accept that translated knowledge will always have low resolution. There is a layer of work that needs to be done with the source of the materials involvement to get written content to a level of formalism needed to be representative of the language it is written in. Generally, the work of editors. Which means successful translation for wide distribution, while still not guaranteed, is predicated on the editorial skills of the translator which begs for dialogue with the source.
Meanwhile, AI provides this super convenient band aid to get translation results you can't disprove.
I genuinely think people are severely underestimating the power held by these models for being translators and how literal truth is going to be determined by them deep behind the scenes under the disguise of accessibility. Not in a dangerous way necessarily, just in a way where what languages are and what words mean is going to shift towards whatever the models think they are.
In a way, over extended time, the models will not be wrong about the translations because their results will redefine what successful formal editing of language looks like, and disagreeing with them will amount to the same difference as having local slang.
I have a hard time believing that that weak an acid can have a noticeable effect vs just the extra cooking time. Sorry for being a skeptic :-) Most of the time I deal with beef either it's the particular chunk of meat I bought that day or marinating it in salt for over a day or just stewing it for a long amount of time.
One that has long tickled me is cabbage +/- pickling. I eat both sauerkraut and kimchi from the jar and enjoy them as additions to _roughly_ the same foods, and when friends/family ask I insist they are basically the same thing anyways, but they are uninterested in such shenanigans. I'd love to learn more about these cross cultural shared foods.
On a side note (and maybe off topic), I am thinking about food pairing which is based on the idea that two ingredients sharing volatile aroma compounds or certain molecular families may have a potential sensory compatibility (broccolis and strawberries for example). I'd love to test those ingredients and find some unknown food pairings. But .. time is what it is (for now).
I was gonna post the same, as a lifelong cook (and eater!) Samin Nosrat's book/show was essential for giving me the confidence to improvise in the kitchen while retaining authenticity to regional cuisines.
Nice ideas, it just misses amounts. And of course there may be nuances of technique missing, e.g. low or high heat. So it might work best as a recap and starting point "how to vary m favourite recipe".
This is cool - I tried automating different recipe formats/visualizations at https://www.gobsmacked.io. I was thinking of trying to do something similar to this next.
Ahh - the dependency graph recipe card. These are excellent. I've imagined something like this forever. Always annoyed that recipes put ingredients in a giant undifferentiated list and then give an instruction like "mix the dry ingredients in a deep bowl".
For a while I expected there could be a good return on a good implementation of this, but now as soon as a strong interface itself is created it seems easy to copy.
I used to want this kind of recipe card, but I've cooked so much that's no longer the case (I actually forgot all about the idea until reading this comment). I can usually look at the list of ingredients, and imagine what needs to be done. If it's an unusual or unfamiliar cuisine I will read the method, but after that point the list of ingredients suffice. If I read a recipe somewhere and want to cook it later, I will just write the ingredients on a post-it (usually in cooking order) and maybe 1-2 brief comments.
I imagine in domains you are skilled at you'd also prefer high level instructions than a step-by-step tutorial.
I agree that doesn't help the beginner, or someone who doesn't cook regularly, or someone cooking something new and I think most recipe writers are just following the established structure without thinking about what they and others really need.
Feels like one might be able to get an llm to convert an annoying to read recipe into a mermaid dependency graph following this example. Might be worth a try!
FWIW though most recipes are basically ~10 steps long so a simple list suffice.
Still it could be an interesting experiment as I imagine that precisely recipes that are less sequential are (on average, with as challenging steps, e.g. excluding making caramel which has a high chance of burning) perceived as more complex.
That's a very cool site! I enjoyed the hand-drawn graphs.
Your tables remind me of recipes in Modernist Cuisine. They all have ingredients grouped by the procedures together with weight, sometimes volume, and ratio.
I love this! I bet you could make a successful recipe book based on this concept, with large schematics that a cook can read from a distance while working in the kitchen.
I really like these. I went through a phase a couple years ago where I got really into cooking new fancy recipes, and having to scroll around on recipe pages, or try and read my own chicken scratch notes or understand the context I was trying to imply when I wrote the notes weeks ago was a struggle.
Having everything more or less right there in front of your face seems really nice.
And I don't know why, but "Beans (green)" is really tickling my funny bone.
a lot of the schematics have avoidable edge crossings, that could improve intuitive readability enormously, theres entire subfields of graph theory that consideres rendering of graphs and planar embeddings.
This will perhaps be overkill for what you're trying to achieve, but there is Object Process Methodology (OPM)[1] which may be inspiration for modelling recipes. It looks similar to the methodology you're using, and as an example, expects the following type of modelling:
The advantage of OPM is alignment of graphical and textual representations.
The downside of such approach is you soon discover how many millions of objects may exist in recipes--unwashed carrot, washed carrot, orange carrot, purple carrot, yellow carrot, white carrot, peeled carrot, coarsely diced carrot, finely diced carrot, julienned carrot... and purple julienned carrot vs. yellow julienned carrot. And that's just basic preparation complexity well before any contemplation of cooking or plating up elements. To go further you then discover a lack of useful labels such as "mirepoix" or "soffrito", if for example, you wanted to substitute sweet potato in place of carrot in the recipe.
Then there is SysML 2[2] which is kind of like OPM if you ever wanted to write a recipe in 35,000 lines of code, including possibly all the complexity of mathematical modelling of the Maillard reaction for purple carrots vs. yellow carrots using either extra virgin olive oil or butter. Probably best suited for the largest food processing companies such as Nestle, Unilever, Modelez, etc and even then, inherent complexity of their food products rarely would reach the level of a fine dining dish prepared by a chef.
OPM looks like a great way to implement a free-style crafting system for a roguelike. I mean instead of having standard recipes that you have to assemble you could invent your own by putting together basic ingredients but then you need a way to know what comes out (and its effects I guess). I don't know if any existing games do that.
That does represent 70% or so of the current world population. It isn't 100% coverage but it is most of the many of the biggest groups.
It is missing the Italian, Japanese, Greek and Mexican cooking - that are incredibly popular worldwide and it is incomplete without them, and nothing from Africa at all or Middle East.
> It is missing the Italian, Japanese, Greek and Mexican cooking - that are incredibly popular worldwide and it is incomplete without them, and nothing from Africa at all or Middle East.
That's overstating it. There are certainly English-language sources describing Italian, Japanese, Greek, Mexican, African, and Middle Eastern recipes. They're likely not the most authoritative sources, but it's not as if I'd expect these cuisines to be completely absent.
edit: that document also breaks it out by region, including 33,923 Japanese recipes which seems respectable. 324 from Sub_Saharan_African which is tiny but still more than 0. Italian and Greek are likely a fair chunk of Mediterranean (164,107). I don't see a breakout for Middle Eastern. Some might be lumped into Mediterranean as well.
See [1] for a demo, seemingly of an older iteration of what this paper describes. I was curious what ingredients the demo had selected (1032 available vs 1790 this paper selects) so I tried some obscure ingredients from "Organum: Nature, Texture, Intensity, Purity" by Peter Gilmore[2] (known for Quay restaurant in Sydney, Australia).
It's got some adventurous ingredients such as juniper berry, macadamia nut, nigella seed, orange blossom water and lemon verbena. It even separates sesame oil and toasted sesame oil. Even though the ingredients list only has "rice", "black rice", "brown rice" and "glutinous rice", when you select "rice" as an ingredient, the recipes it generates are smart enough to advise of chilling cooked jasmine rice before using in a fried rice, and smart enough to soak and rinse Basmati rice before using in a pilaf. If selecting "lamb" as an ingredient, the recipes it generates will choose the cut as shoulder or shank if you select vegetables normally associated with braising.
It doesn't know of grapeseed oil, orzo, mangosteen, lemon myrtle, and of course anything that only Peter Gilmore might use in a recipe and most chefs would have never heard of (karkalla as an example). I don't see this being too much of a limitation because such ingredients are quite localised or speciality. It knows of "pumpkin seeds" but not "pumpkin"--that is "squash", so there are some localisation improvements which could be made to improve British and American English use. I tried pairing "lamb" and "avocado" together in the hope it'd generate a recipe with a salad, but this failed. I then realised the ingredients list doesn't include lettuce or rocket, but has "salad greens" instead (American English) and no matter what I tried (other salad ingredients, chicken or no protein), it would not give me a salad. It kept generating wannabe-fancy dishes of a chunk of protein surrounded by tomato gel (agar agar) and a smear of avocado, or similar.
> "pumpkin"--that is "squash", so there are some localisation improvements which could be made to improve British and American English use
That's a much bigger issue than just wording differences. As an American, there's several different squashes in common use of which pumpkin is only one. (acorn, butternut, and spaghetti are the ones I'm thinking of; zucchini if you want to be pedantic).
I had Claude Code implement this for me with the data and information from there and it seems all right. Maybe it works well for substitutions rather than recipe construction: https://viz.roshangeorge.dev/recipe-model/
I saw this on X/Twitter. I do not believe that human cooking, and all of its techniques and ingredients and the various ways that things can be prepared in different cultural contexts can be compressed in to 2 megabytes.
It is sort of like saying here is a 1GB model that can do tool calling and coding and then you try it out and it barely functions. Yes, it technically is a 1GB coding model, but it isn't a good one.
The space of palatable human food is small. There are only a few thousand ingredients and a few thousand preparation techniques. This could easily be compressed at high fidelity into a model.
The table lists Italian, French and other cuisines. The 11 source listing is for language. The resource is missing authentic French-language described recipes, but there is surely an English-language French onion soup.
Looking at Table 2 I wonder why Chinese and Korean are similar enough to go in one huge bucket (1.5M) but Japanese is distinct enough to get it's own tiny bucket (33K).
- land meats were all but banned in Japan for centuries prior to Perry's ultimatum, encouraging the development of alternatives in flavor and nutrition like natto and katsuobushi
- geographically, Japan had less access to land crops (even wheat was not common!) and more access to fish and seaweed than Korea
The triangle of flour - milk and egg- held eggnog, but eggnog contains alcohol, which is made of starches, usually flour.. thus being percentage-wise closer to flour then displayed. Yes, so much on the spectrum..
I don't really understand, what the Graphs on page 9 and 13 represent, but they look somewhat like a world map with the continents.
I wouldn't be surprised if there's actually a geographic connection. A lot of ingrediants are probably more prevalent in certain world regions.
WTF? I found this a parody. Perhaps because I've just been re-reading C.S. Lewis's "That Hideous Strength", where language becomes meaningless, I can't stand the design of the site or the text it presents.
Making a nice lentil soup doesn't require any thought or description. I know that I, and millions of cooks in Asia will do it with just their hands.
As someone learning to cook from recipes in multiple languages,
this is really cool. Curious how it handles the same ingredient
called by different names (e.g., "scallion" vs "green onion" vs
"long onion").
It's an appeal to the attention economy. "All of human cooking compressed into 2 MB" is(mentally) palatable relative to "Navigating the Emergent Geometry of Food Ingredient Embeddings".
The work is very interesting. The title is misleading.
A better title would be: "all of human ingredients compressed into 1,800 primitives"
There is little to substantively nothing about the actual cooking: preparation methods, proportions, etc.
But the idea that tomato goes well with beef the whole world over is very interesting and useful for creating flavors that will go together, perhaps surprisingly. It will be a nice resource in the future.
I have a wonderful book that explores this idea of an atlas of flavours that work together.
The flavor bible.
I can assure you that it does not contain 1800 ingredients in all of there combinations, but it does a remarkable job of covering a widely used selection of herbs spices vegetables and meats. I doubt a compressed version of the text would even be very large.
The trouble I find with LLM generated recipes is they miss the nuance of the technique. Often the success of a depends on a single step or ratio. For instance “fried chicken” has a million incarnations the world over, but you can’t just average out the recipes and end up with tasty fried chicken.
Ruhlsman's "Ratio" is also quite good at distilling the mechanics of food into an algorithm of sorts.
https://www.simonandschuster.com/books/Ratio/Michael-Ruhlman...
yeah I took a look at this and others and tried to pull together some helpful 'flavor maps':
https://transcendent-choux-d1b930.netlify.app/
Have you also come across this? ‘Flavor network and the principles of food pairing’
https://arxiv.org/pdf/1111.6074
Sounds like The Flavor Bible - it's a great reference book to find pairings of ingredients.
> The trouble I find with LLM generated recipes is they miss the nuance of the technique. Often the success of a depends on a single step or ratio. For instance “fried chicken” has a million incarnations the world over, but you can’t just average out the recipes and end up with tasty fried chicken.
Specify what technique you want. Explicitly say you want to correctly follow all the techniques of the chosen cuisine.
All the LLMs have ingested nearly every cookbook ever made, across multiple languages.
You can upload a photo of your spice rack (with visible labels) to ChatGPT and tell it to save your pantry ingredients as a memory.
LLMs are absurdly overpowered for cooking, when used right. If you ask it for a week long meal prep plan the results will be meh, but ask it for kheer inspired rice crispy treats (which everyone reading this should to, kheer rice crispies are the best!) and you'll get some solid results.
You may notice at first the LLM will still water things down for "American" tastes. With Claude/ChatGPT you only need to remind it once or twice not to do that and it'll course correct all future conversations.
> All the LLMs have ingested nearly every cookbook ever made, across multiple languages.
That's not a positive thing, good recipe developers are Rare. For every recipe that's been meticulously tested and documented there are 1000 that haven't been. Many cookbooks are riddled with errors.
Sounds like the flavour theaurus
Sounds like the flavour colour wheel.
Sounds like the flavour roulette wheel.
Unless I'm missing something, there's also nothing in the paper to indicate this is "all of human ingredients"? It looks like it's 11 data sources covering a bunch of common cuisines, with the English + Chinese sources accounting for 90% (!) of the dataset. Among others, Africa and the Arab world are not present in the data (good for about 25% of the global population).
Also, all non-English terms were AI-translated to English which is methodologically understandable but surely leaves room for error.
translation is an interesting problem in and of itself still. its kind of a miracle we can do it at all, yet in some circumstances it seems obvious for there to be objective answers (cooking ingredients being one of them), but even then you never really know even with human translators if you've got it correct. even within the same language nearly every individual has their own version of it.
for example, how would you translate "chips" to another language without first knowing which version of English you are translating from? could be an american speaker with a british relative and they use the british definition of chips while otherwise mostly speaking american english.
there's a level of pragmatism in translation that needs to be assumed, and ultimately we have to accept that translated knowledge will always have low resolution. There is a layer of work that needs to be done with the source of the materials involvement to get written content to a level of formalism needed to be representative of the language it is written in. Generally, the work of editors. Which means successful translation for wide distribution, while still not guaranteed, is predicated on the editorial skills of the translator which begs for dialogue with the source.
Meanwhile, AI provides this super convenient band aid to get translation results you can't disprove.
I genuinely think people are severely underestimating the power held by these models for being translators and how literal truth is going to be determined by them deep behind the scenes under the disguise of accessibility. Not in a dangerous way necessarily, just in a way where what languages are and what words mean is going to shift towards whatever the models think they are.
In a way, over extended time, the models will not be wrong about the translations because their results will redefine what successful formal editing of language looks like, and disagreeing with them will amount to the same difference as having local slang.
Leaving out Indian, Southeast Asian and Arab cuisine means this is nigh useless.
There are 2,000+ varieties of mangoes alone. You could literally end up with a larger file using only mangoes.
> But the idea that tomato goes well with beef the whole world over is very interesting
I saved a beef stew I was making for twelve people once by adding tomato sauce.
Beef hardens if stewed incorrectly and tomato acid tenderises it again.
EDIT: removed incorrect information about store bought tomatoes.
I have a hard time believing that that weak an acid can have a noticeable effect vs just the extra cooking time. Sorry for being a skeptic :-) Most of the time I deal with beef either it's the particular chunk of meat I bought that day or marinating it in salt for over a day or just stewing it for a long amount of time.
If you are interested in that you might want to check out this paper:
https://www.nature.com/articles/srep00196
I would like one day to have a database which measure how strongly every food ingredient in use binds to every human smell receptors.
One that has long tickled me is cabbage +/- pickling. I eat both sauerkraut and kimchi from the jar and enjoy them as additions to _roughly_ the same foods, and when friends/family ask I insist they are basically the same thing anyways, but they are uninterested in such shenanigans. I'd love to learn more about these cross cultural shared foods.
can anyone check whether pineapple goes well with baked dough with cheese/tomato sauce?
only in Hawaii ...
+1.
On a side note (and maybe off topic), I am thinking about food pairing which is based on the idea that two ingredients sharing volatile aroma compounds or certain molecular families may have a potential sensory compatibility (broccolis and strawberries for example). I'd love to test those ingredients and find some unknown food pairings. But .. time is what it is (for now).
I think it's a lot simpler than that. A common pattern for sauces is fat + acid + salt
- (Mexican) avocado and lime/lemon + salt
- (Chinese-southwestern) chili oil and vinegar + salt/fermented bean paste
- (Italian) olive oil and tomato + salt
- (Turkish) olive oil and lemon + salt
- (Thai) coconut milk and lime + salt
...
https://www.saltfatacidheat.com/
I was gonna post the same, as a lifelong cook (and eater!) Samin Nosrat's book/show was essential for giving me the confidence to improvise in the kitchen while retaining authenticity to regional cuisines.
Tomatoes are high in glutamate, which accentuates beef flavor.
> all of human ingredients
Depending on who you ask, this may also sound misleading
It's cheaper to train a robot how ingredients go together than to cook for humans.
Neat.
I'm trying to compress recipes into little schematics https://leontrolski.github.io/recipes.html
Nice ideas, it just misses amounts. And of course there may be nuances of technique missing, e.g. low or high heat. So it might work best as a recap and starting point "how to vary m favourite recipe".
Nice! this reminds me of https://www.reddit.com/r/flowchartrecipes/ and the table view on the https://www.cookingforengineers.com/recipe/87/Carrot-Pulp-Ca... pages.
I like it. Reminds me a bit of the table format on Cooking for Engineers (scroll to the bottom of the recipe): https://www.cookingforengineers.com/recipe/19/Erics-Chocolat...
I was going to say the same! You can also check the recipe card here: https://www.cookingforengineers.com/recipe/19/Erics-Chocolat...
This is cool - I tried automating different recipe formats/visualizations at https://www.gobsmacked.io. I was thinking of trying to do something similar to this next.
Ahh - the dependency graph recipe card. These are excellent. I've imagined something like this forever. Always annoyed that recipes put ingredients in a giant undifferentiated list and then give an instruction like "mix the dry ingredients in a deep bowl".
For a while I expected there could be a good return on a good implementation of this, but now as soon as a strong interface itself is created it seems easy to copy.
I used to want this kind of recipe card, but I've cooked so much that's no longer the case (I actually forgot all about the idea until reading this comment). I can usually look at the list of ingredients, and imagine what needs to be done. If it's an unusual or unfamiliar cuisine I will read the method, but after that point the list of ingredients suffice. If I read a recipe somewhere and want to cook it later, I will just write the ingredients on a post-it (usually in cooking order) and maybe 1-2 brief comments.
I imagine in domains you are skilled at you'd also prefer high level instructions than a step-by-step tutorial.
I agree that doesn't help the beginner, or someone who doesn't cook regularly, or someone cooking something new and I think most recipe writers are just following the established structure without thinking about what they and others really need.
”To bake an apple pie from scratch, first you must create the universe.”
— Carl Sagan
Feels like one might be able to get an llm to convert an annoying to read recipe into a mermaid dependency graph following this example. Might be worth a try!
Just tried https://www.mlynn.org/tools/generate-diagram and it didn't work.
FWIW though most recipes are basically ~10 steps long so a simple list suffice.
Still it could be an interesting experiment as I imagine that precisely recipes that are less sequential are (on average, with as challenging steps, e.g. excluding making caramel which has a high chance of burning) perceived as more complex.
That's a very cool site! I enjoyed the hand-drawn graphs.
Your tables remind me of recipes in Modernist Cuisine. They all have ingredients grouped by the procedures together with weight, sometimes volume, and ratio.
Example: https://modernistcuisine.com/wp-content/uploads/2013/01/Mac-...
I love this! I bet you could make a successful recipe book based on this concept, with large schematics that a cook can read from a distance while working in the kitchen.
My friend did a similar thing https://www.kickstarter.com/projects/1077776268/recipe-redes...
I really like these. I went through a phase a couple years ago where I got really into cooking new fancy recipes, and having to scroll around on recipe pages, or try and read my own chicken scratch notes or understand the context I was trying to imply when I wrote the notes weeks ago was a struggle. Having everything more or less right there in front of your face seems really nice.
And I don't know why, but "Beans (green)" is really tickling my funny bone.
These are amazing. It feels so clear to see a visual ”map” of the cooking process before you even start.
This would help coordinate two cooks to make prepping more independent.
I’m trying to figure out if an landscape Ipad, with interactive elements for extra details if needed, would be a good UI for this.
-
Edit: Showed it to my non-Engineer wife and she said ”this is horrible” after staring at it for 10 seconds. Maybe not for everyone…
a lot of the schematics have avoidable edge crossings, that could improve intuitive readability enormously, theres entire subfields of graph theory that consideres rendering of graphs and planar embeddings.
Great initiative ! So simple and yet it works (from those recipes listed I know, they are all working nicely).
My God what do you do to your feta?
I love it too, bookmarked and hopefully adopted! Did you write about it somewhere?
Nice! I do similar but yours are much more sophisticated. I list the ingredients and then group them at the side with instructions.
This will perhaps be overkill for what you're trying to achieve, but there is Object Process Methodology (OPM)[1] which may be inspiration for modelling recipes. It looks similar to the methodology you're using, and as an example, expects the following type of modelling:
"peeling carrot" (process) consumes "washed carrot" (object)
"peeling carrot" (process) yields "peeled carrot" (object)
"peeling carrot" (process) yields "carrot peel" (object)
"finely dicing carrot" (process) consumes "peeled carrot" (object)
"finely dicing carrot" (process) yields "finely diced carrot" (object)
"prepare mirepoix" (process) consumes "finely diced carrot" (object)
"prepare mirepoix" (process) consumes "finely diced celery" (object)
"prepare mirepoix" (process) consumes "finely diced onion" (object)
"prepare mirepoix" (process) consumes "butter" (object)
"prepare mirepoix" (process) yields "mirepoix" (object)
The advantage of OPM is alignment of graphical and textual representations.
The downside of such approach is you soon discover how many millions of objects may exist in recipes--unwashed carrot, washed carrot, orange carrot, purple carrot, yellow carrot, white carrot, peeled carrot, coarsely diced carrot, finely diced carrot, julienned carrot... and purple julienned carrot vs. yellow julienned carrot. And that's just basic preparation complexity well before any contemplation of cooking or plating up elements. To go further you then discover a lack of useful labels such as "mirepoix" or "soffrito", if for example, you wanted to substitute sweet potato in place of carrot in the recipe.
Then there is SysML 2[2] which is kind of like OPM if you ever wanted to write a recipe in 35,000 lines of code, including possibly all the complexity of mathematical modelling of the Maillard reaction for purple carrots vs. yellow carrots using either extra virgin olive oil or butter. Probably best suited for the largest food processing companies such as Nestle, Unilever, Modelez, etc and even then, inherent complexity of their food products rarely would reach the level of a fine dining dish prepared by a chef.
[1] https://en.wikipedia.org/wiki/Object_Process_Methodology
[2] https://www.omg.org/spec/SysML/2.0/Language/PDF
OPM looks like a great way to implement a free-style crafting system for a roguelike. I mean instead of having standard recipes that you have to assemble you could invent your own by putting together basic ingredients but then you need a way to know what comes out (and its effects I guess). I don't know if any existing games do that.
That's really neat and easy to parse, love it!
Dang this is the best way to represent a recipe I've ever seen. I love it
This is really really awesome
It's amazing how much more readable this format is. I love it.
I'd prefer it if you minimized the crossing paths :-)
Recipes-as-JSON?
Now this I love. It respects the craft of cooking and the human element, while giving instructions in an easy to grok and straightforward way.
Great job!
That is brilliant. Going to try some of yours then maybe transcribe my own favourites into the same format. You've struck on a great idea here.
Title is pretty clickbaity. Cool data set though
>from 11 sources spanning seven languages, English, Chinese, Russian, Vietnamese, Spanish, Turkish, Indonesian, German, and Indian-English
So hardly "all of human cooking"...
That does represent 70% or so of the current world population. It isn't 100% coverage but it is most of the many of the biggest groups.
It is missing the Italian, Japanese, Greek and Mexican cooking - that are incredibly popular worldwide and it is incomplete without them, and nothing from Africa at all or Middle East.
> It is missing the Italian, Japanese, Greek and Mexican cooking - that are incredibly popular worldwide and it is incomplete without them, and nothing from Africa at all or Middle East.
That's overstating it. There are certainly English-language sources describing Italian, Japanese, Greek, Mexican, African, and Middle Eastern recipes. They're likely not the most authoritative sources, but it's not as if I'd expect these cuisines to be completely absent.
The actual corpuses they used are listed in the supplement: https://arxiv.org/src/2605.22391v1/anc/supplement.pdf
edit: that document also breaks it out by region, including 33,923 Japanese recipes which seems respectable. 324 from Sub_Saharan_African which is tiny but still more than 0. Italian and Greek are likely a fair chunk of Mediterranean (164,107). I don't see a breakout for Middle Eastern. Some might be lumped into Mediterranean as well.
Yes. I mean if you look at the corpus basically HALF of recipes are Chinese/Korean.
They do quickly acknowledge it, but definitely not a balanced set.
See [1] for a demo, seemingly of an older iteration of what this paper describes. I was curious what ingredients the demo had selected (1032 available vs 1790 this paper selects) so I tried some obscure ingredients from "Organum: Nature, Texture, Intensity, Purity" by Peter Gilmore[2] (known for Quay restaurant in Sydney, Australia).
It's got some adventurous ingredients such as juniper berry, macadamia nut, nigella seed, orange blossom water and lemon verbena. It even separates sesame oil and toasted sesame oil. Even though the ingredients list only has "rice", "black rice", "brown rice" and "glutinous rice", when you select "rice" as an ingredient, the recipes it generates are smart enough to advise of chilling cooked jasmine rice before using in a fried rice, and smart enough to soak and rinse Basmati rice before using in a pilaf. If selecting "lamb" as an ingredient, the recipes it generates will choose the cut as shoulder or shank if you select vegetables normally associated with braising.
It doesn't know of grapeseed oil, orzo, mangosteen, lemon myrtle, and of course anything that only Peter Gilmore might use in a recipe and most chefs would have never heard of (karkalla as an example). I don't see this being too much of a limitation because such ingredients are quite localised or speciality. It knows of "pumpkin seeds" but not "pumpkin"--that is "squash", so there are some localisation improvements which could be made to improve British and American English use. I tried pairing "lamb" and "avocado" together in the hope it'd generate a recipe with a salad, but this failed. I then realised the ingredients list doesn't include lettuce or rocket, but has "salad greens" instead (American English) and no matter what I tried (other salad ingredients, chicken or no protein), it would not give me a salad. It kept generating wannabe-fancy dishes of a chunk of protein surrounded by tomato gel (agar agar) and a smear of avocado, or similar.
[1] https://epicure.kaikaku.ai/
[2] https://en.wikipedia.org/wiki/Peter_Gilmore_(chef)
> "pumpkin"--that is "squash", so there are some localisation improvements which could be made to improve British and American English use
That's a much bigger issue than just wording differences. As an American, there's several different squashes in common use of which pumpkin is only one. (acorn, butternut, and spaghetti are the ones I'm thinking of; zucchini if you want to be pedantic).
I had Claude Code implement this for me with the data and information from there and it seems all right. Maybe it works well for substitutions rather than recipe construction: https://viz.roshangeorge.dev/recipe-model/
I saw this on X/Twitter. I do not believe that human cooking, and all of its techniques and ingredients and the various ways that things can be prepared in different cultural contexts can be compressed in to 2 megabytes.
It is sort of like saying here is a 1GB model that can do tool calling and coding and then you try it out and it barely functions. Yes, it technically is a 1GB coding model, but it isn't a good one.
The space of palatable human food is small. There are only a few thousand ingredients and a few thousand preparation techniques. This could easily be compressed at high fidelity into a model.
Citations needed
Similarly, all of human programming can be broken down into 128 characters
I would not trust a model/corpus about food that includes English and German, but excludes Italian and French
The table lists Italian, French and other cuisines. The 11 source listing is for language. The resource is missing authentic French-language described recipes, but there is surely an English-language French onion soup.
this is the goat, the pinnacle of ai use, i'm all for it, haha. honestly one of my fave things i've seen
> [Claude] performed all ingredient classification under deterministic decoding (temperature 0–0.1)
Not that it matters much in this context, but low-temperature is not the same thing as deterministic.
Yep. Zero temperature is neither necessary nor sufficient for deterministic inference.
Why?
You can seed the randomness are still having nonzero temperature.
Numerical instability can introduce randomness especially on GPU like hardware unless you’re very careful about how you write your algorithms.
In any batch inference environment that includes experts, expert routing may vary depending on what else is in the batch. For one thing.
This title evokes memories of The Twilight Zone's To Serve Man episode.
Looking at Table 2 I wonder why Chinese and Korean are similar enough to go in one huge bucket (1.5M) but Japanese is distinct enough to get it's own tiny bucket (33K).
Two major contributing factors I can think of:
- land meats were all but banned in Japan for centuries prior to Perry's ultimatum, encouraging the development of alternatives in flavor and nutrition like natto and katsuobushi
- geographically, Japan had less access to land crops (even wheat was not common!) and more access to fish and seaweed than Korea
Published by Kaikaku, a London based startup doing automated restaurants and cooking
I forgot this to raise it in the last food related thread - so here is the after-wit: https://www.reddit.com/media?url=https%3A%2F%2Fpreview.redd....
The triangle of flour - milk and egg- held eggnog, but eggnog contains alcohol, which is made of starches, usually flour.. thus being percentage-wise closer to flour then displayed. Yes, so much on the spectrum..
I don't really understand, what the Graphs on page 9 and 13 represent, but they look somewhat like a world map with the continents. I wouldn't be surprised if there's actually a geographic connection. A lot of ingrediants are probably more prevalent in certain world regions.
It makes me take the paper less seriously when one of the authors is submitting it with an inaccurate clickbait title.
Clickbait title, post should be removed.
Why haven’t you analyzed Italian recipes in Italian?
All of recorded human cooking compressed into 2 megabytes
We've lost more than we know
At uncook we’re in the middle of glamming up our ingredient normalization pipeline, so this is VERY welcome right now
this seems more like the very tip of the iceberg here v a complete database, anyhow very neat
"All of human cooking" how?
Does it have African ingredients??
Clickbait
WTF? I found this a parody. Perhaps because I've just been re-reading C.S. Lewis's "That Hideous Strength", where language becomes meaningless, I can't stand the design of the site or the text it presents.
Making a nice lentil soup doesn't require any thought or description. I know that I, and millions of cooks in Asia will do it with just their hands.
Cooking/recipes seems like it would be an excellent application for a specialized model.
As someone learning to cook from recipes in multiple languages, this is really cool. Curious how it handles the same ingredient called by different names (e.g., "scallion" vs "green onion" vs "long onion").
You can use it to browse flavor combinations here, seems quite neat!
https://epicure.kaikaku.ai/
That being said, I'm not excited about the idea of this being used to automate cooking somehow.
Food, to me, is part of what makes us human, where we express our soul for lack of a better word.
The idea of taking that away feels like robbing us of our humanity.
I just want say a week's worth of human cooking compressed into a pellet
It’s soup, right? Has got to be soup.
"11 sources spanning seven languages, English, Chinese, Russian, Vietnamese, Spanish, Turkish, Indonesian, German, and Indian-English"
1. English food is not really food, should not be included. :)
2. 11 sources is nowhere near close to "all of human cooking"..
Jacques Pepin's knuckles don't compress.
Cooking condensed beyond the point of usefulness.
It's another book for Zach Weinersmith.
"human cooking"? ewww
To help you out, this is distinctly different from “cooking human”.
11 sources is not "all of" anything. You have a sample. The title is horrible. Fix the title please.
Odd not including French and Italian recipes.
As soon as you start adding our beloved french recipes, frogs, snails and other oddities might substantially increase the 1,790 ingredients count
French and Italian languages. There are many recipes from both cuisines written in English which, I assume, will have been included.
Indeed, but I bet many were never translated.
it's a clickbait title
I don't see why the title needs to be quite so grandiose.
It's an appeal to the attention economy. "All of human cooking compressed into 2 MB" is(mentally) palatable relative to "Navigating the Emergent Geometry of Food Ingredient Embeddings".
Getting you to click is the ultimate goal.
Should be downvoted/flagged and buried.
Great, so now chefs are being replaced too..!