Model reference · open weights

epicure-core

Available as managed deployment Embeddings Kaikaku Embeddings 1 variants 85k dl/mo

epicure-core is an open-weight embedding model from Kaikaku. AxForge deploys and operates it for you on dedicated EU-owned hardware — with the licence handled where one is required.

Available as managed deployment — configured and operated for you on dedicated EU hardware, quoted per deployment.

What it is

Released byKaikaku
TypeEmbedding models
TaskEmbeddings
Runs withcustom
Released2026-05-27
Popularity85k downloads / month
LicenceOpen weights

About

What epicure-core is

A 300-dimensional skip-gram ingredient embedding over a 1,790-ingredient canonical vocabulary, trained on a blend of (i) typed FlavorDB ingredient-compound metapath walks and (ii) injected pure ingredient-ingredient walks at ii_repeat=10. Core is the middle sibling on the chemistry-vs-recipe-context spectrum.

The 10x I-I injection is the design lever that concentrates Core's geometry: participation ratio drops to 94.2 of 300 (vs ~180 for the isotropic Cooc and Chem siblings), average pairwise cosine rises to 0.35, and the resulting concentration coincides with the tightest emergent modes of the three.

Companions in the family: epicure-cooc (recipe-context only) and epicure-chem (chemistry only).

Paper: Epicure: Navigating the Emergent Geometry of Food Ingredient Embeddings

Read the full model card

Quick start

from epicure import Epicure

m = Epicure.from_pretrained("Kaikaku/epicure-core")

m.neighbors("chicken", k=5)
# -> [('pork', 0.58), ('beef', 0.57), ('chicken_broth', 0.55),
#     ('peanut', 0.52), ('cream_of_chicken_soup', 0.52)]

m.slerp("rice", "cuisine:South_Asian", theta_deg=30, k=5)
# -> [('turmeric', 0.76), ('mustard_seed', 0.76), ('fenugreek_seed', 0.75),
#     ('coriander', 0.74), ('cumin', 0.74)]

m.closest_mode("chocolate", kind="factor", k=3)

What is in this repo

Identical structure to the Cooc sibling. The Core-specific differences:

  • modes.json: 193 modes across 44 properties (vs 150/41 for Cooc, 200/43 for Chem).
  • factor_poles.npy shape: (87, 300).
  • supervised_poles.json: 113 entries.

See the Cooc model card for the per-file inventory.

Reported numbers (this sibling)

From the paper:

  • Isotropy: participation ratio PR = 94.2, average pairwise cosine 0.35. Concentrated geometry by design (10x I-I injection).
  • Direction quality (5-fold CV Spearman rho): baked-in CF 0.40; held-out basic-taste CF 0.42; USDA macros 0.45. Cuisine Cohen's d mean 2.70.
  • Emergent modes: 193 modes / 44 properties. Mean within-mode coherence 0.833 against random-pair baseline 0.348 (margin 0.485, tightest of the three siblings).

Core's concentrated geometry pulls both pole tightness and the all-pairs floor upward; the tightness margin (mode coherence minus baseline) is comparable to Cooc and Chem at ~0.5, so the concentration is a design lever, not a defect.

When to pick Core: you want chemistry-aware structure but cannot afford to lose recipe-context companionship entirely. Core's nearest-neighbour for chicken is pork (chemistry peer) but its full top-5 includes chicken_broth and cream_of_chicken_soup (recipe context).

Operator semantics

Same as Cooc. See epicure-cooc for the full operator reference. The three operator families (top-K neighbours, closest-mode lookup, SLERP direction arithmetic) are identical across siblings; only the geometry they act on differs.

Honesty about cuisine pole reconstruction

See the epicure-cooc model card for the full discussion. Short version: the eight cuisine-macro-region pole vectors used in the paper's Section 4.2 hero examples are reconstructed here as the unit-mean of every mode whose Claude label contains a cuisine keyword. Core happens to reproduce paper-genre results with high fidelity because the chemistry-mediated walks cluster cuisines by aroma-compound profile.

Limitations and citation

Same as Cooc. See the paper Section 5.3 for corpus imbalance, hub coverage, and LLM-dependence notes.

@article{radzikowski2026epicure,
  title   = {Epicure: Navigating the Emergent Geometry of Food Ingredient Embeddings},
  author  = {Radzikowski, Jakub and Chen, Josef},
  journal = {arXiv preprint arXiv:2605.22391},
  year    = {2026}
}

License: CC BY 4.0.

From the published model card. Full card on the HuggingFace links in the sidebar.

How it works

How embedding models work

Your textsentence / documentEncodermaps meaningVectorlist of numbersAn embedding model turns text into a vector, so similar meanings sit close together — the basis of search and RAG.

Using it via the API

Call it like any OpenAI endpoint

Once AxForge deploys epicure-core for you, it answers on the OpenAI-compatible API — the same base URL and keys as every other model. (epicure-core below is illustrative; you get the exact model name on deployment.)

$ curl -sS https://api.axforge.ai/v1/embeddings \
  -H "Authorization: Bearer $AXFORGE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"epicure-core","input":"text to embed"}'

Create an account — your API key is available in the console. 3M free tokens every 30 days with every new account.

© 2026 AxForge · EU-hosted AI infrastructure Pricing Docs Trust Privacy Terms