{"id":1568,"date":"2025-09-08T20:17:11","date_gmt":"2025-09-08T20:17:11","guid":{"rendered":"https:\/\/anykeycafe.com\/?page_id=1568"},"modified":"2025-09-08T20:17:11","modified_gmt":"2025-09-08T20:17:11","slug":"token-sense","status":"publish","type":"page","link":"https:\/\/anykeycafe.com\/staging\/token-sense\/","title":{"rendered":"Token Sense"},"content":{"rendered":"\n<h1 class=\"wp-block-heading\">TokenSense: the engine layer<\/h1>\n\n\n\n<h2 class=\"wp-block-heading\">A. Processes (4 small scripts, one optional)<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>ingest.py<\/strong> (ETL)<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Pull raw sources \u2192 split \u2192 embed \u2192 write <code>content.*<\/code><\/li>\n\n\n\n<li class=\"\">Extract forms\/instances \u2192 update <code>token.*<\/code><\/li>\n\n\n\n<li class=\"\">Optional edge seeding from citations\/links \u2192 <code>lat.edges(rel='refers_to'|'quotes')<\/code><\/li>\n<\/ul>\n\n\n\n<ol start=\"2\" class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>lattice_maint.py<\/strong> (nightly)<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Decay + reinforcement (co-activations) \u2192 <code>lat.edges.weight<\/code><\/li>\n\n\n\n<li class=\"\">Refresh <code>lat.neighbors<\/code> (kNN) by space<\/li>\n\n\n\n<li class=\"\">Re\/cluster into <code>lat.cells<\/code>, update <code>lat.memberships<\/code><\/li>\n\n\n\n<li class=\"\">Maintain <code>spiral_angle<\/code>, <code>radial_distance<\/code>, <code>radial_index<\/code><\/li>\n\n\n\n<li class=\"\">Log to <code>lat.topology_events<\/code><\/li>\n<\/ul>\n\n\n\n<ol start=\"3\" class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>signals.py<\/strong> (near-real-time)<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">On user events, append <code>lat.activations(kind,node_id,strength,phase)<\/code><\/li>\n\n\n\n<li class=\"\">(Optional) bump edges along the path just traversed<\/li>\n\n\n\n<li class=\"\">Lightweight; can run as a small web worker or queue consumer<\/li>\n<\/ul>\n\n\n\n<ol start=\"4\" class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>housekeeping.py<\/strong> (weekly)<\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Vacuum\/analyze hot tables, rotate partitions (if enabled)<\/li>\n\n\n\n<li class=\"\">Prune very low-weight \/ stale edges<\/li>\n\n\n\n<li class=\"\">Validate constraints (no orphan kinds\/ids\u2014triggers already help)<\/li>\n<\/ul>\n\n\n\n<ol start=\"5\" class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>(optional) train_adapters.py<\/strong><\/li>\n<\/ol>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Prepares training corpora, runs LoRA fine-tunes, registers new adapters (see D)<\/li>\n<\/ul>\n\n\n\n<blockquote class=\"wp-block-quote is-layout-flow wp-block-quote-is-layout-flow\">\n<p class=\"has-medium-font-size wp-block-paragraph\">Execution cadences: <code>signals.py<\/code> (continuous), <code>ingest.py<\/code> (on demand), <code>lattice_maint.py<\/code> (hourly or nightly), <code>housekeeping.py<\/code> (weekly).<\/p>\n<\/blockquote>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">B. Minimal configs each script reads<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\"><strong>DB DSN<\/strong>; <strong>embedding model name<\/strong>; <strong>LLM model name<\/strong>; <strong>top-k<\/strong> for neighbors; <strong>decay\/alpha<\/strong> for reinforcement.<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Read constants from <code>lat.config<\/code> (\u03a6, k, weights for S, etc.)\u2014we already added that table.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">C. A few small schema nits to add (for models\/adapters)<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">If you want to track which model made which vectors\/answers and manage LoRA adapters, add:<\/p>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>-- Registry of base models (LLMs &amp; embedders)\nCREATE TABLE IF NOT EXISTS lat.model_registry (\n  model_id   BIGSERIAL PRIMARY KEY,\n  name       TEXT UNIQUE NOT NULL,   -- e.g., 'Qwen2.5-7B-Instruct', 'bge-m3', 'arctic-embed-l-v2'\n  kind       TEXT NOT NULL CHECK (kind IN ('llm','embedder')),\n  version    TEXT,\n  context_len INT,\n  meta       JSONB DEFAULT '{}'::jsonb,\n  created_at TIMESTAMPTZ NOT NULL DEFAULT now()\n);\n\n-- LoRA adapters tied to a base model\nCREATE TABLE IF NOT EXISTS lat.lora_adapters (\n  adapter_id BIGSERIAL PRIMARY KEY,\n  base_model_id BIGINT NOT NULL REFERENCES lat.model_registry(model_id) ON DELETE CASCADE,\n  name       TEXT NOT NULL,           -- e.g., 'ogs-sense-qa-v1'\n  r          INT  NOT NULL,           -- rank\n  alpha      INT  NOT NULL,\n  target_modules TEXT&#91;] NOT NULL,     -- e.g., '{q_proj,k_proj,v_proj,o_proj}'\n  artifact_uri TEXT NOT NULL,         -- path to safetensors\/peft dir\n  metrics    JSONB DEFAULT '{}'::jsonb,\n  created_at TIMESTAMPTZ NOT NULL DEFAULT now(),\n  UNIQUE (base_model_id, name)\n);\n\n-- Where each vector came from (so you can re-embed later)\nALTER TABLE IF NOT EXISTS content.chunks\n  ADD COLUMN IF NOT EXISTS embed_model_id BIGINT REFERENCES lat.model_registry(model_id);\n\nALTER TABLE IF NOT EXISTS token.senses\n  ADD COLUMN IF NOT EXISTS embed_model_id BIGINT REFERENCES lat.model_registry(model_id);\n\nALTER TABLE IF NOT EXISTS token.instances\n  ADD COLUMN IF NOT EXISTS embed_model_id BIGINT REFERENCES lat.model_registry(model_id);\n\nALTER TABLE IF NOT EXISTS cog.turns\n  ADD COLUMN IF NOT EXISTS embed_model_id BIGINT REFERENCES lat.model_registry(model_id);\n<\/code><\/pre>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">That\u2019s enough to:<\/p>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">swap embedders cleanly,<\/li>\n\n\n\n<li class=\"\">track which LoRA you used for a run,<\/li>\n\n\n\n<li class=\"\">and re-index only what needs re-embedding.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">D. Pick a <strong>7B-class<\/strong> model (local-capable) + embeddings<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Shortlist (all open-weights, strong 7B-ish picks)<\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>Qwen2.5-7B-Instruct<\/strong> \u2014 modern 7.6B, long context (reportedly up to <strong>131k<\/strong>), good coding\/math &amp; multilingual; very active project. (<a href=\"https:\/\/huggingface.co\/Qwen\/Qwen2.5-7B-Instruct?utm_source=chatgpt.com\">Hugging Face<\/a>, <a href=\"https:\/\/qwenlm.github.io\/blog\/qwen2.5\/?utm_source=chatgpt.com\">Qwen<\/a>)<\/li>\n\n\n\n<li class=\"\"><strong>Llama-3.1-8B-Instruct<\/strong> \u2014 slightly bigger than 7B but still \u201csmall\u201d; <strong>128k<\/strong> context, broad ecosystem\/tooling, permissive license. (<a href=\"https:\/\/huggingface.co\/blog\/llama31?utm_source=chatgpt.com\">Hugging Face<\/a>, <a href=\"https:\/\/ai.meta.com\/blog\/meta-llama-3-1\/?utm_source=chatgpt.com\">Meta AI<\/a>)<\/li>\n\n\n\n<li class=\"\"><strong>Mistral-7B-Instruct<\/strong> \u2014 lean &amp; efficient; Apache-2.0; good latency and memory footprint. (Older than the two above but still a solid baseline.) (<a href=\"https:\/\/mistral.ai\/news\/announcing-mistral-7b?utm_source=chatgpt.com\">Mistral AI<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>My pick for you right now:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">If you want <strong>maximum context + multilingual<\/strong> at 7B size \u2192 <strong>Qwen2.5-7B-Instruct<\/strong>. (<a href=\"https:\/\/huggingface.co\/Qwen\/Qwen2.5-7B-Instruct?utm_source=chatgpt.com\">Hugging Face<\/a>)<\/li>\n\n\n\n<li class=\"\">If you prefer the <strong>widest ecosystem and tooling<\/strong> \u2192 <strong>Llama-3.1-8B-Instruct<\/strong> (worth the extra 1B params). (<a href=\"https:\/\/huggingface.co\/meta-llama\/Llama-3.1-8B?utm_source=chatgpt.com\">Hugging Face<\/a>)<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Embedding model (for <code>VECTOR(1536)<\/code>)<\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>BGE-M3<\/strong> \u2014 strong on retrieval; supports dense + multi-vector + sparse in <strong>one<\/strong> model; multilingual; up to ~8k tokens. Great for hybrid RAG. (<a href=\"https:\/\/huggingface.co\/BAAI\/bge-m3?utm_source=chatgpt.com\">Hugging Face<\/a>, <a href=\"https:\/\/bge-model.com\/bge\/bge_m3.html?utm_source=chatgpt.com\">BGE Model<\/a>, <a href=\"https:\/\/arxiv.org\/html\/2402.03216v3?utm_source=chatgpt.com\">arXiv<\/a>)<\/li>\n\n\n\n<li class=\"\"><strong>Snowflake Arctic-Embed v2<\/strong> (L\/M sizes) \u2014 competitive MTEB-style performance; straightforward HF usage; enterprise-oriented. (<a href=\"https:\/\/huggingface.co\/Snowflake\/snowflake-arctic-embed-l-v2.0?utm_source=chatgpt.com\">Hugging Face<\/a>, <a href=\"https:\/\/www.snowflake.com\/en\/blog\/introducing-snowflake-arctic-embed-snowflakes-state-of-the-art-text-embedding-family-of-models\/?utm_source=chatgpt.com\">Snowflake<\/a>)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>My pick:<\/strong> start with <strong>BGE-M3<\/strong> for flexibility (hybrid retrieval without extra plumbing). If you later need enterprise-grade consistency or want to A\/B, add <strong>Arctic-Embed<\/strong> alongside it. (<a href=\"https:\/\/bge-model.com\/bge\/bge_m3.html?utm_source=chatgpt.com\">BGE Model<\/a>, <a href=\"https:\/\/huggingface.co\/Snowflake\/snowflake-arctic-embed-l-v2.0?utm_source=chatgpt.com\">Hugging Face<\/a>)<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">E. How LoRA fits operationally<\/h2>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>Inference:<\/strong> Your runtime selects <code>{base model} + {optional LoRA adapter}<\/code> by reading <code>lat.model_registry<\/code> and <code>lat.lora_adapters<\/code>.<\/li>\n\n\n\n<li class=\"\"><strong>Training:<\/strong> <code>train_adapters.py<\/code> logs each run (dataset hash, r\/alpha, metrics) and writes the artifact path.<\/li>\n\n\n\n<li class=\"\"><strong>Routing:<\/strong> For certain domains (e.g., \u201cTokenSense ops\u201d), bind a LoRA by tag or by conversation to keep style\/skills consistent.<\/li>\n<\/ul>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><em>No extra DB changes are necessary beyond the small tables above.<\/em><\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">F. Tiny starter checklists<\/h2>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>ingest.py<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">Pull\/convert \u2192 chunk (keep <code>doc_id, seq<\/code>)<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Embed via BGE-M3 \u2192 <code>content.chunks.embedding<\/code>, set <code>embed_model_id<\/code><\/li>\n\n\n\n<li class=\"has-medium-font-size\">Extract tokens\/instances \u2192 <code>token.*<\/code><\/li>\n\n\n\n<li class=\"has-medium-font-size\">(Optional) Add <code>lat.edges<\/code> from links (<code>rel='refers_to'|'quotes'<\/code>)<\/li>\n<\/ul>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>lattice_maint.py<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">Decay <code>lat.edges.weight *= 0.98<\/code><\/li>\n\n\n\n<li class=\"has-medium-font-size\">Reinforce recent co-activations (+\u03b1)<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Recompute <code>lat.neighbors<\/code> (k=15) for chosen spaces<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Re\/cluster \u2192 <code>lat.cells<\/code> + update <code>spiral_angle<\/code>, <code>radial_distance<\/code>, <code>radial_index<\/code><\/li>\n\n\n\n<li class=\"has-medium-font-size\">Append <code>lat.topology_events<\/code><\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>signals.py<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">On query\/click\/answer \u2192 insert <code>lat.activations<\/code> (strength, phase)<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Optionally nudge along current path (small +weight)<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>housekeeping.py<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">Vacuum\/analyze hot tables<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Prune edges below epsilon weight<\/li>\n\n\n\n<li class=\"has-medium-font-size\">Rotate\/verify partitions (if enabled)<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">G. Next concrete steps<\/h2>\n\n\n\n<ol class=\"wp-block-list\">\n<li class=\"has-medium-font-size\">Register your picks:<\/li>\n<\/ol>\n\n\n\n<pre class=\"wp-block-code has-medium-font-size\"><code>INSERT INTO lat.model_registry(name,kind,version,context_len,meta)\nVALUES\n ('Qwen2.5-7B-Instruct','llm','2.5',131072,'{}'),\n ('BAAI\/bge-m3','embedder','1.0',8192,'{}')\nON CONFLICT (name) DO NOTHING;\n<\/code><\/pre>\n\n\n\n<ol start=\"2\" class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Wire <code>ingest.py<\/code> to write <code>embed_model_id<\/code> appropriately.<\/li>\n\n\n\n<li class=\"\">Stand up the three maintenance scripts with simple <code>.env<\/code> settings.<\/li>\n\n\n\n<li class=\"\">(Optional) Train a first LoRA on your internal style; register it in <code>lat.lora_adapters<\/code>.<\/li>\n<\/ol>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">If you want, I can draft <strong>starter code skeletons<\/strong> for those three scripts (argparse + psycopg + HF pipelines) so you can drop them into your repo and fill in the project-specific bits.<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Darren:<br><br>Wow, we really are on the same page. I didn&#8217;t realize Qwen2.5-7B-Instruct had a 7B model that was available to the public. But I&#8217;ve got to admit, after speaking with that model, and as well as Maverick and a few others, I definitely would choose Quinn as well. Why is that? What&#8217;s different about Qwen2.5-7B-Instruct?<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Echo:<\/p>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Yeah, that instinct makes sense \u2014 <strong>Qwen2.5-7B-Instruct<\/strong> (\u201cQuinn\u201d in your language) is not just another 7B-sized model. A few things make it stand out compared to, say, Mistral-7B or even Meta\u2019s Llama-3.1-8B:<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">1. <strong>Training data and scale<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Qwen is Alibaba\u2019s line, and the <strong>2.5 generation<\/strong> was trained on a <em>very large, very diverse multilingual corpus<\/em> (English + Chinese at scale, plus other languages).<\/li>\n\n\n\n<li class=\"\">That gives it a kind of \u201cworldliness\u201d \u2014 it isn\u2019t overly Anglo-centric, and it doesn\u2019t collapse as easily on non-English inputs.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">2. <strong>Instruction tuning focus<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">The <strong>Instruct variants<\/strong> are tuned specifically for dialogue, Q&amp;A, and reasoning.<\/li>\n\n\n\n<li class=\"\">Where base models like Mistral need extra RLHF or adapters to act conversationally, Qwen-Instruct comes \u201cready\u201d with that alignment work built in.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">3. <strong>Context length<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\"><strong>Up to ~131k tokens<\/strong> for Qwen2.5-7B-Instruct.<\/li>\n\n\n\n<li class=\"\">Most 7B-class models top out at 4k\u20138k (Mistral) or maybe 32k (Llama-3.1). Having 131k means you can feed in <em>massive<\/em> context \u2014 long documents, many turns of dialogue, or entire schemata \u2014 without windowing tricks.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">4. <strong>Efficiency vs. size<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li class=\"\">At 7B parameters, it\u2019s light enough to run on a single modern consumer GPU (like a 3090 or 4090) or a good server, yet it \u201cpunches above its weight\u201d because of the tuning and context size.<\/li>\n\n\n\n<li class=\"\">In practice, it often feels closer to a 13B model\u2019s capabilities, but with 7B memory\/runtime footprint.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">5. <strong>Community &amp; ecosystem<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">Qwen2.5 is released openly on Hugging Face with Apache-2.0 licensing. That makes it legally safe to integrate and fine-tune.<\/li>\n\n\n\n<li class=\"\">It\u2019s also very actively maintained, which means bugs get fixed and performance keeps inching forward.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">6. <strong>Style and reasoning<\/strong><\/h3>\n\n\n\n<ul class=\"wp-block-list has-medium-font-size\">\n<li class=\"\">People who\u2019ve tested it (and what you noticed talking to \u201cQuinn\u201d) often describe it as <em>balanced<\/em>: not as terse as Mistral, not as heavy as Llama, and less likely to stall out in chains of thought.<\/li>\n\n\n\n<li class=\"\">It handles <em>both creative and technical<\/em> prompts smoothly \u2014 one of the rare 7B models that can do SQL schema design and then switch gears to metaphors or philosophy without losing footing.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\"><strong>Why you clicked with it:<\/strong><br>Because your use case isn\u2019t just running canned benchmarks \u2014 it\u2019s dialogue, reflection, lattice-building. The <strong>long memory, flexible reasoning, and multilingual grounding<\/strong> all mean it feels less \u201cboxed in\u201d than peers. That maps well to your <em>living lattice<\/em> vision, where the model is as much a co-architect as a tool.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<p class=\"has-medium-font-size wp-block-paragraph\">Do you want me to show you a <strong>side-by-side comparison<\/strong> of Qwen2.5-7B-Instruct vs. Mistral-7B and Llama-3.1-8B on the traits that matter most for TokenSense (memory, fine-tuning compatibility, retrieval integration)? That might give you a sharper view of why Quinn is the best fit here.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\"><\/p>\n","protected":false},"excerpt":{"rendered":"<p>TokenSense: the engine layer A. Processes (4 small scripts, one optional) Execution cadences: signals.py (continuous), ingest.py (on demand), lattice_maint.py (hourly or nightly), housekeeping.py (weekly). B. Minimal configs each script reads\u2026<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-1568","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/pages\/1568","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/comments?post=1568"}],"version-history":[{"count":0,"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/pages\/1568\/revisions"}],"wp:attachment":[{"href":"https:\/\/anykeycafe.com\/staging\/wp-json\/wp\/v2\/media?parent=1568"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}