diff --git a/notebooks/integrations/README.md b/notebooks/integrations/README.md index e9b6f6d2..cbd21585 100644 --- a/notebooks/integrations/README.md +++ b/notebooks/integrations/README.md @@ -7,3 +7,4 @@ The following subfolders contain notebooks that demonstrate how to integrate pop - [LlamaIndex](./llama-index/README.md) - [Gemini](./gemini) - [Gemma](./gemma) + - [VoyageAI](./voyageai) diff --git a/notebooks/integrations/voyageai/voyageai-elasticsearch-inference-api.ipynb b/notebooks/integrations/voyageai/voyageai-elasticsearch-inference-api.ipynb new file mode 100644 index 00000000..fbf397df --- /dev/null +++ b/notebooks/integrations/voyageai/voyageai-elasticsearch-inference-api.ipynb @@ -0,0 +1,1193 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "68a13ecd", + "metadata": {}, + "source": [ + "# Tutorial: Retrieval Augmented Generation (RAG) with Voyage AI Embeddings/Reranking and OpenAI Chat via the elastic open inference API\n", + "\n", + "[![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/elastic/elasticsearch-labs/blob/main/notebooks/integrations/voyageai/updated-voyageai-elasticsearch-inference-api.ipynb)\n", + "\n", + "This tutorial shows you how to compute embeddings with\n", + "Voyage AI using the elastic open inference API and store them for efficient vector or hybrid\n", + "search in Elasticsearch. It also demonstrates reranking with Voyage AI and RAG using OpenAI. This tutorial uses the Python Elasticsearch client\n", + "to perform the operations.\n", + "\n", + "You'll learn how to:\n", + "* create inference endpoints to use the Voyage AI service for embeddings and reranking,\n", + "* create an inference endpoint to use the OpenAI service for chat,\n", + "* create index mappings to use semantic search\n", + "* rerank with retrievers using Voyage AI's rerank model\n", + "* implement a RAG system with OpenAI's Chat API.\n", + "\n", + "This tutorial is adapted from examples using other providers and discusses embeddings, reranking, and RAG.\n", + "\n", + "The tutorial uses the [josephrmartinez/recipe-dataset](https://github.com/josephrmartinez/recipe-dataset) data set.\n", + "\n", + "Refer to the official Elasticsearch and provider documentation for more details." + ] + }, + { + "cell_type": "markdown", + "id": "7f068b1b", + "metadata": {}, + "source": [ + "## 🧰 Requirements\n", + "\n", + "For this example, you will need:\n", + "- To know about [semantic-search](https://www.elastic.co/guide/en/elasticsearch/reference/current/semantic-search.html)\n", + "- An Elastic deployment:\n", + " - We'll be using [Elastic serverless](https://www.elastic.co/docs/current/serverless) for this example (available with a [free trial](https://cloud.elastic.co/registration?utm_source=github&utm_content=elasticsearch-labs-notebook))\n", + " \n", + "- A [Voyage AI account](https://www.voyageai.com/) with an API key.\n", + "- An [OpenAI account](https://openai.com/) with an API key.\n", + "\n", + "- Python 3.7+.\n", + "\n", + "- python elasticsearch client 8.15+" + ] + }, + { + "cell_type": "markdown", + "id": "aac02d37", + "metadata": {}, + "source": [ + "## Install and import required packages\n", + "\n", + "Install Elasticsearch and OpenAI:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "50940b4d", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: elasticsearch==8.15 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (8.15.0)\n", + "Requirement already satisfied: openai in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (1.66.3)\n", + "Requirement already satisfied: elastic-transport<9,>=8.13 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from elasticsearch==8.15) (8.17.1)\n", + "Requirement already satisfied: anyio<5,>=3.5.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (4.9.0)\n", + "Requirement already satisfied: distro<2,>=1.7.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (1.9.0)\n", + "Requirement already satisfied: httpx<1,>=0.23.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (0.28.1)\n", + "Requirement already satisfied: jiter<1,>=0.4.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (0.9.0)\n", + "Requirement already satisfied: pydantic<3,>=1.9.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (2.10.6)\n", + "Requirement already satisfied: sniffio in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (1.3.1)\n", + "Requirement already satisfied: tqdm>4 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (4.67.1)\n", + "Requirement already satisfied: typing-extensions<5,>=4.11 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from openai) (4.12.2)\n", + "Requirement already satisfied: exceptiongroup>=1.0.2 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from anyio<5,>=3.5.0->openai) (1.2.1)\n", + "Requirement already satisfied: idna>=2.8 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from anyio<5,>=3.5.0->openai) (3.10)\n", + "Requirement already satisfied: urllib3<3,>=1.26.2 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from elastic-transport<9,>=8.13->elasticsearch==8.15) (2.3.0)\n", + "Requirement already satisfied: certifi in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from elastic-transport<9,>=8.13->elasticsearch==8.15) (2025.1.31)\n", + "Requirement already satisfied: httpcore==1.* in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from httpx<1,>=0.23.0->openai) (1.0.7)\n", + "Requirement already satisfied: h11<0.15,>=0.13 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from httpcore==1.*->httpx<1,>=0.23.0->openai) (0.14.0)\n", + "Requirement already satisfied: annotated-types>=0.6.0 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from pydantic<3,>=1.9.0->openai) (0.7.0)\n", + "Requirement already satisfied: pydantic-core==2.27.2 in /Users/fodizoltan/.pyenv/versions/3.10.14/lib/python3.10/site-packages (from pydantic<3,>=1.9.0->openai) (2.27.2)\n" + ] + } + ], + "source": [ + "!pip install elasticsearch==8.15 openai" + ] + }, + { + "cell_type": "markdown", + "id": "3b24d95b", + "metadata": {}, + "source": [ + "Import the required packages:" + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "1a5a5eeb", + "metadata": {}, + "outputs": [], + "source": [ + "from elasticsearch import Elasticsearch, helpers\n", + "import csv\n", + "from io import StringIO\n", + "import requests\n", + "from getpass import getpass" + ] + }, + { + "cell_type": "markdown", + "id": "3d0dacc5", + "metadata": {}, + "source": [ + "## Create an Elasticsearch client" + ] + }, + { + "cell_type": "markdown", + "id": "74841401", + "metadata": {}, + "source": [ + "Now you can instantiate the Python Elasticsearch client.\n", + "\n", + "First provide your API key and Serverless Endpoint.\n", + "Then create a `client` object that instantiates an instance of the `Elasticsearch` class." + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "76394974", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Elastic serverless endpoint: ········\n", + "Elastic API key: ········\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{'name': 'runTask-0', 'cluster_name': 'runTask', 'cluster_uuid': 'b75VHj-LRXWGjpXDqmNITg', 'version': {'number': '9.1.0-SNAPSHOT', 'build_flavor': 'default', 'build_type': 'tar', 'build_hash': 'b1d5d7aa393d6eb079f6013922fb911efed59469', 'build_date': '2025-02-21T17:33:07.095237Z', 'build_snapshot': True, 'lucene_version': '10.1.0', 'minimum_wire_compatibility_version': '8.19.0', 'minimum_index_compatibility_version': '8.0.0'}, 'tagline': 'You Know, for Search'}\n" + ] + } + ], + "source": [ + "ELASTIC_SERVERLESS_ENDPOINT = getpass(\"Elastic serverless endpoint: \")\n", + "ELASTIC_API_KEY = getpass(\"Elastic API key: \")\n", + "\n", + "# Create the client instance\n", + "client = Elasticsearch(\n", + " # For local development\n", + " # hosts=[\"http://localhost:9200\"],\n", + " hosts=[ELASTIC_SERVERLESS_ENDPOINT],\n", + " api_key=ELASTIC_API_KEY,\n", + " request_timeout=120,\n", + " max_retries=10,\n", + " retry_on_timeout=True,\n", + ")\n", + "\n", + "# Confirm the client has connected\n", + "print(client.info())" + ] + }, + { + "cell_type": "markdown", + "id": "3d29b809", + "metadata": {}, + "source": [ + "## Create the text embedding inference endpoint (Voyage AI)\n", + "\n", + "Create the inference endpoint first. In this example, the inference endpoint \n", + "uses Voyage AI's `voyage-2` model." + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "ae8ae88c", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Voyage AI API key: ········\n" + ] + } + ], + "source": [ + "VOYAGE_API_KEY = getpass(\"Voyage AI API key: \")" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "6e524ce4", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "ObjectApiResponse({'inference_id': 'voyageai_embeddings', 'task_type': 'text_embedding', 'service': 'voyageai', 'service_settings': {'model_id': 'voyage-3-large', 'rate_limit': {'requests_per_minute': 2000}}, 'chunking_settings': {'strategy': 'sentence', 'max_chunk_size': 250, 'sentence_overlap': 1}})" + ] + }, + "execution_count": 4, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "client.inference.put(\n", + " task_type=\"text_embedding\",\n", + " inference_id=\"voyageai_embeddings\",\n", + " body={\n", + " \"service\": \"voyageai\",\n", + " \"service_settings\": {\n", + " \"api_key\": VOYAGE_API_KEY,\n", + " \"model_id\": \"voyage-3-large\",\n", + " \"dimensions\": 2048\n", + " },\n", + " },\n", + ")" + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "id": "openai-api-key-cell", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "OpenAI API key: ········\n" + ] + } + ], + "source": [ + "OPENAI_API_KEY = getpass(\"OpenAI API key: \")" + ] + }, + { + "cell_type": "markdown", + "id": "884e424d", + "metadata": {}, + "source": [ + "You can find your API keys in your Voyage AI and OpenAI dashboards." + ] + }, + { + "cell_type": "markdown", + "id": "178c32db", + "metadata": {}, + "source": [ + "## Create the index mapping\n", + "\n", + "Create the index mapping for the index that will contain the embeddings." + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "id": "35ab26b2", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "ObjectApiResponse({'acknowledged': True, 'shards_acknowledged': True, 'index': 'recipes-index-voyageai'})" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "client.indices.create(\n", + " index=\"recipes-index-voyageai\",\n", + " mappings={\n", + " \"properties\": {\n", + " \"infer_field\": {\n", + " \"type\": \"semantic_text\",\n", + " \"inference_id\": \"voyageai_embeddings\",\n", + " },\n", + " \"Title\": {\"type\": \"text\", \"copy_to\": \"infer_field\"},\n", + " }\n", + " },\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "9c5e1e7b", + "metadata": {}, + "source": [ + "## Prepare data and ingest documents\n", + "The tutorial uses the [josephrmartinez/recipe-dataset](https://github.com/josephrmartinez/recipe-dataset) data set." + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "id": "c71b8367", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "999 of 13000\n", + "(999, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '998', 'Title': \"Mr. Tingles' Punch\", 'Ingredients': \"['1 (750 ml) bottle light rum', '2 tablespoons Sichuan peppercorns', '25 ounces pomegranate juice', '8 1/2 ounces fresh lemon juice', '8 1/2 ounces 1:1 simple syrup (see note)', '4 ounces water', 'GARNISH: ice block, about 20 lemon wheels, 1/4 cup pomegranate seeds, and 1 tablespoon each black and pink peppercorns (optional)']\", 'Instructions': 'At least 24 hours before you plan to serve the punch, fill a Tupperware or cake pan with water and freeze to make an ice block that will fit in your serving vessel, or make several trays of large ice cubes.\\nMeanwhile, make the infused rum: Carefully spoon Sichuan peppercorns directly into the bottle of rum, using a funnel if desired. Reseal the bottle and let sit at room temperature for 24 hours, jostling occasionally to move the peppercorns around. Strain the infused rum through a fine-mesh strainer and discard peppercorns. If not serving immediately, return the infused rum to the bottle using a funnel and store in a cool, dark place for up to 3 months.\\nWhen ready to serve, combine entire bottle of infused rum with the measured pomegranate juice, lemon juice, simple syrup, and water in a large punch bowl. Stir well to mix and carefully add the ice block. Garnish punch bowl with lemon wheels, pomegranate seeds, and peppercorns if using. Ladle into ice-filled punch glasses and garnish each glass with a lemon wheel.', 'Image_Name': 'mr-tingles-pomegranate-rum-punch', 'Cleaned_Ingredients': \"['1 (750 ml) bottle light rum', '2 tablespoons Sichuan peppercorns', '25 ounces pomegranate juice', '8 1/2 ounces fresh lemon juice', '8 1/2 ounces 1:1 simple syrup (see note)', '4 ounces water', 'GARNISH: ice block', 'about 20 lemon wheels', '1/4 cup pomegranate seeds', 'and 1 tablespoon each black and pink peppercorns (optional)']\"}}\n", + "1999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '1998', 'Title': 'Red Posole with Pork', 'Ingredients': \"['3 pounds pork shoulder (Boston butt)', '1 large white onion, halved through root end, plus chopped for serving', '2 heads of garlic, halved crosswise', '1 bay leaf', '3 whole cloves', '10 guajillo chiles, ribs and seeds removed', '6 dried chiles de árbol, ribs and seeds removed', 'Kosher salt', '3 (15-ounce) cans white hominy, rinsed', 'Thinly sliced cabbage, thinly sliced radishes, dried oregano, and lime wedges (for serving)']\", 'Instructions': 'Place pork shoulder, onion halves, garlic, bay leaf, and cloves in a large pot. Pour in 14 cups water (pork should be submerged). Bring to a simmer and cook, skimming as needed and turning pork occasionally, until meat is cooked through and tender but not yet falling apart, 2 1/2–3 hours. Transfer pork to a plate; let cool slightly. Strain broth into a large bowl, then transfer back to pot. Slice pork into 1/2\" slices and add to broth.\\nMeanwhile, preheat oven to 350°F. Toast all the chiles on a rimmed baking sheet until brown (do not char) and starting to lightly puff in places, about 5 minutes. Bring 3 cups water to a boil in a medium saucepan; add chiles. Remove from heat and let chiles soak until softened, 10–12 minutes. Blend chiles and cooking liquid in a blender until smooth; season with salt.\\nAdd chile purée to pork and broth. Bring to a simmer, add hominy, and cook, skimming off fat from surface, until pork is so tender it’s nearly falling apart, 45–60 minutes; season with more salt.\\nDivide posole among bowls, top with onion, cabbage, radishes, and oregano. Serve with lime wedges.\\nPosole can be made 3 days ahead. Let cool; cover and chill.', 'Image_Name': 'red-posole-with-pork', 'Cleaned_Ingredients': \"['3 pounds pork shoulder (Boston butt)', '1 large white onion, halved through root end, plus chopped for serving', '2 heads of garlic, halved crosswise', '1 bay leaf', '3 whole cloves', '10 guajillo chiles, ribs and seeds removed', '6 dried chiles de árbol, ribs and seeds removed', 'Kosher salt', '3 (15-ounce) cans white hominy, rinsed', 'Thinly sliced cabbage', 'thinly sliced radishes', 'dried oregano', 'and lime wedges (for serving)']\"}}\n", + "2999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '2998', 'Title': 'Ramp and Walnut Pistou', 'Ingredients': \"['1/4 cup walnuts', '1 bunch ramps (about 6 ounces), trimmed', '1/2 cup olive oil', '1 tablespoon white wine vinegar', 'Kosher salt, freshly ground pepper']\", 'Instructions': 'Preheat oven to 350°F. Toast walnuts on a rimmed baking sheet, tossing once, until golden brown, 8–10 minutes. Let cool. Coarsely chop; place in a medium bowl.\\nHeat a dry medium cast-iron skillet over high. Add ramps and cook, turning occasionally, until bulbs and greens are evenly charred. Remove from skillet and let cool. Coarsely chop and add to bowl with walnuts. Add oil and vinegar and toss to coat; season with salt and pepper.\\nPistou (without vinegar) can be made 2 days ahead. Cover and chill. Add vinegar just before serving.', 'Image_Name': 'ramp-and-walnut-pistou', 'Cleaned_Ingredients': \"['1/4 cup walnuts', '1 bunch ramps (about 6 ounces), trimmed', '1/2 cup olive oil', '1 tablespoon white wine vinegar', 'Kosher salt', 'freshly ground pepper']\"}}\n", + "3999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '3998', 'Title': 'Best-Ever Grilled Cheese', 'Ingredients': \"['2 slices Pullman or other white bread', 'A dab of butter', 'Mayonnaise', 'A few slices American cheese or cheddar', 'Pepper']\", 'Instructions': \"Place 2 slices Pullman or other white bread on a cutting board and spread mayonnaise on top side of each; this is key to a golden, delectable crunch. Heat a small skillet (nonstick, ideally) over medium. Slide in a dab of butter. When it melts, place 1 slice of bread, mayonnaise side down, in skillet; top with a few slices American cheese or cheddar; season with pepper. Top with second slice of bread, mayonnaise side up. When underside is golden brown, about 4 minutes, turn sandwich and add another dab of butter to skillet. Press down on sandwich to encourage even browning and to help melt cheese—be gentle, don't smash it. Cook until second side is golden brown and cheese is melted. Eat immediately, preferably with Campbell's Tomato Soup.\", 'Image_Name': 'best-ever-grilled-cheese-51264120', 'Cleaned_Ingredients': \"['2 slices Pullman or other white bread', 'A dab of butter', 'Mayonnaise', 'A few slices American cheese or cheddar', 'Pepper']\"}}\n", + "4999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '4998', 'Title': 'Spicy Jalapeño Sweet Potato Fries', 'Ingredients': \"['3 medium peeled sweet potatoes', '1 tablespoon cornstarch', '1/2 teaspoon jalapeño salt', 'Vegetable oil cooking spray', '1 jalapeño']\", 'Instructions': 'Heat oven to 425°. Cut 3 medium peeled sweet potatoes into 1/4-inch-thick fries. In a bowl, combine 1 tablespoon cornstarch and 1/2 teaspoon jalapeño salt; add fries and toss. Arrange fries on two baking sheets coated with vegetable oil cooking spray; coat with more cooking spray. Bake until fries begin to brown, 10 minutes. Remove from oven and flip; spritz with cooking spray and sprinkle with 1 sliced jalapeño. Bake until golden, 8 minutes.', 'Image_Name': 'spicy-jalapeno-sweet-potato-fries-51206450', 'Cleaned_Ingredients': \"['3 medium peeled sweet potatoes', '1 tablespoon cornstarch', '1/2 teaspoon jalapeño salt', 'Vegetable oil cooking spray', '1 jalapeño']\"}}\n", + "5999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '5998', 'Title': 'Pumpkin Turnovers', 'Ingredients': \"['4 to 5 pound pumpkin (orange or striped)', '2 cups water', '3 cinnamon sticks', '5 whole cloves', '16 ounces piloncillo or 2 cups packed dark brown sugar', '3 cups all-purpose flour', '2 teaspoons baking powder', '1/2 teaspoon salt', '1/2 cup shortening', '2 eggs', '1/2 cup milk', '2 tablespoons granulated sugar', '1 teaspoon cinnamon (optional)', 'Canned evaporated milk or egg white', 'Cinnamon-sugar mixture (1 teaspoon ground cinnamon mixed with 1/4 cup sugar)']\", 'Instructions': 'Rinse off the exterior of the pumpkin in cool or warm water, no soap. Using a serrated knife cut the pumpkin in half and scoop out the pumpkin seeds. Scrape out the stringy layer (pulp) with a spoon. Discard seeds and pulp. Cut pumpkin into 3- to 4-inch slices leaving the skin on.\\nIn a steamer or large pot, steam the pumpkin in the 2 cups of water, making sure to keep the lid on tight, for 20 to 40 minutes, or until pumpkin is tender. The pumpkin is ready when your fork slides easily into the flesh.\\nLet the pumpkin cool. Once cooled, scoop the pumpkin flesh off the skins and into a mixing bowl. Discard the skins. Mash the steamed pumpkin with a potato masher and strain the liquid into a bowl. Reserve the liquid and set pumpkin puree aside.\\nIn the same large pot, put the reserved liquid from the pumpkin (about 1/2 to 2/3 cup) and add cinnamon sticks and cloves. Bring liquid to a boil and then remove from the heat. Replace lid and let steep for 30 minutes.\\nRemove cinnamon and cloves and add pumpkin puree to the liquid. Add the piloncillo and over medium-low heat let it melt into the pumpkin puree, stirring occasionally so it will not burn or stick to the pot. The pumpkin puree will turn a dark color with the piloncillo making it sweeter.\\nOnce the piloncillo has melted, lower the heat to low and let simmer uncovered until all the water evaporates. Remove from heat and allow pumpkin puree to cool down before refrigerating, about 15 minutes.\\nTo help puree set, place in the refrigerator for 3 hours or overnight. If some liquid separates, remove it with a spoon before using so the filling is not watery.\\nYou can make the empanada dough after your filling has chilled.\\nMix the first 3 dry ingredients. Cut in the shortening. It is best to use your hands. Add the eggs, milk, sugar, and cinnamon. Continue to work in with your hands until you have a soft dough. Split the dough in half, wrap in plastic wrap, and refrigerate for about 20 to 30 minutes.\\nPreheat the oven to 350 degrees F.\\nTake out half the dough and split it into 12 equal balls of dough.\\nOn a floured surface, roll out the dough balls into small round circles. Place a small dollop of pumpkin filling on one half of each of the dough circles. Wet the bottom edge of the circles with water to help seal the two halves. Fold over the dough to cover filling and seal off the edges with a fork by pressing down along the edges. This also makes for a pretty pattern when baked. Repeat with remaining dough and filling.\\nBrush each empanada with some canned evaporated milk or egg whites, sprinkle with cinnamon and sugar mixture. Puncture the top of each empanada with a fork to allow steam to escape while baking.\\nSpray a large cookie sheet with cooking spray, place the empanadas on the cookie sheet and bake for 15 to 20 minutes on middle rack in the oven. If after 15 minutes you notice the bottoms of the empanadas starting to brown, move the cookie sheet to the top rack and continue to bake for the last 5 minutes, until golden brown.\\nEnjoy the empanadas warm or at room temperature. Refrigerate baked empanadas for a few days. Reheat in a toaster oven or bake at 350 degrees for 8 minutes.', 'Image_Name': 'pumpkin-turnovers-51119020', 'Cleaned_Ingredients': \"['4 to 5 pound pumpkin (orange or striped)', '2 cups water', '3 cinnamon sticks', '5 whole cloves', '16 ounces piloncillo or 2 cups packed dark brown sugar', '3 cups all-purpose flour', '2 teaspoons baking powder', '1/2 teaspoon salt', '1/2 cup shortening', '2 eggs', '1/2 cup milk', '2 tablespoons granulated sugar', '1 teaspoon cinnamon (optional)', 'Canned evaporated milk or egg white', 'Cinnamon-sugar mixture (1 teaspoon ground cinnamon mixed with 1/4 cup sugar)']\"}}\n", + "6999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '6998', 'Title': 'Classic Coleslaw Dressing', 'Ingredients': \"['2/3 cup mayonnaise', '1/4 cup minced onion', '3 tablespoons minced dill pickle', '2 tablespoons pickle brine', '2 tablespoons distilled white vinegar', '1 tablespoon prepared white horseradish', '1 tablespoon sugar', '1 teaspoon kosher salt', '1/2 teaspoon celery seeds', '1/2 teaspoon freshly ground black pepper']\", 'Instructions': 'Whisk all ingredients in a medium bowl to blend. DO AHEAD: Can be made 1 day ahead. Keep chilled.', 'Image_Name': 'classic-coleslaw-dressing-366414', 'Cleaned_Ingredients': \"['2/3 cup mayonnaise', '1/4 cup minced onion', '3 tablespoons minced dill pickle', '2 tablespoons pickle brine', '2 tablespoons distilled white vinegar', '1 tablespoon prepared white horseradish', '1 tablespoon sugar', '1 teaspoon kosher salt', '1/2 teaspoon celery seeds', '1/2 teaspoon freshly ground black pepper']\"}}\n", + "7999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '7998', 'Title': 'Buttermilk Spice Cake with Pear Compote and Crème Fraîche', 'Ingredients': \"['2 tablespoons sugar', '1 tablespoon fresh lime juice', 'Large pinch of salt', '3 Bosc pears (about 1 1/2 pounds total), peeled, quartered, cored, cut into 1/2-inch cubes', '1 cup plus 1 tablespoon all purpose flour', '1/4 cup cornstarch', '1/2 teaspoon salt', '1/2 teaspoon (scant) baking powder', '1/4 teaspoon baking soda', '1/8 teaspoon ground allspice', '1/8 teaspoon ground ginger', '1/8 teaspoon ground black pepper', '1/8 teaspoon ground whole star anise*', '1/2 cup (1 stick) unsalted butter, room temperature', '3/4 cup sugar', '2 large eggs', '1 3-inch piece vanilla bean, split lengthwise', '1/4 teaspoon finely grated lime peel', '3/4 cup buttermilk', 'Powdered sugar', '1 1/2 cups crème fraîche**']\", 'Instructions': \"Mix sugar, lime juice, and salt in heavy large saucepan. Add pears and toss gently to coat. Cover and cook over medium-low heat until pears are just tender, stirring occasionally, 10 to 12 minutes. Transfer mixture to bowl. DO AHEAD: Can be made 1 day ahead. Chill until cold, then cover and keep chilled.\\nPreheat oven to 350°F. Butter and flour 9-inch-diameter cake pan with 2-inch-high sides; line pan with round of parchment paper. Sift first 9 ingredients into medium bowl. Using electric mixer, beat butter in large bowl until fluffy. Gradually add sugar, beating until smooth. Beat in eggs 1 at a time, beating to blend between additions. Scrape in seeds from vanilla bean and add lime peel; beat to blend. Beat in flour mixture in 4 additions alternately with buttermilk in 3 additions, scraping down bowl occasionally. Transfer batter to prepared pan.\\nBake cake until beginning to brown on top and tester inserted into center comes out clean, about 30 minutes. Cool cake in pan on cooling rack. DO AHEAD: Cake can be made 1 day ahead. Cover and let stand at room temperature.\\nCut around pan sides to loosen cake. Turn cake out onto rack; peel off parchment and turn right side up onto platter. Sift powdered sugar over. Cut into wedges. Serve with pear compote and dollop of crème fraîche.\\nA brown, star-shaped seedpod that's available in the spice section of some supermarkets and at specialty foods stores and Asian markets.\\n** Available at most supermarkets and at specialty foods stores.\", 'Image_Name': 'buttermilk-spice-cake-with-pear-compote-and-creme-fraiche-357493', 'Cleaned_Ingredients': \"['2 tablespoons sugar', '1 tablespoon fresh lime juice', 'Large pinch of salt', '3 Bosc pears (about 1 1/2 pounds total), peeled, quartered, cored, cut into 1/2-inch cubes', '1 cup plus 1 tablespoon all purpose flour', '1/4 cup cornstarch', '1/2 teaspoon salt', '1/2 teaspoon (scant) baking powder', '1/4 teaspoon baking soda', '1/8 teaspoon ground allspice', '1/8 teaspoon ground ginger', '1/8 teaspoon ground black pepper', '1/8 teaspoon ground whole star anise*', '1/2 cup (1 stick) unsalted butter, room temperature', '3/4 cup sugar', '2 large eggs', '1 3-inch piece vanilla bean, split lengthwise', '1/4 teaspoon finely grated lime peel', '3/4 cup buttermilk', 'Powdered sugar', '1 1/2 cups crème fraîche**']\"}}\n", + "8999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '8998', 'Title': 'Five-Spice Roast Chicken', 'Ingredients': \"['4 garlic cloves, pressed', '2 tablespoons coarse kosher salt', '2 tablespoons extra-virgin olive oil', '1 teaspoon Chinese five-spice powder*', '1 cut-up chicken (8 pieces; about 3 1/2 pounds)', '1 large onion, peeled, cut into 16 wedges']\", 'Instructions': 'Combine garlic, salt, olive oil, and Chinese five-spice powder in large bowl. Add chicken pieces; turn to coat. Cover and chill at least 1 hour or overnight. Preheat oven to 425°F. Arrange onion wedges in 13x9x2-inch roasting pan.\\nArrange chicken, skin side up, atop onions. Roast until chicken is cooked through, basting occasionally with pan juices, about 50 minutes. Remove chicken from oven and let rest 10 minutes. Arrange chicken and onions on platter and serve.', 'Image_Name': 'five-spice-roast-chicken-352011', 'Cleaned_Ingredients': \"['4 garlic cloves, pressed', '2 tablespoons coarse kosher salt', '2 tablespoons extra-virgin olive oil', '1 teaspoon Chinese five-spice powder*', '1 cut-up chicken (8 pieces; about 3 1/2 pounds)', '1 large onion', 'peeled', 'cut into 16 wedges']\"}}\n", + "9999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '9998', 'Title': 'Capellini with Shrimp and Creamy Tomato Sauce', 'Ingredients': \"['3 tablespoons olive oil', '1 pound peeled large shrimp', '3 large garlic cloves, forced through a garlic press', '1/4 teaspoon dried oregano', '1/2 cup sweet (red) vermouth', '1 (14- to 15-ounce) can diced tomatoes, drained', '3/4 cup heavy cream', '1/2 teaspoon fresh lemon juice', '1/2 pound capellini']\", 'Instructions': 'Heat oil in a 12-inch heavy skillet over medium-high heat until it shimmers, then cook shrimp and garlic with oregano, 1/2 teaspoon salt, and 1/4 teaspoon pepper, turning once, until golden, about 2 minutes total. Stir in vermouth and tomatoes, scraping up any brown bits from bottom of skillet. Add cream and briskly simmer until sauce has thickened slightly, about 1 minute. Stir in lemon juice.\\nMeanwhile, cook capellini in a pasta pot of boiling salted water (3 tablespoons salt for 6 quarts water) until al dente. Reserve 1 cup pasta-cooking water, then drain pasta.\\nServe immediately, topped with shrimp and sauce. Thin with some of reserved water if necessary.', 'Image_Name': 'capellini-with-shrimp-and-creamy-tomato-sauce-241995', 'Cleaned_Ingredients': \"['3 tablespoons olive oil', '1 pound peeled large shrimp', '3 large garlic cloves, forced through a garlic press', '1/4 teaspoon dried oregano', '1/2 cup sweet (red) vermouth', '1 (14- to 15-ounce) can diced tomatoes, drained', '3/4 cup heavy cream', '1/2 teaspoon fresh lemon juice', '1/2 pound capellini']\"}}\n", + "10999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '10998', 'Title': 'Chocolate-Honey Dome Cake with Chocolate-Honey Glaze', 'Ingredients': \"['Nonstick vegetable oil spray', '2 1/4 cups all purpose flour', '1/4 cup unsweetened cocoa powder', '1 teaspoon baking soda', '1/2 teaspoon salt', '3/4 cup sugar', '1/2 cup honey', '2 large eggs', '1 teaspoon vanilla extract', '3/4 cup vegetable oil', '1 1/2 cups buttermilk', '1 tablespoon water', '1 teaspoon unflavored gelatin', '1 1/4 cups heavy whipping cream, divided', '1/2 cup sour cream', '3 tablespoons honey', '1/2 cup finely grated bittersweet chocolate (about 1 ounce)', '10 ounces bittersweet chocolate, chopped', '1 cup heavy whipping cream', '1/2 cup honey', '1 cup pecans, toasted, chopped']\", 'Instructions': 'Preheat oven to 350°F. Spray 9-inch-diameter cake pan with 2-inch-high sides with nonstick spray. Line bottom with parchment round. Whisk flour, cocoa powder, baking soda, and salt in medium bowl. Whisk sugar, honey, eggs, and vanilla in large bowl to blend. Whisk in oil, then half of dry ingredients. Whisk in buttermilk, then remaining dry ingredients. Pour into prepared pan. Bake cake until tester inserted into center comes out clean, about 55 minutes (cake will dome). Cool 10 minutes. Invert onto rack; remove parchment. Turn over; cool cake completely on rack. DO AHEAD Can be made 1 day ahead. Store airtight at room temperature.\\nCut cake in half horizontally. Place bottom half of cake on cardboard round, tart pan bottom, or springform pan bottom.\\nPlace 1 tablespoon water in small bowl. Sprinkle gelatin over. Let stand 10 minutes to soften gelatin. Bring 1/4 cup cream to boil in small saucepan. Remove from heat and stir in gelatin mixture. Cool to room temperature, stirring often, about 5 minutes.\\nMeanwhile, using electric mixer, beat remaining 1 cup cream, sour cream, and honey in medium bowl until peaks form. Beat gelatin mixture, then grated chocolate into whipped cream mixture. Immediately spread filling over bottom half of cake, leaving 1/2-inch border at edges. Place top half of cake atop filling, pressing gently to spread filling just to edge of cake. Cover and chill cake overnight.\\nPlace chocolate in large measuring cup. Bring cream and honey to boil in heavy small saucepan, stirring to blend. Pour hot cream mixture over chocolate in cup; stir until smooth. Let cool 5 minutes.\\nPlace rack on rimmed baking sheet. Transfer cake to rack. Pour glaze over cake, allowing glaze to drip down sides. Use spatula to spread glaze over sides. Pat nuts onto sides of cake. Chill 1 hour to set glaze. DO AHEAD Can be made 1 day ahead. Keep refrigerated.', 'Image_Name': 'chocolate-honey-dome-cake-with-chocolate-honey-glaze-237916', 'Cleaned_Ingredients': \"['Nonstick vegetable oil spray', '2 1/4 cups all purpose flour', '1/4 cup unsweetened cocoa powder', '1 teaspoon baking soda', '1/2 teaspoon salt', '3/4 cup sugar', '1/2 cup honey', '2 large eggs', '1 teaspoon vanilla extract', '3/4 cup vegetable oil', '1 1/2 cups buttermilk', '1 tablespoon water', '1 teaspoon unflavored gelatin', '1 1/4 cups heavy whipping cream, divided', '1/2 cup sour cream', '3 tablespoons honey', '1/2 cup finely grated bittersweet chocolate (about 1 ounce)', '10 ounces bittersweet chocolate, chopped', '1 cup heavy whipping cream', '1/2 cup honey', '1 cup pecans', 'toasted', 'chopped']\"}}\n", + "11999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '11998', 'Title': 'Pappardelle with Pancetta, Broccoli Rabe, and Pine Nuts', 'Ingredients': \"['4 tablespoons extra-virgin olive oil, divided', '3 garlic cloves, peeled, flattened', '1 medium onion, chopped', '3 ounces thinly sliced pancetta, chopped', '1 teaspoon fennel seeds, crushed', '1/4 teaspoon dried crushed red pepper', '1 large bunch broccoli rabe (also called rapini; generous 1 pound), stems sliced 1/2 inch thick, tops cut into 2-inch pieces', '1 cup water', '1 8.8-ounce package dried pappardelle pasta', '1 cup freshly grated Pecorino Romano cheese, plus additional for serving', '1/2 cup pine nuts, toasted']\", 'Instructions': 'Heat 2 tablespoons oil in heavy large skillet over medium-high heat. Add garlic and cook until golden brown, stirring frequently, about 3 minutes. Discard garlic. Add onion, pancetta, and fennel seeds to skillet; sauté until onion is tender and pancetta begins to brown, about 8 minutes. Add dried crushed red pepper, then broccoli rabe stems and cook 4 minutes to soften slightly, stirring occasionally. Stir in broccoli rabe tops, sprinkle with salt, and add 1 cup water. Cover and cook until stems and tops are tender, about 5 minutes. Season to taste with salt and pepper.\\nMeanwhile, cook pasta in large pot of boiling salted water until just tender but still firm to bite. Drain pasta, reserving 1 cup cooking liquid.\\nAdd pasta to skillet with broccoli rabe and stir over low heat to combine, adding reserved cooking liquid by tablespoonfuls to moisten if necessary. Stir in remaining 2 tablespoons oil and 1 cup cheese. Season to taste with salt and generous amount of pepper. Transfer to shallow bowl. Sprinkle with pine nuts and serve, passing additional cheese separately.', 'Image_Name': 'pappardelle-with-pancetta-broccoli-rabe-and-pine-nuts-234397', 'Cleaned_Ingredients': \"['4 tablespoons extra-virgin olive oil, divided', '3 garlic cloves, peeled, flattened', '1 medium onion, chopped', '3 ounces thinly sliced pancetta, chopped', '1 teaspoon fennel seeds, crushed', '1/4 teaspoon dried crushed red pepper', '1 large bunch broccoli rabe (also called rapini; generous 1 pound), stems sliced 1/2 inch thick, tops cut into 2-inch pieces', '1 cup water', '1 8.8-ounce package dried pappardelle pasta', '1 cup freshly grated Pecorino Romano cheese, plus additional for serving', '1/2 cup pine nuts', 'toasted']\"}}\n", + "12999 of 13000\n", + "(1000, [])\n", + "last doc: {'_index': 'recipes-index', '_source': {'ID': '12998', 'Title': 'Pear, Pancetta, and Walnut Salad', 'Ingredients': \"['3/4 teaspoon whole coriander seeds', '1 tablespoon fresh lemon juice', '1/2 small shallot, minced', '3 tablespoons extra-virgin olive oil', '1 1/2 ounces thinly sliced pancetta, chopped', '1 large head of butter lettuce, torn into bite-size pieces (about 8 cups)', '1 large red Anjou pear, unpeeled, quartered, cored, sliced', '1/4 cup coarsely chopped toasted walnuts']\", 'Instructions': 'Toast coriander seeds in small skillet over medium heat until aromatic, about 2 minutes. Transfer to mortar and grind coarsely with pestle. Transfer to small bowl. Mix in lemon juice and shallot. Gradually whisk in olive oil. Season dressing to taste with salt and pepper.\\nHeat heavy medium skillet over medium-high heat. Add pancetta and sauté until crisp, about 4 minutes. Transfer to paper-towel-lined plate. Place lettuce in large bowl. (Dressing, pancetta, and lettuce can be prepared 2 hours ahead. Let dressing and pancetta stand at room temperature. Cover lettuce with damp kitchen towel and refrigerate.)\\nToss lettuce with dressing. Top with pear slices, then walnuts and pancetta.', 'Image_Name': 'pear-pancetta-and-walnut-salad-230921', 'Cleaned_Ingredients': \"['3/4 teaspoon whole coriander seeds', '1 tablespoon fresh lemon juice', '1/2 small shallot, minced', '3 tablespoons extra-virgin olive oil', '1 1/2 ounces thinly sliced pancetta, chopped', '1 large head of butter lettuce, torn into bite-size pieces (about 8 cups)', '1 large red Anjou pear, unpeeled, quartered, cored, sliced', '1/4 cup coarsely chopped toasted walnuts']\"}}\n", + "Data ingestion completed, text embeddings generated!\n" + ] + } + ], + "source": [ + "url = \"https://raw.githubusercontent.com/josephrmartinez/recipe-dataset/main/13k-recipes.csv\"\n", + "\n", + "# Fetch the CSV data from the URL\n", + "response = requests.get(url)\n", + "response.raise_for_status() # Ensure we notice bad responses\n", + "\n", + "file = StringIO(\n", + " \"ID\" + response.text\n", + ") # cast the csv String to a file (the ID field name is missing for this dataset)\n", + "reader = csv.DictReader(file) # load the data as a dict\n", + "\n", + "\n", + "# Prepare the documents to be indexed\n", + "documents = []\n", + "for i, line in enumerate(reader):\n", + " if i % 1000 == 999:\n", + " print(i, \"of\", 13000)\n", + " print(helpers.bulk(client, documents)) # Use the bulk endpoint to index\n", + " print(\"last doc:\", documents[-1])\n", + " documents = []\n", + " documents.append(\n", + " {\n", + " \"_index\": \"recipes-index-voyageai\",\n", + " \"_source\": line,\n", + " }\n", + " )\n", + "\n", + "\n", + "print(\"Data ingestion completed, text embeddings generated!\")" + ] + }, + { + "cell_type": "markdown", + "id": "153ce2d5", + "metadata": {}, + "source": [ + "## Add the rerank inference endpoint (Voyage AI)\n", + "\n", + "To combine the results more effectively, use \n", + "Voyage AI's rerank model through the\n", + "inference API to provide a more precise semantic reranking of the results.\n", + "\n", + "Create an inference endpoint with your Voyage AI API key and the used model name as\n", + "the `model_id` (e.g., `rerank-2`)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "id": "886c4d15", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "ObjectApiResponse({'inference_id': 'voyageai_rerank', 'task_type': 'rerank', 'service': 'voyageai', 'service_settings': {'model_id': 'rerank-2', 'rate_limit': {'requests_per_minute': 2000}}, 'task_settings': {'top_k': 100, 'return_documents': True}})" + ] + }, + "execution_count": 8, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "client.inference.put(\n", + " task_type=\"rerank\",\n", + " inference_id=\"voyageai_rerank\",\n", + " body={\n", + " \"service\": \"voyageai\",\n", + " \"service_settings\": {\n", + " \"api_key\": VOYAGE_API_KEY,\n", + " \"model_id\": \"rerank-2\",\n", + " },\n", + " \"task_settings\": {\"top_k\": 100, \"return_documents\": True},\n", + " },\n", + ")" + ] + }, + { + "cell_type": "markdown", + "id": "610035af", + "metadata": {}, + "source": [ + "## Semantic search with reranking\n", + "\n", + "Let's start by defining our query" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "id": "ab735ef0", + "metadata": {}, + "outputs": [], + "source": [ + "def semantic_search_with_reranking(query):\n", + " return client.search(\n", + " index=\"recipes-index-voyageai\",\n", + " retriever={\n", + " \"text_similarity_reranker\": {\n", + " \"retriever\": {\n", + " \"standard\": {\n", + " \"query\": {\"semantic\": {\"field\": \"infer_field\", \"query\": query}}\n", + " }\n", + " },\n", + " \"field\": \"Title\",\n", + " \"inference_id\": \"voyageai_rerank\",\n", + " \"inference_text\": query,\n", + " \"rank_window_size\": 100,\n", + " }\n", + " },\n", + " )" + ] + }, + { + "cell_type": "code", + "execution_count": 10, + "id": "e32dd994", + "metadata": {}, + "outputs": [], + "source": [ + "noodles = semantic_search_with_reranking(\"best easy spicy noodles\")" + ] + }, + { + "cell_type": "markdown", + "id": "588935b4", + "metadata": {}, + "source": [ + "## Extract the Data" + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "id": "ba8cdb9b", + "metadata": {}, + "outputs": [], + "source": [ + "def pretty_print_recipe(recipes):\n", + " hits = recipes[\"hits\"][\"hits\"]\n", + " if len(hits) > 0:\n", + " for hit in hits:\n", + " source = hit[\"_source\"]\n", + " print(\n", + " f\"Title: {source['Title']};\\t Ingredients: {source['Ingredients']} ;\\t Instructions: {source['Instructions']}\\n\"\n", + " )\n", + " else:\n", + " print(\"No recipes found.\")" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "id": "17111111", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Title: Liu Shaokun's Spicy Buckwheat Noodles with Chicken;\t Ingredients: ['3 cups chicken broth or water (24 fl oz)', '1 lb skinless boneless chicken breast halves (2)', '1/2 lb dried buckwheat noodles such as soba noodles', '1 tablespoon peanut oil', '3 tablespoons Chinese black vinegar', '1 tablespoon light soy sauce', '1 tablespoon dark soy sauce', '1 tablespoon chile oil containing sesame oil (such as Chiu Chow Chili Oil from Lee Kum Kee) plus some of sediment from jar', '2 garlic cloves, minced', '1/2 teaspoon sugar', '1/8 teaspoon salt', '3 scallions (green parts only), thinly sliced', '2 tablespoons soy nuts (roasted salted soybeans)'] ;\t Instructions: Bring broth to a simmer in a 3-quart saucepan, then add chicken and simmer, uncovered, 6 minutes. Remove pan from heat and cover, then let stand until chicken is cooked through, about 15 minutes. Transfer chicken to a plate and cool at least 10 minutes, reserving broth for another use.\n", + "While chicken is poaching, bring 4 quarts salted cold water to a boil in a 5- to 6-quart saucepan over moderately high heat. Stir in noodles, then 1/2 cup cold water. When water returns to a boil, add another 1/2 cup cold water and bring to a boil again, stirring, then repeat once more, or until noodles are just tender but still firm and chewy throughout.\n", + "Drain noodles in a colander and rinse well under cold water to cool, then drain well. Toss noodles with peanut oil in a large bowl.\n", + "Stir together vinegar, soy sauces, chile oil with sediment, garlic, sugar, and salt in another bowl until sugar is dissolved, then add to noodles and toss until coated.\n", + "Shred chicken with your fingers into 1/4-inch-wide strips and add to noodles, tossing to combine. Sprinkle with scallions and soy nuts.\n", + "\n", + "Title: Spicy Soba Noodles with Shiitakes and Cabbage;\t Ingredients: ['1/3 cup water', '1/3 cup soy sauce', '2 to 3 teaspoons Korean hot-pepper paste (sometimes labeled \"gochujang\")', '1 tablespoon packed brown sugar', '3 tablespoons sesame seeds', '1/4 cup vegetable oil', '2 tablespoons finely chopped peeled ginger', '1 tablespoon finely chopped garlic', '10 oz fresh shiitake mushrooms, stemmed and thinly sliced', '1 1/4 pound Napa cabbage, thinly sliced (8 cups)', '6 scallions, thinly sliced', '8 to 9 ounces soba (buckwheat noodles)', '1 cup frozen shelled edamame'] ;\t Instructions: Stir together all sauce ingredients until brown sugar is dissolved, then set aside.\n", + "Toast sesame seeds in a dry 12-inch heavy skillet (not nonstick) over medium heat, stirring, until pale golden, then transfer to a small bowl.\n", + "Heat oil in skillet over medium-high heat until it shimmers, then sauté ginger and garlic, stirring, until fragrant, about 30 seconds. Add shiitakes and sauté, stirring frequently, until tender and starting to brown, about 6 minutes. Reduce heat to medium, then add cabbage and most of scallions (reserve about a tablespoon for garnish) and cook, stirring occasionally, until cabbage is crisp-tender, about 6 minutes. Add sauce and simmer 2 minutes.\n", + "While cabbage is cooking, cook soba and edamame together in a pasta pot of boiling salted water (2 tablespoons salt for 6 quarts water) until noodles are just tender, about 6 minutes. Drain in a colander and rinse under cool water to stop cooking and remove excess starch, then drain well again. Transfer to a large bowl and toss with sesame seeds and vegetable mixture. Serve sprinkled with reserved scallions.\n", + "\n", + "Title: Sweet and Spicy Peanut Noodles;\t Ingredients: ['1 teaspoon sesame oil', '1 garlic clove, finely chopped', '2 teaspoons finely chopped ginger', '1/4 cup natural chunky peanut butter', '2 tablespoons low-sodium soy sauce', '1 tablespoon hoisin sauce', '1 tablespoon brown sugar', '1 tablespoon rice vinegar', '1/2 teaspoon Asian chile paste (or to taste)', '6 ounces cooked linguine', '1/3 cup sliced scallions'] ;\t Instructions: In a small saucepan, heat oil over medium heat. Add garlic and ginger; cook, stirring, until just soft, 1 minute. Add 3 tablespoons water, peanut butter, soy sauce, hoisin, sugar, vinegar and chile paste; cook, stirring often, until sauce is thick, about 4 minutes. Toss in noodles and scallions; serve at room temperature.\n", + "\n", + "Title: Spicy Sesame Noodles with Chopped Peanuts and Thai Basil;\t Ingredients: ['1 tablespoon peanut oil', '2 tablespoons minced peeled fresh ginger', '2 garlic cloves, minced', '3 tablespoons Asian sesame oil', '2 tablespoons soy sauce', '2 tablespoons balsamic vinegar', '1 1/2 tablespoons sugar', '1 tablespoon (or more) hot chili oil*', '1 1/2 teaspoons salt', '1 pound fresh Chinese egg noodles or fresh angel hair pasta', '12 green onions (white and pale green parts only), thinly sliced', '1/2 cup coarsely chopped roasted peanuts', '1/4 cup thinly sliced fresh Thai basil leaves', '*Available in the Asian foods section of many supermarkets and at Asian markets.'] ;\t Instructions: Heat peanut oil in small skillet over medium heat. Add ginger and garlic; sauté 1 minute. Transfer to large bowl. Add next 6 ingredients; whisk to blend.\n", + "Place noodles in sieve over sink. Separate noodles with fingers and shake to remove excess starch. Cook in large pot of boiling salted water until just tender, stirring occasionally. Drain and rinse under cold water until cool. Drain thoroughly and transfer to bowl with sauce. Add sliced green onions and toss to coat noodles. Let stand at room temperature until noodles have absorbed dressing, tossing occasionally, about 1 hour. Stir in peanuts and Thai basil; toss again. Season to taste with salt and pepper. Serve at room temperature.\n", + "\n", + "Title: Spicy Miso-Tahini Ramen;\t Ingredients: ['2 tablespoons toasted sesame oil', '2 tablespoons mirin', '1 yellow onion, thinly sliced', '8 cups purified water', '2 cups thinly sliced shiitake mushrooms', '2 tablespoons Japanese chili paste or Sriracha sauce', '1/2 cup organic red miso paste', '2 (10-ounce) packages fresh ramen noodles (look for Sun Noodle brand)', '1/4 cup tahini paste or neri goma', '2 cups baby spinach', 'Chili oil, for drizzling (optional)', '2 green onions, thinly sliced on the bias', 'Togarashi, for sprinkling (optional)', '2 soft-boiled eggs, sliced in half (optional)', 'Nori, cut into small rectangular pieces, for dipping (optional)', '1 avocado, pitted, peeled, and thinly sliced'] ;\t Instructions: In a large saucepan or stockpot, warm the toasted sesame oil over medium heat. Add the onion and sauté for 8 to 10 minutes, or until fragrant and translucent. Add 1 cup of the mushrooms and sauté for 2 to 3 minutes more.\n", + "Add the miso paste and tahini and stir to coat the onion and mush­rooms. Cook for another 2 to 3 minutes. Watch your heat carefully and reduce to medium-low, if needed, or the soup can “break” or separate. Pour in the mirin and deglaze the pan. Pour in the water and stir well to dissolve all the miso paste.\n", + "Bring the soup up to a light simmer over high heat and whisk in the chili paste or Sriracha sauce; start with 2 tablespoons to be safe, then add more as desired, and mix well to dissolve. Reduce the heat to medium-high.\n", + "In a separate medium saucepan, bring some water to a boil. Add the ra­men noodles, and cook for 3 to 4 minutes. Using tongs, remove the noodles from the boiling water or drain the noodles in a colander.\n", + "Divide the noodles among four bowls. Add the spinach and green onions to each bowl. Top each bowl equally with the reserved 1 cup mushrooms, the egg, avocado, chili oil, togarashi, and nori as desired, ladle broth over, and serve.\n", + "\n", + "Title: Spicy Tahini and Avocado Soba;\t Ingredients: ['1/4 cup tahini paste', '3 1/2 tablespoons organic red miso paste', '1/4 cup plus 1 tablespoon rice vinegar', '1 to 2 tablespoons sriracha sauce (depending on how hot you like it)', '1 (8- to 9.5-ounce) pack dried soba noodles', '1 cup thin jicama matchsticks', '2 cups baby spinach', '1 avocado, pitted, peeled, and sliced', '2 tablespoons gomashio, plus more as needed'] ;\t Instructions: In a medium saucepan, cook the soba noodles in boiling water, as directed on your package.\n", + "Make the dressing: Put the tahini paste, miso paste, rice vinegar, and sriracha in a large bowl. Whisk well.\n", + "Drain the cooked noodles and rinse under cold running water; set aside in the colander. (Quick tip: To keep your noodles from clumping together, rub the noodles together when rinsing under cold running water to wash away excess starch. This will also make sure your noodles maintain a perfect texture.)\n", + "Add your drained and cooled soba noodles to the dressing bowl and toss.\n", + "Add the jicama and baby spinach; mix well. Top off the soba noodles with avocado slices and gomashio.\n", + "To serve, twirl the noodles using tongs and place in individual serving bowls.\n", + "\n", + "Title: Soba with Green Chile Pesto;\t Ingredients: ['4 ounces soba (Japanese-style noodles)', 'Kosher salt', '2 tablespoons white miso', '1 tablespoon fresh lime juice', '3/4 teaspoon toasted sesame oil', '3 serrano chiles, 2 halved and seeds removed, 1 thinly sliced', '1 garlic clove, peeled', '2 scallions, white and pale-green parts only, chopped', '2 cups chopped basil leaves, plus torn leaves for serving', '2 cups chopped cilantro', '2 cups trimmed watercress', 'Toasted sesame seeds (for serving)'] ;\t Instructions: Cook noodles in a large pot of boiling salted water until al dente, about 5 minutes. Drain, reserving 1/4 cup soba cooking liquid.\n", + "Meanwhile, whisk miso, lime juice, and oil in a large bowl. Chop halved chiles, garlic, and a pinch of salt together on a cutting board, then use the side of chef’s knife to mash into a paste. Transfer to bowl with miso mixture and mix well. Add scallions, chopped basil, and cilantro and toss to combine; season pesto with salt.\n", + "Add soba, watercress, and sliced chile to pesto and toss, adding reserved soba cooking liquid by the teaspoonfuls as needed, until nicely coated.\n", + "Serve noodles topped with torn basil and sesame seeds.\n", + "\n", + "Title: Sesame Noodles with Chili Oil and Scallions;\t Ingredients: ['4 scallions, whites and greens separated, thinly sliced', '1/2 cup vegetable oil', '1 tablespoon crushed red pepper flakes', '2 teaspoons sesame seeds', '2 teaspoons Sichuan pepper, coarsely chopped', '12 ounces thin ramen noodles or spaghettini', 'Kosher salt', '1/4 cup tahini (sesame seed paste)', '1/4 cup unseasoned rice vinegar', '3 tablespoons reduced-sodium soy sauce', '2 teaspoons toasted sesame oil', '1 teaspoon sugar', \"ingredient info: Sichuan pepper is available at Asian markets and some specialty foods stores. If you can't find it, add an extra teaspoon each of red pepper and tahini.\"] ;\t Instructions: Cook scallion whites, vegetable oil, red pepper flakes, sesame seeds, and pepper in a small saucepan over low heat, stirring occasionally, until oil is sizzling and scallions are golden brown, 12-15 minutes; let chili oil cool in saucepan.\n", + "Meanwhile, cook noodles in a large pot of salted boiling water until al dente; drain. Rinse under cold water and drain well.\n", + "Whisk tahini, vinegar, soy sauce, sesame oil, sugar, and 2-3 tablespoons chili oil (depending on desired heat) in a large bowl; season with salt. Add noodles and toss to coat. Top with scallion greens and drizzle with more chili oil.\n", + "\n", + "Title: Bright and Spicy Shrimp Noodle Salad;\t Ingredients: ['⅓ cup fresh lime juice', '2 tsp. honey', '1 serrano chile, very thinly sliced', '1 (1-inch) piece ginger, peeled, finely grated', '1 garlic clove, finely grated', '1 Tbsp. plus 1½ tsp. fish sauce', '4 Tbsp. extra-virgin olive oil, divided', 'Kosher salt', '1 lb. large shrimp (preferably wild), peeled, deveined', '6 oz. bean thread (cellophane or glass) noodles', '1 English hothouse cucumber, halved lengthwise, thinly sliced crosswise', '½ cup salted, roasted peanuts, crushed, divided', '1 cup basil leaves'] ;\t Instructions: Stir lime juice and honey in a small bowl until honey dissolves. Mix in chile, ginger, garlic, fish sauce, and 3 Tbsp. oil; season dressing with salt.\n", + "Toss shrimp and 2 Tbsp. dressing in a medium bowl to coat; let sit 10 minutes.\n", + "Meanwhile, cook noodles according to package directions. Drain and add to bowl with remaining dressing along with cucumber and ¼ cup peanuts; toss well.\n", + "Heat remaining 1 Tbsp. oil in a large nonstick skillet over medium-high. Pour off any liquid from shrimp and pat dry; season all over with salt. Cook shrimp, tossing occasionally, until browned and bright pink, about 5 minutes. Transfer to bowl with noodles, add basil, and toss well to combine.\n", + "Divide noodle salad among bowls and top with remaining peanuts.\n", + "\n", + "Title: Spicy Curry Noodle Soup with Chicken and Sweet Potato;\t Ingredients: ['2 tablespoons vegetable oil', '3 tablespoons chopped shallots', '3 garlic cloves, chopped', '2 tablespoons minced lemongrass* (from bottom 4 inches of about 3 stalks, tough outer leaves discarded)', '2 tablespoons minced peeled fresh ginger', '2 tablespoons Thai yellow curry paste*', '2 tablespoons curry powder', '1 teaspoon hot chili paste (such as sambal oelek)*', '2 13.5- to 14-ounce cans unsweetened coconut milk,* divided', '5 cups low-salt chicken broth', '2 1/2 tablespoons fish sauce (such as nam pla or nuoc nam)*', '2 teaspoons sugar', '3 cups snow peas, trimmed', '2 cups 1/2-inch cubes peeled red-skinned sweet potato (yam; from about 1 large)', '1 pound dried rice vermicelli noodles or rice stick noodles*', '3/4 pound skinless boneless chicken thighs, thinly sliced', '1/2 cup thinly sliced red onion', '1/4 cup thinly sliced green onions', '1/4 cup chopped fresh cilantro', '3 red Thai bird chiles or 2 red jalapeño chiles, thinly sliced with seeds', '1 lime, cut into 6 wedges'] ;\t Instructions: Heat oil in heavy large saucepan over medium heat. Add next 4 ingredients; stir until fragrant, about 1 minute. Reduce heat to medium-low. Stir in curry paste, curry powder, and chili paste. Add 1/2 cup coconut milk (scooped from thick liquid at top of can). Stir until thick and fragrant, about 2 minutes. Add remaining coconut milk, broth, fish sauce, and sugar; bring broth to boil. Keep warm. DO AHEAD: Can be made 1 day ahead. Refrigerate until cold, then cover and keep chilled.\n", + "Cook snow peas in large pot of boiling salted water until bright green, about 20 seconds. Using strainer, remove peas from pot; rinse under cold water to cool. Place peas in medium bowl. Bring water in same pot back to boil. Add sweet potato and cook until tender, about 7 minutes. Using strainer, remove sweet potato from pot and rinse under cold water to cool. Place in small bowl. Bring water in same pot back to boil and cook noodles until just tender but still firm to bite, about 6 minutes. Drain; rinse under cold water to cool. Transfer to microwave-safe bowl. DO AHEAD: Can be made 1 hour ahead. Let stand at room temperature.\n", + "Bring broth to simmer. Add chicken; simmer until chicken is cooked through, about 10 minutes. Add sweet potato; stir to heat through, about 1 minute. Heat noodles in microwave in 30-second intervals to rewarm. Cut noodles with scissors if too long. Divide noodles among bowls. Divide snow peas and hot soup among bowls. Scatter red onion, green onions, cilantro, and chiles over soup. Garnish with lime wedges and serve.\n", + "*Available at some supermarkets, at specialty foods stores and Asian markets, and online from adrianascaravan.com.\n", + "\n", + "Title: Rice Noodles al Pomodoro with Chili Oil;\t Ingredients: ['Kosher salt', '12 oz. wide rice noodles', '1/4 cup extra-virgin olive oil', '6 garlic cloves, thinly sliced', '1 Fresno chile or red jalapeño, thinly sliced', '2 large sprigs basil, plus torn leaves for serving', '3 pints cherry tomatoes, halved if large', 'Chili oil and toasted sesame seeds (for serving)'] ;\t Instructions: Bring a large saucepan of salted water to a boil. Remove from heat; add noodles. Let sit, stirring occasionally, until al dente, about 4 minutes (time may vary by brand). Drain and rinse under cold running water.\n", + "Meanwhile, heat olive oil in a large skillet over medium. Cook garlic, stirring often, until softened and golden, about 3 minutes. Add chile and basil sprigs; cook, stirring, just until softened, about 1 minute. Add tomatoes and 1/4 cup water and cook, stirring occasionally, until most of the tomatoes have burst and are jammy, 8–10 minutes. Season with salt.\n", + "Add noodles to sauce and toss to coat. Season with more salt if needed. Divide among bowls; drizzle with chili oil and top with sesame seeds and torn basil.\n", + "\n", + "Title: Honey-Garlic Noodles;\t Ingredients: ['1/3 cup soy sauce', '1/2 cup mirin', '1 tablespoon toasted sesame oil', '4 garlic cloves, minced', '1 or 2 fresh bird’s-eye chiles, finely diced', '1 tablespoon honey', '12 ounces thin egg noodles', '2 tablespoons sunflower or vegetable oil', '1 tablespoon minced fresh ginger', '6 scallions, thinly sliced', '2 limes: 1 halved, 1 cut into wedges for serving', '1 tablespoon sesame seeds', 'Fresh cilantro or your favorite spicy herbs, for serving'] ;\t Instructions: In a small bowl, combine the sauce ingredients. Stir and set aside.\n", + "Bring a large pot of salted water to a boil and cook the noodles according to the package directions. When 1 minute of cooking time remains and the noodles are softened but firm, drain.\n", + "In a wok, heat the sunflower oil over medium-high heat. When the oil is hot, add the noodles and ginger and stir-fry for 2 minutes, keeping the noodles moving the entire time.\n", + "Pour in the sauce and cook for 1 minute, tossing to ensure that the noodles are completely coated. Turn off the heat.\n", + "Toss in the scallions, squeeze the juice of the halved lime on top, and sprinkle on the sesame seeds. Give everything a good toss to mix and combine.\n", + "Serve with the lime wedges and fresh cilantro or spicy greens.\n", + "\n", + "Title: Ginger-Scallion Ramen Noodles;\t Ingredients: ['1 (5\") piece ginger, peeled, finely chopped (about 1/3 cup)', '4 garlic cloves, finely chopped', '1 large bunch scallions, very thinly sliced, divided', '1/2 cup grapeseed or other neutral oil', '2 Tbsp. low-sodium soy sauce', '1 Tbsp. unseasoned rice vinegar', '1 tsp. toasted sesame oil', '1 tsp. freshly ground black pepper', '1/2 tsp. sugar', 'Kosher salt', '4 (5-oz.) packages wavy ramen noodles, preferably fresh', 'Toasted sesame seeds and chili oil (for serving)'] ;\t Instructions: Toss ginger, garlic, and two-thirds of the scallions in a large bowl to combine. Heat grapeseed oil in a small saucepan over high until hot and shimmering but not smoking, about 2 minutes. Immediately pour hot oil over aromatics. The scallions will sizzle, turn bright green, and wilt almost immediately. Let sit 5 minutes.\n", + "Mix soy sauce, vinegar, sesame oil, pepper, sugar, and remaining scallions into oil mixture; season with salt. Let sit 15 minutes for flavors to meld. Taste sauce and season with more salt if needed.\n", + "Meanwhile, cook noodles according to package directions; drain.\n", + "Toss noodles in a large bowl with as much or little sauce as you’d like. Divide among bowls and sprinkle with sesame seeds. Serve with chili oil alongside.\n", + "\n", + "Title: Kimchi Udon with Scallions;\t Ingredients: ['5 tablespoons unsalted butter, divided', '1 cup finely chopped kimchi, plus 1/3 cup kimchi juice', '2 tablespoons gochujang (Korean hot pepper paste)', '1/2 cup low-sodium chicken broth', '1 pound fresh or frozen udon noodles', 'Kosher salt', '4 large egg yolks, room temperature', '3 scallions, white and pale-green parts only, thinly sliced on a diagonal', '1 tablespoon toasted sesame seeds'] ;\t Instructions: Heat 2 Tbsp. butter in a large skillet over medium-high. Add chopped kimchi and gochujang and cook, stirring occasionally, until kimchi is softened and lightly caramelized, about 4 minutes. Add broth and kimchi juice and bring to a simmer. Cook until liquid is slightly reduced, about 3 minutes.\n", + "Meanwhile, boil noodles according to package directions.\n", + "Using tongs, transfer noodles to skillet and add remaining 3 Tbsp. butter; cook, tossing often, until sauce coats noodles, about 2 minutes. Season with salt if needed. Divide among bowls and top with egg yolks, scallions, and sesame seeds.\n", + "\n", + "Title: Ramen Noodle Bowl with Escarole and Spicy Tofu Crumbles;\t Ingredients: ['2 (5.5-ounce) servings fresh or dried ramen noodles', '4 cups torn escarole', '3 tablespoons Roasted Garlic Chili Sauce', 'Kosher salt', '4 Pickled Scallions', 'Spicy Tofu Crumbles, thinly sliced radish, and chopped peanuts (for serving)'] ;\t Instructions: Cook noodles according to package directions. During the last minute of cooking, add escarole. Drain and rinse under cold water.\n", + "Toss noodles, escarole, and chili sauce in a large bowl until coated; season with salt. Divide noodles between bowls. Slice scallions into 1\" pieces and place on top of noodles along with some tofu crumbles, radishes, and peanuts.\n", + "\n", + "Title: Green Tea Noodles with Gochujang Dipping Sauce;\t Ingredients: ['3 dried anchovies or 3 tablespoons dried bonito flakes', '1 small piece konbu (dried kelp), wiped lightly with a dry cloth', '1 garlic clove, peeled', '3 tablespoons gochujang (Korean hot pepper paste)', '2 tablespoons finely grated cucumber', '2 tablespoons finely grated daikon radish', '2 tablespoons fresh lime juice', '1 tablespoon finely grated ginger', '1 tablespoon low-sodium soy sauce', '2 teaspoons toasted sesame oil', '1 1/2 teaspoons sugar', '1 (7-ounce) package green tea soba noodles', '1/2 medium cucumber, cut into matchsticks', 'Thai or regular basil leaves (for serving)'] ;\t Instructions: Bring anchovies, konbu, garlic, and 1 1/2 cups water to a boil in a medium pot over medium-high, stirring occasionally. Reduce to a simmer, cover, and cook 7 minutes. Pour mixture through a fine-mesh sieve set over a large bowl; discard solids.\n", + "Whisk gochujang, cucumber, radish, lime juice, ginger, soy sauce, sesame oil, sugar, and 1 cup dashi in a medium bowl until well combined. Chill until cold.\n", + "Cook soba noodles in a large pot of boiling salted water, stirring occasionally, until noodles are cooked through but still chewy, 4–6 minutes. Drain and rinse with cold water immediately to stop the cooking process.\n", + "Divide noodles among 2 plates or bowls. Garnish with cucumber matchsticks and Thai basil leaves. Serve with dipping sauce on the side.\n", + "Dashi can be made up to 3 days in advance and refrigerated.\n", + "\n", + "Title: Hot Sesame Noodles with Scallions and Pork;\t Ingredients: ['1 (3\") piece ginger, peeled, finely grated', '2 garlic cloves, finely grated', '1/2 cup tahini', '1/4 cup low-sodium soy sauce or tamari', '1/4 cup mirin (Japanese rice wine)', '1/4 cup unseasoned rice vinegar', '1/4 cup hot chili sesame oil, plus more for serving', '2 Tbsp. vegetable oil', '1 lb. ground pork, beef, chicken, or turkey', '1 tsp. kosher salt, divided, plus more', '2 cups sliced carrots, zucchini, or whole snow or sugar snap peas', '1 bunch scallions, white and pale green parts cut into 1\" pieces, dark green parts thinly sliced', '8 oz. rice noodles of any shape', 'Toasted sesame seeds and sliced seaweed snacks (for serving; optional)'] ;\t Instructions: Whisk ginger, garlic, tahini, soy sauce, mirin, vinegar, and ¼ cup sesame oil in a medium bowl until smooth; set sauce aside.\n", + "Heat vegetable oil in a large skillet over high. Break up meat into pieces with your hands and scatter in an even layer across skillet. Cook, undisturbed, until well browned underneath, about 5 minutes; season with 1/2 tsp. salt. Continue to cook, breaking up with a wooden spoon or spatula, until cooked through, about 2 minutes. Add carrots and white and pale green scallion parts; season with 1/2 tsp. salt. Cook, stirring constantly, until combined and warmed through, about 1 minute.\n", + "Meanwhile, place noodles in a large pot of boiling salted water. Immediately remove pot from heat and let noodles sit until tender, 5–10 minutes, depending on their shape. Drain and transfer to a large bowl\n", + "Pour reserved sauce and 1/2 cup hot water into skillet and reduce heat to medium. Cook, stirring constantly, just until sauce starts to bubble and is smooth, about 1 minute. Pour over noodles in bowl and toss to coat, adding more hot water if needed to loosen sauce.\n", + "Divide noodle mixture among bowls. Top with sliced scallion greens, sesame seeds, and/or seaweed, if desired. Drizzle with sesame oil before serving.\n", + "\n", + "Title: Easy Pad Thai;\t Ingredients: ['8 ounces pad thai or lo mein noodles', '2 tablespoons vegetable oil', '1 clove garlic, minced', '2 large eggs', '1 1/2 tablespoons soy sauce', '2 tablespoons fresh lime juice (from about 1 medium lime)', '2 tablespoons brown sugar', '1 teaspoon fish sauce', '1/8 teaspoon red pepper flakes', '3 green onions, sliced', '1/4 bunch fresh cilantro, leaves only, roughly chopped', '1/4 cup chopped, unsalted peanuts'] ;\t Instructions: Bring a large pot of water to a rolling boil. Add the noodles and cook for 7 to 10 minutes or until tender. Drain the noodles and set aside.\n", + "In a large skillet, heat the vegetable oil over medium heat. Add the garlic and cook for 1 to 2 minutes, or until tender.\n", + "Whisk the eggs lightly with a fork. Pour them into the skillet and cook just until they solidify, but are still moist, moving the eggs around the skillet slightly as they cook so that they lightly scramble. When the eggs are cooked, remove the skillet from the heat and set aside.\n", + "In a small bowl, stir together the soy sauce, lime juice, sugar, fish sauce, and red pepper flakes. Pour the sauce into the skillet with the scrambled eggs. Add the noodles and toss to coat in the sauce.\n", + "Sprinkle the green onions, cilantro, and peanuts over the noodles. Toss lightly to combine. Serve warm.\n", + "Pad thai noodles have a unique flavor and texture, but if you can't find them in your area, try substituting another flat pasta like linguine.\n", + "\n", + "Title: Brothy Noodle Bowl with Mushrooms and Chiles;\t Ingredients: ['6 dried shiitake mushrooms', '1 (1\") piece ginger, peeled, finely grated', '1 dried chile de árbol, broken in half', '3 garlic cloves, smashed', '1/2 oz. dried kombu (about 1/2 sheet)', '1/2 tsp. ground turmeric or 1\" piece turmeric, peeled, finely grated', '1 Tbsp. white miso', '2 tsp. soy sauce', 'Kosher salt', '2 Tbsp. extra-virgin olive oil', '6 oz. fresh shiitake mushrooms, stems removed, thinly sliced', '1 small garlic clove', 'Kosher salt', '4 oz. rice vermicelli noodles', '2 radishes, trimmed, thinly sliced', '1 cup mixed herbs (such as shiso, Thai basil, cilantro, and/or mint)', '1/4 cup fermented vegetables (such as kimchi)', 'Toasted sesame seeds, hot sauce, and toasted sesame oil (for serving)'] ;\t Instructions: Bring mushrooms, ginger, chile, garlic, kombu, turmeric, and 4 1/2 cups water to a simmer in a medium saucepan over medium-high heat. Cover, reduce heat to very low, and gently simmer 25 minutes to allow aromatics to infuse and flavor the water. Strain dashi through a fine-mesh sieve into a large bowl; discard solids. Wipe out saucepan and pour dashi back in. Return to a simmer.\n", + "Mix miso and 1 Tbsp. dashi in a small bowl, then stir into dashi in pan along with soy sauce; season with salt. Keep dashi hot if using right away.\n", + "Do Ahead: Dashi can be made 2 days ahead. Let cool, then transfer to an airtight container and chill.\n", + "Heat olive oil in a medium skillet over medium-high. Cook mushrooms, stirring occasionally, until golden brown and beginning to crisp, about 5 minutes. Remove from heat, finely grate garlic over mushrooms, and mix well (garlic will cook in residual heat of mushrooms). Season with salt.\n", + "Drop noodles into very hot dashi. Cover pan and let sit 3 minutes.\n", + "Divide noodles and dashi among bowls. Top with mushrooms, radishes, herbs, fermented vegetables, and sesame seeds; drizzle with hot sauce and sesame oil.\n", + "\n", + "Title: Spicy Tomato–Tuna Noodle Skillet Casserole With Aioli;\t Ingredients: ['1 large egg yolk', '1 garlic clove, finely grated', '¼ tsp. kosher salt, plus more', '½ cup (or more) extra-virgin olive oil', '1 medium onion, cut into large pieces', '2 garlic cloves', '½ cup coarsely chopped roasted red peppers from a jar', '3 Tbsp. extra-virgin olive oil, plus more for drizzling', '12 oz. rigatoni, mezzi rigatoni, ditali, or other short or medium-length straight tube pasta', '2 (5–6-oz.) cans or jars oil-packed tuna', '1 oil-packed anchovy fillet, coarsely chopped', '1 tsp. kosher salt, divided', 'Freshly ground black pepper', '2 Tbsp. double-concentrated or regular tomato paste', '1 (14.5-oz.) can crushed tomatoes or whole peeled tomatoes with their juices, crushed', '1 tsp. ground turmeric', '¼ tsp. crushed red pepper flakes', 'Coarsely chopped parsley (for serving; optional)'] ;\t Instructions: Whisk egg yolk, garlic, ¼ tsp. salt, and 2 tsp. water in a small bowl to combine. Place bowl on a kitchen towel so it won’t slide around as you whisk and gradually stream in oil, whisking constantly until thick and emulsified. Aioli should be thick but pourable; gradually whisk in more oil if needed. Taste and season with more salt if desired.\n", + "Place rack in upper third of oven; preheat to 375°F. Pulse onion, garlic, and roasted red peppers in a food processor until finely chopped; set aside.\n", + "Heat 3 Tbsp. olive oil in a 10” ovenproof skillet, preferably cast iron, over medium-low. Add pasta and cook, stirring often, until evenly coated in oil and lightly browned, about 5 minutes (depending on the size and shape of your pasta, you may need to work in batches). Using a slotted spoon, transfer to a large bowl. Reserve pan.\n", + "Drain tuna, reserving 2 Tbsp. tuna oil. place oil in reserved pan and increase heat to medium. Add anchovy, ½ tsp. salt, and reserved chopped vegetable mixture and season with pepper. Cook, stirring occasionally, until vegetables soften, 5–7 minutes. Add tomato paste and cook, stirring, until slightly darkened in color, about 3 minutes. Mix in toasted pasta, tomatoes, turmeric, red pepper flakes, remaining ½ tsp. salt, and 2½ cups water and bring to a boil. Cook, stirring occasionally, until pasta is slightly softened, 8–10 minutes. Remove from heat and stir in drained tuna and ¼ cup water.\n", + "Transfer skillet to oven and bake casserole until pasta is tender and juices at the edges are bubbling, about 15 minutes. Remove from oven.\n", + "Heat broiler. Drizzle casserole with a little olive oil and broil until browned and crisped in spots, about 4 minutes.\n", + "Spoon some aioli over casserole and top with parsley if desired. Serve remaining aioli alongside.\n", + "\n", + "Title: Scallion-Oil Noodles;\t Ingredients: ['10 scallions', '¾ cup grapeseed or vegetable oil', '1 lb. fresh Shanghai or lo mein noodles or dried lo mein noodles', '½ cup soy paste', '2 Tbsp. soy sauce'] ;\t Instructions: Cut scallions crosswise into thirds, separating dark green parts from white and pale green parts. Slice lengthwise into very thin strips, keeping dark green and white parts separate.\n", + "Pour oil into a cold large wok or high-sided skillet. Add white parts of scallions to oil and set over medium-low. Cook until oil starts to bubble, about 5 minutes. Add dark green parts of scallions and stir to combine. Cook, stirring occasionally, until scallions are crisped and deep golden brown, 20–30 minutes. Do not rush this; slow, gradual browning as the liquid in the scallions evaporates will yield the best flavor.\n", + "Using a spider or slotted spoon, transfer scallions to paper towels to drain. Let scallions and oil cool. Pour oil through a fine-mesh sieve into an airtight container; discard solids. Cover and chill scallion oil until ready to use.\n", + "Cook noodles in a large pot of boiling water according to manufacturer’s directions, adding 1 Tbsp. reserved scallion oil to the cooking water when you add the noodles. Drain noodles, reserving ½ cup cooking liquid, and return to pot. Add ½ cup scallion oil and toss to coat. Add soy paste and toss to combine. Add soy sauce and toss again, adding cooking liquid as needed to loosen sauce.\n", + "Transfer noodles to a bowl or platter and top with three-fourths of crispy scallions. Serve with remaining scallions in a small bowl alongside.\n", + "Do Ahead: Scallions can be fried 1 day ahead. Keep scallion oil chilled; store scallions between layers of paper towels in an airtight container at room temperature.\n", + "\n", + "Title: Chicken Lo Mein with Ginger Mushrooms;\t Ingredients: ['12 ounces fresh Chinese thick, round egg noodles', '2 teaspoons sesame oil', '12 ounces skinless, boneless chicken thigh, cut into 1/4-inch-thick bite-sized slices', '1 tablespoon finely shredded ginger', '1 teaspoon plus 1 tablespoon Shao Hsing rice wine or dry sherry', '1 teaspoon cornstarch', '1 teaspoon plus 1 tablespoon soy sauce', '1 teaspoon salt', '1/4 teaspoon ground white pepper', '2 tablespoons peanut or vegetable oil', '1/4 teaspoon red pepper flakes', '3 cups thinly sliced Napa cabbage (about 5 ounces)', '4 ounces fresh shiitake mushrooms, stems removed and caps thinly sliced (about 2 cups)', '1/2 cup finely shredded scallions'] ;\t Instructions: 1. In a 3-quart saucepan bring 2 quarts water to a boil over high heat. When the water comes to a rolling boil, add the noodles. Return to a rolling boil and boil according to package directions until al dente. Carefully pour the noodles into a colander and rinse several times with cold water. Drain the noodles, shaking well to remove excess water. Return the noodles to the unwashed pot, add the sesame oil, and toss until well combined. Set aside.\n", + "2. Put the chicken in a shallow bowl and add the ginger, 1 teaspoon of the rice wine, cornstarch, 1 tea- spoon of the soy sauce, 1/4 teaspoon of the salt, and pepper. In a small bowl combine the remaining 1 tablespoon rice wine and 1 tablespoon soy sauce.\n", + "3. Heat a 14-inch flat-bottomed wok over high heat until a bead of water vaporizes within 1 to 2 seconds of contact. Swirl in 1 tablespoon of the peanut oil, add the red pepper flakes, then, using a metal spatula, stir-fry 10 seconds or until the pepper flakes are fragrant. Push the pepper flakes to the sides of the wok, carefully add the chicken mixture and spread it evenly in one layer in the wok. Cook undisturbed 1 minute, letting the chicken begin to sear. Stir-fry 30 seconds or until the chicken begins to brown. Add the cabbage and mushrooms and stir-fry 1 minute or until the cabbage is just wilted but the chicken is not cooked through. Transfer the chicken and vegetables to a plate.\n", + "4. Swirl the remaining 1 tablespoon peanut oil into the wok. Add the noodles and stir-fry 15 seconds. Restir the soy sauce mixture, swirl it into the wok, add the scallions and chicken mixture, and sprinkle on the remaining 3/4 teaspoon salt. Stir-fry 1 to 2 minutes or until chicken is cooked through and noodles are heated through.\n", + "\n", + "Title: Chilled Ramen with Soy Milk and Chili Oil;\t Ingredients: ['1 (1-inch) piece ginger, peeled, very finely chopped', '1/4 cup toasted sesame oil', '1/4 cup vegetable oil', '4 1/2 teaspoons crushed red pepper flakes', '1 tablespoon paprika', '4 teaspoons toasted sesame seeds', '1 tablespoon mirin (sweet Japanese rice wine)', '1 tablespoon raw or granulated sugar', '1 tablespoon red or white miso', '1 tablespoon sake', '1 tablespoon Sichuan peppercorns', '2 scallions, thinly sliced', '1 (1 1/2-inch) piece ginger, peeled, finely grated', '1 apple wedge (about 1/8 of apple), peeled, finely grated', '2 garlic cloves, finely grated', '2/3 cup white, sweet white, and/or red miso', '1 tablespoon mirin (sweet Japanese rice wine)', '1 tablespoon sake', '1 1/2 teaspoons toban djan (chili bean paste)', '1/2 teaspoon crushed red pepper flakes', '1/4 cup vegetable or other neutral oil', '2 scallions, thinly sliced', '1 teaspoon paprika', 'Kosher salt', '20 ounces frozen ramen noodles or 12 ounces dried ramen noodles', 'Kosher salt', '3 Persian cucumbers, cut into 1/2-inch pieces', '1 small red or orange bell pepper, ribs and seeds removed, very thinly sliced', '1/2 cup thinly sliced radishes', '1/4 cup thinly sliced basil', '4 cups soy milk or other nondairy milk or regular milk', '1 (3x1-inch) strip grapefruit zest, very thinly sliced', '2 tablespoons white or regular soy sauce', 'Plain unsweetened granola or fried shallots, garlic chips, unsalted, dry-roasted peanuts, and/or any other store-bought crunchy toppings you want (for serving)'] ;\t Instructions: Bring ginger, sesame oil, vegetable oil, red pepper flakes, and paprika to a gentle simmer in a small saucepan over medium heat. Let bubble gently 30 seconds, then remove from heat. Add sesame seeds, mirin, raw sugar, miso, sake, and Sichuan peppercorns and whisk until sugar is dissolved. Return paste to a gentle simmer, then let cool.\n", + "Cook scallions, ginger, apple, garlic, miso, mirin, sake, toban djan, and red pepper flakes in a small saucepan over medium heat, stirring, just until warm (do not let it simmer) and garlic no longer tastes raw, about 5 minutes.\n", + "Heat oil in a small saucepan over medium-high until very hot but not quite smoking. Add scallions and paprika; season with salt. Cook, swirling pan often, until scallions are browned and oil is deep red, about 2 minutes. Let cool.\n", + "Cook noodles in a large pot of boiling salted water according to package instructions until al dente. Drain, then immediately chill in a bowl of ice water. Drain again.\n", + "Toss cucumbers, bell pepper, and radishes with 3 Tbsp. Sichuan chili paste in a small bowl until well coated. Season to taste with salt. Toss in basil.\n", + "Whisk miso tare into milk in a medium bowl, then whisk in grapefruit zest and soy sauce.\n", + "Divide noodles, then milk mixture and vegetables, among bowls. Toss granola or other crunchy toppings of choice in a little chili oil in a small bowl and scatter over noodles; drizzle with more chili oil.\n", + "Sichuan chili paste can be made 1 month ahead. Cover and chill. Miso tare can be made 1 month ahead. Let cool; cover and chill. Chile oil can be made 1 month ahead. Cover and chill.\n", + "\n", + "Title: Udon With Chicken and Scallions;\t Ingredients: ['1 lb chicken tenders (not coated or cooked)', '1 lb fresh or frozen broccoli florets', '1 lb dried udon', '1/2 cup oyster sauce (preferably Lee Kum Kee)', '2 tablespoons hoisin sauce (preferably Lee Kum Kee or Koon Chun)', '1 tablespoon toasted sesame oil', '2 teaspoons Chinese chile garlic paste (preferably Lan Chi), or to taste', '1/2 cup chopped scallions (from 1 bunch)', '2 teaspoons roasted sesame seeds (optional)'] ;\t Instructions: Cook chicken in a 6-quart pot of boiling unsalted water, covered, until just cooked through, about 3 minutes. Transfer to a large bowl with a slotted spoon.\n", + "Add broccoli to boiling water and cook, uncovered, stirring occasionally, until just tender, 3 to 5 minutes. Transfer with slotted spoon to a colander to drain, then transfer to another bowl. Return water to a boil and cook noodles until tender (check often; cooking time on package may not be accurate). Reserve 1 cup cooking water, then drain noodles in colander and rinse under hot water.\n", + "While noodles cook, tear chicken into chunks.\n", + "Add oyster and hoisin sauces, sesame oil, chile garlic paste, half of scallions, and 1/3 cup cooking water to chicken and stir to combine.\n", + "Divide noodles, broccoli, and chicken mixture among 4 bowls and sprinkle with sesame seeds and remaining scallions. Serve immediately, stirring just before eating. If noodles become dry, moisten with some of cooking water.\n", + "If you have to substitute a chile paste without garlic for the chile garlic paste, start with 1/2 teaspoon and add to taste.\n", + "\n", + "Title: Noodle Salad With Chicken and Chile-Scallion Oil;\t Ingredients: ['2 scallions, thinly sliced', '2 garlic cloves, thinly sliced', '2 star anise pods', '2 tablespoons crushed red pepper flakes', '1 tablespoon chopped fresh ginger', '1 teaspoon Sichuan peppercorns', '1/2 cup vegetable oil', '6 ounces Japanese wheat noodles (such as ramen, somen, or udon)', '2 tablespoons reduced-sodium soy sauce', '2 tablespoons unseasoned rice vinegar', '2 teaspoons sugar', '1 teaspoon toasted sesame oil', '2 cups shredded cooked chicken', '2 scallions, thinly sliced', '1/2 large English hothouse cucumber, halved lengthwise, thinly sliced', '4 radishes, trimmed, thinly sliced', '1 cup cilantro leaves or any sprout'] ;\t Instructions: Cook all ingredients in a small saucepan over medium heat, swirling pan occasionally, until scallions and garlic are just golden brown, about 3 minutes. Let cool; transfer oil to a jar.\n", + "DO AHEAD: Chile oil can be made 4 days ahead. Cover and chill.\n", + "Cook noodles in a large pot of boiling water according to package directions; drain. Rinse noodles under cold water, then shake off as much water as possible.\n", + "Whisk soy sauce, vinegar, sugar, and oil in a medium bowl until sugar dissolves. Add noodles, chicken, and scallions; toss to coat. Toss with cucumber, radishes, and cilantro and drizzle with chile oil just before serving.\n", + "DO AHEAD: Noodles can be cooked the night before. Toss with 1 teaspoon oil; cover and chill. Store noodles with chicken; store vegetables and dressing separately.\n", + "\n", + "Title: Soba Noodle Stir-Fry;\t Ingredients: ['3 ounces soba noodles', '4 ounces extra-firm tofu, drained, patted dry, and cut into small cubes', 'Salt', '1 stalk broccoli, cut into small florets, stems thinly sliced', '2 ounces sugar snap peas', '1 tablespoon reduced-fat smooth peanut butter', '1 tablespoon rice vinegar', '1 tablespoon reduced-sodium soy sauce', 'Pinch of red pepper flakes, if desired', '2 cloves garlic, minced'] ;\t Instructions: Cook the noodles according to the package directions. Drain and rinse well under cold water to prevent sticking.\n", + "Lightly coat a large nonstick skillet with cooking spray; place over medium-high heat. Add the tofu and season with salt. Cook for 8 minutes, until golden, stirring occasionally. Transfer to a platter.\n", + "Coat the skillet again with cooking spray; place over medium-high heat. Add the broccoli, peas, and a splash of water. Cover and cook for 5 minutes, until the vegetables are crisp-tender.\n", + "Meanwhile, make the sauce. In a small bowl, whisk together the peanut butter and 2 tablespoons water. Whisk in the vinegar, soy sauce, and pepper flakes, if desired.\n", + "Add the reserved noodles, the tofu, garlic, and sauce to the vegetables. Cook for 2 minutes, tossing, until the noodles are warmed through. Serve.\n", + "\n", + "Title: Stir-Fried Noodles With Pork, Cabbage, and Ginger (Yakisoba);\t Ingredients: ['2 tablespoons vegetable oil', '2 ounces pork belly, thinly sliced, then cut into 3/4-inch pieces', '1/2 cup thinly sliced yellow onion', '1/4 cup 2-inch-long matchsticks peeled carrot', '1 cup roughly chopped (about 2 by 3/4-inch pieces) loosely packed white cabbage', '1 (5 1/2-ounce) package yakisoba noodles (a heaping cup)', '2 tablespoons jarred yakisoba sauce, preferably the Otafuku brand', '1 tablespoon shredded beni shoga (red pickled ginger)', '1 heaping tablespoon bonito flakes', '1/2 teaspoon aonori (powdered seaweed) or finely chopped nori seaweed sheets'] ;\t Instructions: Heat the oil in a medium-wide nonstick or cast-iron skillet over high heat until the oil shimmers. Add the pork belly, onion, and carrot and cook, stirring frequently, for about 30 seconds. Add the cabbage and cook, stirring, until it wilts slightly and the onion is lightly browned at the edges, about 3 minutes.\n", + "Add the noodles and cook, tossing with tongs, until the noodles are heated through, about 3 minutes. As you toss, gently separate the strands. (If the noodles don’t separate easily, add a splash of water to the pan.) Add the sauce and continue to cook, tossing, until thoroughly coated, about 1 minute. Season with more sauce to taste, toss well, and transfer to a bowl. Top with the beni shoga, bonito flakes, and aonori. Eat right away.\n", + "\n", + "Title: Better-Than-Takeout Stir-Fried Udon;\t Ingredients: ['2 Tbsp. vegetable oil, divided', '4 cups very coarsely chopped green cabbage (about 1/4 medium head)', '2 (7-oz.) packages instant udon noodles, flavor packets discarded', '2 tsp. toasted sesame oil', '8 oz. ground pork', '5 scallions, white and pale green parts coarsely chopped, dark green parts thinly sliced', '2 tsp. finely grated peeled ginger', '1 tsp. crushed red pepper flakes', '1/3cup mirin (sweet Japanese rice wine)', '1/3 cup soy sauce', '1 Tbsp. toasted sesame seeds, plus more for serving'] ;\t Instructions: Heat 1 Tbsp. vegetable oil in a large skillet over medium-high. Cook cabbage, tossing often, until edges are browned, about 4 minutes. Reduce heat to low and continue to cook, tossing often, until thickest parts of cabbage are tender, about 4 minutes longer. Remove from heat; set aside.\n", + "Place noodles in a large heatproof bowl (or pot if you don’t have one) and cover with 6 cups boiling water. Let sit 1 minute, stirring to break up noodles, then drain. Transfer noodles back to bowl and toss with sesame oil. Add reserved cabbage and wipe out skillet.\n", + "Heat remaining 1 Tbsp. vegetable oil in skillet over medium-high and add pork, breaking up and spreading across surface of pan with a spatula or tongs. Cook pork, undisturbed, until underside is browned, about 3 minutes. Break up meat into smaller pieces and continue to cook, tossing, just until meat is cooked through and no longer pink, about 1 minute. Add chopped scallions (the white and pale green parts), ginger, and red pepper flakes and cook, tossing often, until scallions are softened and inside of skillet starts to brown, about 1 minute. Add noodle mixture, mirin, and soy sauce and cook, tossing constantly and scraping up browned bits, until noodles are coated in sauce, about 45 seconds. Remove from heat and mix in sliced scallions (the dark green parts) and 1 Tbsp. sesame seeds.\n", + "Divide noodles among bowls and top with more sesame seeds.\n", + "\n", + "Title: Spicy Spinach Linguine with Olive Oil and Garlic;\t Ingredients: ['12 ounces spinach linguine', '6 tablespoons extra-virgin olive oil', '1 cup chopped fresh basil, divided', '4 garlic cloves, minced', '1/2 teaspoon dried crushed red pepper', '1/2 cup dry white wine', '1 1/2 cups grated Pecorino Romano cheese, divided'] ;\t Instructions: Cook linguine in large pot of boiling salted water until just tender but still firm to bite. Drain, reserving 1 cup pasta cooking liquid. Return pasta to same pot.\n", + "Meanwhile, heat olive oil in heavy large skillet over medium-high heat. Add 1/2 cup basil, garlic, and crushed red pepper; stir 1 minute. Add wine and boil until slightly reduced, about 3 minutes. Add mixture from skillet, remaining 1/2 cup basil, and 3/4 cup cheese to pasta. Toss over medium heat until sauce coats pasta, adding reserved pasta liquid by 1/4 cupfuls if dry. Season with salt and pepper. Transfer to bowl. Sprinkle with remaining 3/4 cup cheese.\n", + "\n", + "Title: Rice Noodles with Peanut Sauce, Chicken, and Snap Peas;\t Ingredients: ['3 tablespoons olive oil', '1/2 teaspoon ground cumin', '1 1/2 teaspoons kosher salt, divided', '3/4 teaspoon freshly ground black pepper, divided', '1 1/4 pounds boneless, skinless chicken thighs, trimmed', '2 limes, divided', '1 batch Kid-Friendly Peanut Sauce', '8 ounces dried thin rice noodles', '1/2 cup cilantro, coarsely chopped, divided', '1/2 cup toasted peanuts, coarsely chopped, divided', '2 Persian cucumbers, thinly sliced on the bias', '2 medium carrots (about 4 ounces each), grated', '1/2 pound sugar snap peas, trimmed'] ;\t Instructions: Preheat oven to 425°F. Stir oil, cumin, 1 tsp. salt, and 1/2 tsp. pepper in a large bowl. Add chicken and toss to coat. Spread on a rimmed baking sheet and roast until an instant-read thermometer inserted into thickest part of thigh registers 165°F, 15–17 minutes. Transfer chicken to a cutting board and thinly slice.\n", + "Meanwhile, juice 1 lime to yield 3 Tbsp. juice. Cut remaining lime into wedges. Whisk peanut sauce, lime juice, and remaining 1/2 tsp. salt and 1/4 tsp. pepper in a large bowl.\n", + "Cook noodles according to package directions. Drain. Transfer noodles to another large bowl. Add 1 1/2 cups peanut sauce mixture, 1/3 cup cilantro, and 1/3 cup peanuts and toss to combine. Divide noodle mixture among bowls.\n", + "Transfer sliced chicken to same large bowl and toss with 2 Tbsp. peanut sauce mixture; arrange in a section over noodles. Toss cucumbers and 2 Tbsp. peanut sauce mixture in same large bowl; arrange in another section over noodles. Toss carrot and 1/4 cup peanut sauce mixture in same large bowl; arrange in another section over noodles. Toss snap peas and 2 Tbsp. peanut sauce mixture in same bowl; arrange in another section over noodles. Serve remaining sauce mixture alongside or reserve for another use. Top bowls with remaining cilantro and peanuts and serve with lime wedges alongside.\n", + "Sauce can be made 2 weeks ahead; transfer to an airtight container and chill. Chicken can be cooked 4 days ahead; cover and chill.\n", + "\n", + "Title: Sichuanese Wontons in Chilli Oil Sauce (Hong You Chao Shou);\t Ingredients: ['1/2 oz (20g) piece of ginger, unpeeled', '5 oz (150g) ground pork', '1/2 egg, beaten', '1 tsp Shaoxing wine', '1/2 tsp sesame oil', 'Salt', 'Ground white pepper', '3 tbsp chicken stock', '3 tbsp finely sliced spring onion greens', '7 oz (200g) package of wonton wrappers', 'Flour, to dust', '3-4 tbsp sweet aromatic soy sauce, or 3-4 tbsp light or tamari soy sauce with 1 1/2-2 tsp sugar', '5-6 tbsp chilli oil, with its sediment', '2-4 heaped tsp crushed garlic', '2 tbsp finely sliced spring onion greens'] ;\t Instructions: Crush the ginger with the flat of a cleaver or a rolling pin and put it in a cup with just enough cold water to cover. Place the pork, egg, Shaoxing wine and sesame oil in a bowl with 1 1/2 tsp of the ginger water and salt and pepper to taste. Stir well. Mix in the stock, 1 tbsp at a time. Finally, add the spring onion greens.\n", + "Fill a small bowl with cold water. Take a wonton wrapper and lay it flat in one hand. Use a table knife or a small spatula to press about 1 tsp of the pork mixture into the center of the wrapper. Dip a finger into the cold water, run it around the edges of the wrapper and fold it diagonally in half. Press the edges tightly together and lay on a flour-dusted tray or large plate.\n", + "Bring a large pan of water to a boil over a high heat. While you are waiting for the water to boil, prepare three or four serving bowls. In each bowl, place 1 tbsp sweet aromatic soy sauce (or 1 tbsp tamari soy sauce and 1/2 tsp sugar), 1 1/2 tbsp chilli oil with sediment and 1/2-1 heaped tsp of crushed garlic to taste.\n", + "When the water has come to a boil, drop in the wontons. Stir gently to make sure they do not stick together. When the water returns to a rolling boil, pour in a small cup of cold water to calm it down. Repeat this one more time. When the water has come to a boil for the third time, the wontons should be cooked through (cut one open to make sure). Remove the wontons with a slotted spoon, drain well, and divide between the prepared serving bowls. Scatter each bowl with some of the spring onion greens. Serve immediately, stirring everything together before digging in.\n", + "\n", + "Title: Black Sesame Noodle Bowl;\t Ingredients: ['1/4 cup black sesame seeds', '2 tablespoons neutral-tasting oil', '5 teaspoons soy sauce', '1 tablespoon rice vinegar', '1 tablespoon brown sugar', '1/2 teaspoon wasabi powder', '1/4 teaspoon fine sea salt', '3 bundles (about 11.5 ounces) dried soba, udon, or somen noodles', '2 medium shallots, minced', '1 avocado', '2 large 12-minute eggs', '8 small-to-medium radishes', '4 cups tender greens, such as watercress, upland cress, baby arugula, or tatsoi', '2 scallions, white and green parts, thinly sliced', 'Kecap manis (Indonesian soy sauce), for drizzling'] ;\t Instructions: Place the sesame seeds in a dry skillet and set over medium-low heat. Toast, swirling the pan frequently, until fragrant—90 seconds to 2 minutes. Watch and smell carefully so that they don’t burn. Transfer to a mortar and coarsely grind, then transfer to a mixing bowl. Add the oil, soy sauce, vinegar, brown sugar, wasabi, and salt, and whisk until thoroughly combined.\n", + "Bring a saucepan of salted water to a gentle boil. Add the noodles and cook until tender, usually 4 to 7 minutes or according to the package instructions. Drain, rinse thoroughly under cold running water, then drain again thoroughly.\n", + "Add the noodles and shallots to the bowl with the sauce and toss well, until the noodles are thoroughly coated. At this stage, the noodles can be transferred to an airtight container and kept in the fridge for up to 2 days. Bring to room temperature before serving.\n", + "Quarter the avocado around the pit. Remove and peel the segments, then slice into thin strips. Peel the eggs and grate them using the large holes of a box grater. Slice the radishes into thin rounds. Stack the rounds on top of each other and slice into thin matchsticks.\n", + "Divide the greens among four bowls, then top with the dressed noodles. Fan the avocado over the noodles in each bowl, then add a pile of the shredded egg, radishes, and scallions to each serving. Drizzle a bit of kecap manis over the avocado and serve.\n", + "\n", + "Title: Udon Noodles with Shrimp, Snow Peas, and Peanuts;\t Ingredients: ['1 red chile (such as Fresno), finely chopped', '1 garlic clove, finely chopped', '6 tablespoons unseasoned rice vinegar', '6 tablespoons soy sauce', '3 tablespoons vegetable oil', '2 tablespoons peanut butter', '2 teaspoons sesame oil', '1 tablespoon finely grated peeled ginger', '1 teaspoon kosher salt, plus more to taste', '2 cups snow peas, thinly sliced (about 8 ounces)', '1 pound udon noodles', '1 pound shrimp, peeled, deveined', '1/3 cup coarsely chopped roasted salted peanuts', '1/4 cup coarsely chopped fresh cilantro'] ;\t Instructions: Whisk chile, garlic, vinegar, soy sauce, vegetable oil, peanut butter, sesame oil, ginger, and 1 tsp. salt in a large bowl. Add snow peas and toss to combine.\n", + "Cook udon in a large pot of boiling salted water according to package directions. Add shrimp 3 minutes before noodles are done and cook, stirring occasionally, until shrimp are pink and cooked through. Drain noodles and shrimp and add to dressing; stir vigorously to combine.\n", + "Transfer noodle mixture to a serving bowl or platter. Top with peanuts and cilantro. Serve immediately or at room temperature.\n", + "\n", + "Title: Coconut Soba Noodles with Ginger Broccoli;\t Ingredients: ['1 (9.5 ounces) package soba noodles', '2 teaspoons coconut oil', '1 teaspoon freshly grated ginger', '1 garlic clove, minced', '2 cups broccoli florets', '1 teaspoon salt', '1 (15-ounce) can light coconut milk', '2 tablespoons lime juice', '1 tablespoon chopped cilantro'] ;\t Instructions: 1. Cook the soba noodles according to the package directions. Drain, rinse with cold water, and set aside.\n", + "2. Heat the oil in a small pot over medium heat. Add the garlic and ginger and cook for 1 minute.\n", + "3. Add the broccoli florets, salt and coconut milk, bring to a boil, reduce to medium and cook for 5 minutes.\n", + "4. Add the noodles to the coconut milk mixture and toss to thoroughly coat.\n", + "5. Sprinkle with the lime juice and cilantro and serve.\n", + "\n", + "Title: Ramen Noodles With Spring Onions and Garlic Crisp;\t Ingredients: ['1 bunch spring onions or scallions, very thinly sliced, divided', '1 (3\") piece ginger, peeled, thinly sliced', '4 garlic cloves, thinly sliced', '½ cup vegetable or sunflower oil', '½ serrano or other green chile, thinly sliced (with seeds)', '¼ cup finely chopped tender herbs (such as cilantro, mint, and/or basil)', '2 Tbsp. low-sodium soy sauce', '1 Tbsp. unseasoned rice vinegar', '1 Tbsp. toasted sesame seeds', '1 tsp. freshly ground black pepper', '½ tsp. kosher salt', '½ tsp. sugar', '2 (5-oz.) packages fresh wavy ramen noodles', '1 Tbsp. unsalted butter, cut into pieces'] ;\t Instructions: Place half of spring onions in a large heatproof bowl and set a fine-mesh sieve on top; set aside. Combine remaining spring onions with ginger, garlic, and oil in a small saucepan. Set over medium-high and cook, stirring occasionally, until garlic is golden and scallions are beginning to crisp and turn golden brown, 8–10 minutes.\n", + "Pour mixture through reserved sieve onto spring onions. Turn out garlic crisp in sieve onto paper towels to drain. Stir spring onions in bowl until just softened, about 1 minute. Stir in chile, herbs, soy sauce, vinegar, sesame seeds, pepper, salt, and sugar. Let dressing sit 10 minutes.\n", + "Meanwhile, cook noodles according to package directions. Drain and rinse under warm water to get rid of any excess starch.\n", + "Transfer noodles to bowl with dressing and add butter and half of garlic crisp; toss to coat noodles. Divide among bowls; top with remaining garlic crisp.\n", + "\n", + "Title: Ramen Noodles with Miso Pesto;\t Ingredients: ['4 cups baby spinach', '2 cups cilantro leaves with tender stems', '1 Tbsp. white miso', '1 garlic clove', '1/2 cup grapeseed or sunflower oil', '1 tsp. toasted sesame oil', '1 tsp. fresh lemon juice', 'Kosher salt', '2 (5-oz.) packages fresh ramen noodles', '1 Tbsp. unsalted butter, cut into small pieces', 'Toasted sesame seeds (for serving)'] ;\t Instructions: Bring a medium pot of water to a boil.\n", + "Meanwhile, purée spinach, cilantro, miso, garlic, grapeseed oil, sesame oil, and lemon juice in a blender until mixture is smooth and very green. Season with salt and pour pesto into a medium bowl.\n", + "Cook noodles according to package directions. Drain and add to bowl with pesto. Add butter and toss until butter is melted and noodles are coated in sauce.\n", + "Divide noodles between bowls and top with sesame seeds.\n", + "Pesto can be made 1 day ahead. Cover and chill. Color might darken slightly.\n", + "\n", + "Title: Hot-and-Sour Peanutty Noodles with Bok Choy;\t Ingredients: ['8 ounces whole-wheat spaghetti', '2 1/4 teaspoons kosher salt, divided', '1 tablespoon canola or sunflower oil', '1 large shallot, sliced', '1 piece (about 1 inch) ginger, peeled and finely chopped', '1 pound baby bok choy, leaves and stems separated, roughly chopped', '1 red bell pepper, sliced', '3/4 cup low-sodium vegetable stock or water', '2 tablespoons low-sodium soy sauce', '1 tablespoon dark sesame oil', '1 tablespoon rice vinegar', '1/2 cup chopped unsalted roasted peanuts', '1/4 teaspoon red pepper flakes (or more to taste)'] ;\t Instructions: Cook pasta as directed on package with 2 teaspoons salt until just tender. Drain and rinse pasta with cool water. In a large nonstick skillet, heat canola oil over medium-high heat. Cook shallot and ginger, stirring, until just brown, 1 minute. Add bok choy stems, bell pepper and remaining 1/4 teaspoon salt. Cook, stirring frequently, until peppers are crisp-tender, 1 to 2 minutes. Transfer contents of skillet to a plate. To same skillet, add bok choy leaves, stock, soy sauce, sesame oil and vinegar. Cook, stirring, until leaves are soft and bright green, 1 to 2 minutes. Add bell pepper mixture, pasta, peanuts and pepper flakes to pan. Toss to combine; serve.\n", + "\n", + "Title: Udon Noodles with Chicken, Shellfish, and Vegetables;\t Ingredients: ['3/4 cup carrots, thinly sliced', '1 cup snow peas, cut in half crosswise', '5 napa cabbage leaves, cut crosswise into 1-inch-wide strips', '4 ounces (about 2 cups packed) spinach, coarse stems removed and leaves cut crosswise into 1-inch-wide strips', '8 ounces dried udon noodles', '6 cups dashi', '1/2 cup light soy sauce', '1/4 cup mirin (Japanese sweet rice wine)', '8 ounces boneless, skinless chicken thighs, cut into bite-size pieces', '1 ounce (about 4) fresh shiitake mushrooms, stemmed', '8 littleneck clams, scrubbed', '4 ounces (about 12) small shrimp, peeled, deveined, and butterflied', '2 scallions (white and green parts), cut crosswise into 2-inch pieces and julienned'] ;\t Instructions: Bring large pot water to boil over high heat. Have ready large bowl ice water. Add carrots, snow peas, cabbage, and spinach to boiling water and blanch until crisp-tender, about 30 seconds. Using slotted spoon, transfer vegetables to ice water to stop cooking (reserve boiling water), then transfer to colander to drain. Set aside.\n", + "Boil noodles in same water until just tender, following package instructions. Drain and transfer to 4 warmed bowls.\n", + "In medium saucepan over moderately high heat, combine dashi, soy sauce, and mirin. Bring to simmer, then add chicken, mushrooms, clams, and shrimp. Simmer until chicken is cooked through, mushrooms are tender, clams open, and shrimp are opaque, about 5 minutes. (Discard any unopened clams.)\n", + "Divide vegetables between bowls atop noodles, then ladle hot broth, chicken, mushrooms, clams, and shrimp over. Serve immediately.\n", + "\n", + "Title: Sesame Rice Noodles with Shrimp;\t Ingredients: ['1/4 cup gluten-free tamari or soy sauce', '1/4 cup rice vinegar, divided', '2 tablespoons toasted sesame oil', '2 garlic cloves, minced', '2 tablespoons honey', '1 teaspoon Sriracha', '1 cup peeled, seeded, julienned cucumber', '1 cup peeled, julienned carrots', '1 cup julienned radishes', '2 scallions, thinly sliced', '1 tsp salt', '1/2 lb brown-rice spaghetti', '1/2 lb shrimp, peeled and deveined', '1 teaspoon sesame seeds (black or regular)'] ;\t Instructions: In a large bowl, whisk together tamari, 1 tablespoon vinegar, oil, garlic, honey and Sriracha. In a separate bowl, toss together cucumber, carrots, radishes, scallions, remaining 3 tablespoons vinegar and salt. Let stand 10 minutes, tossing occasionally.\n", + "Bring a large pot of salted water to a boil. Cook spaghetti as directed on package until al dente. During the last 2 minutes of cooking, add shrimp. Drain noodle mixture and rinse with cold water, shaking out any excess. Add noodle mixture and vegetables to bowl with tamari dressing and toss. Top with sesame seeds.\n", + "\n", + "Title: Turkey Ramen;\t Ingredients: ['Carcass from 1 (12- to 14-pound) turkey, including skin, or 2 rotisserie chicken carcasses', '1 pound bone-in country ham steak or prosciutto, diced', '1 large onion, diced', '2 medium carrots, peeled and diced', '1 (6-inch) daikon radish, peeled and diced', '5 cloves garlic, peeled', '1 (2-inch) knob ginger, peeled and sliced', '1 lemon, cut in half', 'About 1 gallon water', '2 large eggs', '2 tablespoons red miso', '1 tablespoon fish sauce', '2 1/2 teaspoons soy sauce', '2 teaspoons white distilled vinegar', 'A few dashes of hot sauce', '12 ounces ramen noodles (from 4 packages ramen soup) or thin spaghettini', '10 ounces soft tofu, drained and diced (about 1 1/3 cup total)', '6 ounces shiitake mushrooms, trimmed and thinly sliced', '1 avocado, peeled, pitted, and thinly sliced', '2 scallions, chopped', '1 bunch fresh watercress (thin stems and leaves only)', '2 cups pulled cooked turkey or chicken (from the carcass used for stock)', '3/4 ounce Parmesan cheese, freshly grated (about 1/4 cup total)', 'About 1 teaspoon freshly squeezed lemon juice'] ;\t Instructions: Pull about 2 cups of meat off the turkey carcass and reserve for the soup. Using a large chef's knife, chop the turkey carcass into small fist-size pieces. Transfer to a large pot and add the country ham, onion, carrots, daikon radish, garlic, ginger, and lemon halves. Add enough water to cover the ingredients by 1 inch and bring to a boil, skimming off any foam that rises to the top. Lower the heat to moderately low and let the stock simmer, adjusting the heat as necessary to maintain a very gentle simmer, until richly aromatic, about 4 hours. Let the stock cool slightly then pour through a fine-mesh sieve into a large bowl, discarding solids. Measure 8 cups of stock for the ramen bowls and reserve the rest for later use. DO AHEAD: The turkey stock can be prepared ahead and kept, covered in the refrigerator, up to 4 days, or frozen, in an airtight container, up to 3 months.\n", + "Fill a medium bowl with cold water.\n", + "Bring a small saucepan of water to a boil. Using a slotted spoon, gently lower the eggs, 1 at a time, into the boiling water. Make sure the water returns to a boil then cook the eggs for 7 minutes. Using a slotted spoon, transfer the eggs to the bowl of cold water. Once the eggs are cool enough to handle, with the back of a knife, gently tap on the shell to crack it. Carefully peel the eggs then cut them in half and set aside.\n", + "While the eggs are boiling, in a large pot, bring 8 cups of the turkey stock to a boil. Add the miso, fish sauce, soy sauce, vinegar, and hot sauce and stir to combine. Add the ramen noodles, discarding the flavor packet if using packaged ramen soup, and boil until tender but still firm, about 3 minutes.\n", + "Divide the ramen noodles and broth evenly into 4 bowls. Into each bowl, evenly divide the tofu, mushrooms, avocado, scallions, watercress, turkey, and soft-boiled egg halves. Garnish with freshly grated Parmesan then squeeze a few drops of lemon juice over the bowls and serve immediately. Mix everything together and let the broth warm all the ingredients before eating.\n", + "\n", + "Title: Bean Thread Noodles with Pickled Vegetables;\t Ingredients: ['6 ounces wide bean thread noodles', '1 small garlic clove, finely grated', '1/4 cup fish sauce (such as nam pla or nuoc nam)', '3 tablespoons fresh lime juice', '2 tablespoons unseasoned rice vinegar', '1 tablespoon sugar', '2 teaspoons finely grated peeled ginger', '1/4 teaspoon freshly ground black pepper', '1 large daikon (Japanese white radish; about 1 pound), julienned', '1 English hothouse cucumber, thinly sliced', '2 large carrots, peeled, julienned', '1/4 cup vegetable oil', '1 cup torn fresh cilantro, divided', '3/4 cup unsalted, dry-roasted peanuts, coarsely chopped, divided', 'ingredient info: Bean thread noodles and daikon can be found at Asian markets and some supermarkets.'] ;\t Instructions: Place noodles in a large bowl and add boiling water to cover. Let noodles soak until tender but not mushy, 15-20 minutes; drain. Rinse under cold water and drain well.\n", + "Whisk garlic, fish sauce, lime juice, vinegar, sugar, ginger, and pepper in another large bowl. Add daikon, cucumber, and carrots; toss to combine. Let sit 10 minutes.\n", + "Add noodles, oil, half of cilantro, and half of peanuts to bowl; toss to combine. Top salad with remaining cilantro and peanuts.\n", + "DO AHEAD: Vegetables can be pickled 2 days ahead. Cover and chill.\n", + "\n", + "Title: Chicken & Broccoli with Crispy Noodles;\t Ingredients: ['1 tablespoon dry sherry', '1 tablespoon cornstarch', '1 tablespoon grated peeled fresh ginger', '2 pounds boneless, skinless chicken breasts, cut into 1-inch chunks', '1 cup vegetable oil', '4 ounces thin rice sticks or rice noodles', '1 1/2 pounds broccoli (1-2 heads), cut into small florets, stalks reserved for another use', '1/2 cup skinless almonds or raw cashews', '3/4 cup kecap manis or 3/4 cup soy sauce mixed with 1/4 cup packed dark brown sugar', '3/4 cup Chicken Stock , plus more if needed'] ;\t Instructions: In a large bowl, whisk together the sherry and cornstarch. Add the ginger, then add the chicken pieces and stir to coat. Set aside.\n", + "Heat the oil in a wok or a 12-inch skillet over high heat until it reaches 350 degrees on a deep-fat thermometer. The rice sticks cook almost instantly, so have a slotted spoon and paper towels ready before you start. Take a handful of rice sticks, break into 2- to 3-inch pieces, and drop into the hot oil. They should puff immediately and become opaque—remove them as soon as they do to prevent burning and drain on the paper towels. Repeat, bringing the oil back to 350 degrees before you add more rice sticks, until all of them are cooked.\n", + "Pour off all but 2 tablespoons of the oil and return the pan to the heat. When the oil is shimmering, add the chicken, broccoli, and almonds and cook, stirring frequently, until the chicken is lightly browned all over, about 3 minutes.\n", + "Add the kecap manis and chicken stock and bring to a boil, stirring. Reduce the heat to medium-low, cover, and simmer until the chicken is cooked through and the broccoli is tender, 3 to 4 minutes; add a little more stock if the mixture becomes too dry.\n", + "Divide the chicken and broccoli among the plates, top with the crispy noodles, and serve.\n", + "\n", + "Title: Soba Noodles with Crispy Kale;\t Ingredients: ['1 medium bunch curly kale, ribs and stems removed, leaves coarsely chopped (about 4 cups)', '1 1/4 cups unsweetened coconut flakes', '1/3 cup nutritional yeast', '1/2 tsp. kosher salt, plus more', '2 Tbsp. plus 1/2 cup extra-virgin olive oil', '8 oz. dried soba noodles', '3 Tbsp. tahini', '2 Tbsp. plus 2 tsp. soy sauce', '1 Tbsp. honey', '2 tsp. toasted sesame oil, plus more for drizzling', '1/2 tsp. crushed red pepper flakes, plus more for serving', '1 lime'] ;\t Instructions: Place racks in upper and lower thirds of oven and preheat to 375°F. Toss kale, coconut, nutritional yeast, 1/2 tsp. salt, and 2 Tbsp. olive oil in a large bowl to coat. Divide mixture evenly between 2 rimmed baking sheets and roast, tossing and rotating baking sheets halfway through, until kale is crisp and coconut is golden brown, 15–20 minutes.\n", + "While kale is roasting, cook noodles in a large pot of boiling water according to package directions. Drain and rinse under cold running water. Shake off any residual water and place noodles in a clean large bowl.\n", + "Combine tahini, soy sauce, honey, 2 tsp. sesame oil, 1/2 tsp. red pepper flakes, and remaining 1/2 cup olive oil in a small bowl. Finely grate zest from lime directly into bowl; halve lime and squeeze in juice (about 2 Tbsp.). Whisk dressing until smooth, then pour about half of it over noodles; toss to coat.\n", + "Add half of kale mixture to noodles and toss to incorporate. Drizzle in more dressing as needed, tossing until noodles are creamy; season with salt. Pile remaining kale on top. Drizzle with additional sesame oil and sprinkle with more red pepper flakes.\n", + "\n", + "Title: Noodles with Chilled Tomato Broth;\t Ingredients: ['1 1/2 lb. very ripe red tomatoes, chopped', '1 small garlic clove, smashed', '3 Tbsp. unseasoned rice vinegar', '1 Tbsp. sugar', '1 Tbsp. plus 1 tsp. kosher salt, plus more', '10 oz. thin noodles (preferably somen)', '5 large eggs, beaten to blend', '1/2 Tbsp. unsalted butter', '2 medium Persian cucumbers, halved, thinly sliced on a diagonal', '3 scallions, thinly sliced', '1/2 cup cilantro leaves with tender stems', 'Hot chili paste (such as sambal oelek; for serving)'] ;\t Instructions: Blend tomatoes, garlic, vinegar, sugar, 1 Tbsp. salt, and 2 cups water in a blender on low speed until tomato pieces are no larger than 1/4\" (it’s important to blend on low; otherwise, the tomato broth will foam up). Strain through a fine-mesh sieve into a large measuring cup, pressing on solids with a spoon to extract as much liquid as possible (you should have about 4 cups broth). Chill until ready to use.\n", + "Meanwhile, cook noodles in a large pot of boiling salted water according to package directions. Drain and rinse under cold water. Cover with damp paper towels; set aside.\n", + "Season beaten eggs with remaining 1/4 tsp. salt. Melt butter in a large nonstick skillet over medium heat. Add half of beaten eggs and swirl around skillet to make a thin egg crepe. Cook undisturbed until completely set, about 2 minutes. Slide egg crepe onto a cutting board. Repeat with remaining egg mixture, placing second egg crepe right on top of the first one. When cool enough to handle, tightly roll up eggs. Thinly slice crosswise to create long shreds.\n", + "Divide noodles among bowls. Pour tomato broth over, holding back any foam. Arrange shredded eggs, cucumbers, scallions, and cilantro in bowls. Serve with hot chili paste alongside.\n", + "Do Ahead: Tomato broth can be made 2 days ahead. Transfer to an airtight container and chill.\n", + "\n", + "Title: Sichuan-Style Chicken with Rice Noodles;\t Ingredients: ['1 1/2 bunches scallions, divided', '1 8\" piece dried kombu', '1 2\" piece ginger, peeled, thinly sliced', '3 star anise pods', '1 tablespoon Sichuan peppercorns', '1/4 cup plus 2 tablespoons soy sauce', '1 tablespoon kosher salt, plus more', '1 (3 1/2–4-pound) chicken', '8 ounces dried thin rice noodles (not vermicelli)', '2 teaspoons toasted sesame oil, divided', '1/2 bunch Tuscan kale, tough stems removed, leaves very thinly sliced (about 3 cups)', 'Pinch of sugar', '2 tablespoons unseasoned rice vinegar', '1 tablespoon furikake seasoning, plus more for serving', 'Chili oil (for serving)', 'Furikake, a dried blend of seaweed, sesame seeds, fish flakes, salt, and other seasonings, can be found at Asian markets, some supermarkets, and online.'] ;\t Instructions: Cut 1 bunch scallions into 1\" pieces; thinly slice remaining bunch of scallions and set aside. Bring 12 cups water to a brisk simmer in a large stockpot and add scallions, kombu, ginger, star anise, Sichuan peppercorns, 1/4 cup soy sauce, and 1 tablespoon salt; cook until kombu is softened, 10–15 minutes.\n", + "Add chicken to pot and reduce heat so liquid is at a very gentle simmer. Poach chicken, uncovered, until cooked through and an instant-read thermometer inserted into the thickest part of breast registers 160°F, 40–45 minutes. Transfer chicken to a plate and let cool.\n", + "Meanwhile, increase heat to mediumhigh and bring poaching liquid to a boil; cook until reduced by half, 30–45 minutes. Fish out scallions, ginger, and star anise from pot with a slotted spoon and discard. Add noodles to poaching liquid and cook according to package instructions. Drain and toss in a large bowl with 1 teaspoon sesame oil.\n", + "Combine kale, sugar, a pinch of salt, and remaining 1 teaspoon sesame oil in a medium bowl and massage kale, rubbing between your fingers, until softened and shiny, about 30 seconds. Add vinegar, rice noodles, reserved sliced scallions, 1 tablespoon furikake, and remaining 2 tablespoons soy sauce and toss to combine; season with salt.\n", + "Remove skin and bones from chicken; discard. Slice or shred meat. Serve with noodles, drizzled with chili oil and sprinkled with more furikake.\n", + "Chicken can be poached 1 day ahead; let cool, cover and chill chicken and liquid separately. Bring to room temperature before slicing. Noodle mixture can be made 3 hours ahead; store at room temperature. Moisten with more soy sauce and vinegar before serving.\n", + "\n", + "Title: Sweet Potato Noodles (Japchae);\t Ingredients: ['8 ounces sweet potato noodles', '1/2 bunch spinach (about 4 ounces), rinsed and trimmed', '2 cloves garlic, minced', '1 tablespoon plus 1 1/2 teaspoons Asian sesame oil', '1/4 teaspoon salt', '1 tablespoon vegetable oil', '6 ounces beef rib-eye, cut into 1/4- to 1/2-inch-thick strips', '1/4 cup plus 1 teaspoon soy sauce', '1/4 medium onion, sliced', '3 to 4 pyongo or shiitake mushrooms, sliced', '1 carrot, shredded or cut into thin strips', '3 green onions, cut into 1-inch pieces', '1/4 cup sugar', 'Toasted sesame seeds for garnish'] ;\t Instructions: Cook the sweet potato noodles in a large pot of boiling water for 4 to 5 minutes. Immediately drain and rinse thoroughly under cold water. Be sure not to overcook the noodles, or they will lose their chewy texture. If you like, cut the noodles with scissors into 6- to 7-inch lengths for easier eating.\n", + "Blanch the spinach in boiling water. Rinse immediately under cold water, squeeze the water from the leaves and form into a ball, and then cut the ball in half. Combine the spinach, half the garlic, 1/2 teaspoon of the sesame oil, and 1/4 teaspoon salt in a small bowl. Set aside to let the flavors soak in.\n", + "Heat the vegetable oil in a large skillet over medium-high heat. Add the beef, the remaining garlic, 1 teaspoon of the soy sauce, and 1 teaspoon of the sesame oil. Stir-fry until the beef is cooked, 3 to 4 minutes. Add the onion, mushrooms, and carrot and cook until the onion is translucent, about 3 minutes. Add the green onions and stir-fry for another minute. Remove from the heat.\n", + "In a large bowl, thoroughly combine the noodles, beef mixture, spinach, remaining 1/4 cup soy sauce, 1 tablespoon sesame oil, and the sugar. Serve warm, sprinkled with sesame seeds.\n", + "\n", + "Title: Sesame Soba Noodles with Cucumber, Bok Choy, and Mixed Greens;\t Ingredients: ['1/2 cup fresh orange juice', '1/4 cup creamy peanut butter', '2 tablespoons unseasoned rice vinegar', '2 tablespoons chopped peeled fresh ginger', '2 tablespoons fresh lime juice', '1 tablespoon finely grated orange peel', '1 tablespoon soy sauce', '2 garlic cloves, peeled', '1 1/2 teaspoons finely grated lime peel', '2 teaspoons dried crushed red pepper, divided', '1/3 cup canola oil', '8 ounces soba noodles', '1 teaspoon Asian sesame oil', '3 cups (loosely packed) mixed baby greens', '2 heads of baby bok choy, cored, thinly sliced crosswise', '1 English hothouse cucumber, cut into matchstick-size strips', '3 green onions, cut into matchstick-size strips', '1/3 cup chopped fresh cilantro plus sprigs for garnish', '2 tablespoons chopped fresh mint', 'Salted roasted peanuts'] ;\t Instructions: Puree first 9 ingredients and 1 teaspoon red pepper in blender until smooth. With machine running, gradually add canola oil through opening in lid. Season dressing to taste with salt and pepper. DO AHEAD: Can be made 1 day ahead. Cover and chill. Bring to room temperature before continuing.\n", + "Cook soba noodles in large pot of boiling salted water until tender but still firm to bite. Drain. Rinse with cold water; drain well. Using kitchen shears, cut noodles crosswise in 2 to 3 places. Drizzle noodles in strainer with sesame oil and toss to coat.\n", + "Place greens, bok choy, cucumber, green onions, chopped cilantro, and mint in large bowl. Add 1 teaspoon red pepper, dressing, and noodles; toss to coat. Season to taste with salt and pepper. Garnish with cilantro sprigs and peanuts and serve.\n", + "\n", + "Title: Lime Noodles with Vegetables, Basil, and Sesame;\t Ingredients: ['1 1/4 cups plus 2 tablespoons grape seed, corn, or other neutral oil', '10 garlic cloves, thinly sliced', '3/4 cup fresh lime juice', '1/2 cup sugar', '2 cups fresh basil leaves, preferably Thai', '1 1/2 cups fresh mint leaves', '3/4 cup white sesame seeds, plus more for garnish', '1 tablespoon salt, plus more as needed', 'About 1/2 pound assorted vegetables: carrots, parsnips, broccoli (stems are fine), bell peppers, etc., peeled and julienned', '1 pound 1/4-inch-wide dried rice noodles, soaked in hot water until softened and drained', '1/2 cup unsalted butter'] ;\t Instructions: 1. Put 3 tablespoons of the oil in a medium skillet over medium-low heat. Add the garlic and cook, stirring occasionally,until the garlic turns golden, about 10 minutes; set aside.\n", + "2. Meanwhile, combine the lime juice and sugar in a small saucepan and bring to a boil. Set aside.\n", + "3. Fill a large bowl with water and ice and set aside.\n", + "Bring a small pot of water to a boil and add the basil and mint leaves. As soon as the water returns to a boil, drain the leaves and transfer to the ice water. When cold, drain again and squeeze dry. Purée in a blender with the sesame seeds, garlic, salt, and 1 cup of the oil. (This herb paste will keep, refrigerated, for 2 days.)\n", + "4. Heat the remaining 3 tablespoons oil in a skillet over high heat. Add the vegetables and some salt and cook, tossing, just until brightly colored. Keep warm.\n", + "5. Bring a large pot of water to a boil and salt it. Cook the noodles until tender, 30 seconds. Drain and transfer to a large skillet set over high heat with the butter and lime syrup; add salt to taste and cook, tossing, until well mixed and creamy. Put the noodles in a warmed serving bowl; drizzle liberally with the basil-mint paste, top with the vegetables, garnish with the sesame seeds, and serve.\n", + "\n", + "Title: Coconut Rice Noodles with Ginger and Turmeric;\t Ingredients: ['Kosher salt', '5 oz. rice vermicelli', '2 Tbsp. virgin coconut oil or vegetable oil', '1 small red onion, thinly sliced', '4 garlic cloves, thinly sliced', '1 (1\") piece ginger, peeled, finely grated', '1 tsp. ground turmeric', '1 tsp. coarsely ground black pepper, plus more', '1 (13.5-oz.) can unsweetened coconut milk', '1 1/2 tsp. honey', '1 Tbsp. fish sauce', 'Toasted unsweetened shredded coconut (for serving)'] ;\t Instructions: Bring a large saucepan of salted water to a boil. Remove from heat; add noodles. Let sit, stirring occasionally, until al dente, about 4 minutes (time may vary by brand). Drain and rinse under cold running water.\n", + "Meanwhile, heat oil in a large saucepan over medium. Cook onion and garlic, stirring often, until softened and golden, about 3 minutes. Add ginger, turmeric, and 1 tsp. pepper and cook, stirring, just until fragrant, about 1 minute. Add coconut milk, honey, and 1/4 cup water. Bring to a simmer; cook until flavors come together, about 5 minutes.\n", + "Mix fish sauce and noodles into broth; season with salt if needed. Divide among bowls and top with shredded coconut and more pepper.\n", + "\n", + "Title: Perfect Instant Ramen;\t Ingredients: ['2 1/2 cups water', '1 pack Shin Ramyun or whatever pack of instant ramen you have', '1 egg', '1/2 teaspoon butter', '2 slices American cheese', '1/4 teaspoon roasted sesame seeds', '1/2 scallion, green part only, thinly sliced on a bias'] ;\t Instructions: Bring the water to a boil in a small pot. Open the ramen package and add the noodles to the water. Cook the noodles for 2 minutes, then add the flavor pack.\n", + "About 30 seconds before the noodles are done, turn off the heat and crack in the egg—but don't mix it in. Just pull the hot noodles gently over the raw egg and let it sit for a minute to poach.\n", + "Now get a bowl and gently pour everything slowly into it, being careful to not disrupt the egg.\n", + "Add the butter, cheese, and sesame seeds to the bowl. Mix it all around. Garnish with the scallion if you have it.\n", + "Eggy, cheesy goodness. Grilled cheese what?\n", + "\n", + "Title: Red Curry Noodle Bowls with Steak and Cabbage;\t Ingredients: ['4 ounces dried flat linguine-width rice noodles', '2 1/2 teaspoons kosher salt, plus more', '1 pound flank steak', '2 tablespoons refined coconut or vegetable oil, divided', '1/4 cup red curry paste', '2 teaspoons freshly grated ginger', '1 small head savoy cabbage (about 12 ounces), thinly sliced into long ribbons', '2 1/2 cups low-sodium beef broth', '1 (15-ounce) can coconut milk', '2 tablespoons fresh lime juice, plus wedges for serving', '4 ounces pea sprouts or shoots', '1/2 cup basil leaves, preferably purple Thai', '1/2 cup mint leaves', 'Sliced red chiles (for serving)'] ;\t Instructions: Cook noodles in a large pot of boiling salted water according to package directions. Drain, rinse with cold water, and drain again; set aside.\n", + "Meanwhile, season steak with 1 tsp. salt. Heat 1 Tbsp. oil in a large skillet over high. Sear steak 4–5 minutes per side for medium-rare. Let rest 10 minutes, then thinly slice against the grain.\n", + "Heat remaining 1 Tbsp. oil in same skillet over medium. Add curry paste and ginger and stir to combine. Stir in cabbage and remaining 1 1/2 tsp. salt and toss to coat. Cook, tossing, until cabbage just begins to wilt, about 1 minute. Add broth and coconut milk. Bring to a simmer, than remove from heat and stir in noodles and lime juice.\n", + "Divide noodle mixture among bowls. Top with steak, pea sprouts, basil, mint, and chiles. Serve with lime wedges alongside.\n", + "\n", + "Title: Salad Ramen;\t Ingredients: ['½ cup seasoned rice vinegar', '¼ cup extra-virgin olive oil', '¼ cup fresh lime juice', '¼ cup soy sauce', '2 Tbsp. toasted sesame seeds', '1 tsp. mild red pepper flakes (such as Aleppo-style or Maras)', '1 tsp. toasted sesame oil', '20 oz. fresh or 12 oz. dried ramen noodles', 'Kosher salt', '5-6 cups shredded or shaved vegetables (such as radishes, carrots, scallions, cabbage, lettuce, zucchini, and/or cucumbers)'] ;\t Instructions: Whisk vinegar, olive oil, lime juice, soy sauce, sesame seeds, mild red pepper flakes, and sesame oil in a small bowl to combine. Set dressing aside.\n", + "Cook noodles in a large pot of boiling salted water according to package directions. Drain and rinse under cold water to stop the cooking. Transfer to a large bowl, add half of reserved dressing, and toss to coat.\n", + "Divide noodles among bowls. Top with vegetables and drizzle with remaining dressing.\n", + "\n", + "Title: Golden Noodles With Chicken;\t Ingredients: ['Extra-virgin olive oil', '4 shallots, thinly sliced into rings', '1/4 cup unbleached all-purpose flour', '2 tablespoons extra virgin olive oil', '2 bone-in, skin-on chicken breasts', 'Kosher salt and freshly ground pepper', 'One 2-inch piece of ginger, peeled and finely chopped, (1 tablespoon)', '1/4 tsp. ground cumin', '1 tsp. ground tumeric', '4 cups Swanson Chicken Broth', '8 ounces vermicelli rice noodles or thin spaghetti', '1 cup leafy herbs, such as cilantro, dill and basil'] ;\t Instructions: Make the fried shallots: In a small skillet, heat ¼-inch of oil until shimmering. Working in small batches, add a handful of shallots, and cook, turning frequently, until golden, about 1 minute. Using a slotted spoon, transfer fried shallots to a paper towel lined plate.\n", + "Make the soup: In a medium pot, heat the oil over medium-high. Add the chicken and brown on both sides, about 4 minutes per side. Remove the chicken to a plate.\n", + "Reduce the heat to medium and add the ginger, turmeric, and cumin. Cook, stirring constantly, until fragrant, about 1 minute.\n", + "Pour the broth into the pot and return the chicken. Bring to a boil and then reduce to medium-low. Cover and gently simmer until the chicken breasts are just cooked through, about 10 to 12 minutes. Turn off heat. Using tongs or a slotted spoon remove the chicken breast to a plate and let cool slightly. Discard skin and bones and shred chicken meat. Keep warm.\n", + "Meanwhile, bring a large pot of salted water to a boil. Add the rice noodles or thin spaghetti and cook until al dente per package instructions. Drain.\n", + "Add noodles to broth and serve brothy noodles topped with pulled chicken, herbs, fried shallots, and black pepper.\n", + "\n", + "Title: Wok-Fried Rice Noodles with Chicken and Squid;\t Ingredients: ['3 tablespoons vegetable oil', '1 small skinless, boneless chicken thigh (about 4 ounces), chopped into 1/4\" pieces', '3 ounces squid, coarsely chopped', '2 garlic cloves, finely chopped', '10 ounces fresh rice noodles; or 8 ounces dried pad thai noodles, soaked 1 hour', '1 tablespoon sugar', '2 tablespoons Golden Mountain Seasoning Sauce or Thai thin soy sauce', '1 tablespoon chopped preserved cabbage (optional)', '1 tablespoon chopped preserved sweet radish (optional)', '2 large eggs', '4 scallions, chopped', '1 tablespoon fish sauce', 'Freshly ground white pepper', '2 cups chopped romaine lettuce', 'Hot chili paste (such as sambal oelek; for serving)'] ;\t Instructions: Heat oil in a large skillet over high. Cook chicken, squid, and garlic, stirring, until chicken is almost cooked through and garlic is golden, about 2 minutes. Add noodles and sugar. Cook, stirring, until noodles start to brown and chicken is cooked through, about 2 minutes. Stir in seasoning sauce and cabbage and radish, if using.\n", + "Push noodles to the edge of skillet and crack eggs into the center. Let eggs sizzle slightly, then break up yolks and whites with spatula. Cook until whites start to set. Toss noodles into eggs to coat and to form smaller pieces of egg. Cook, undisturbed, until underside is brown. Turn and add scallions and fish sauce. Season with pepper and toss.\n", + "Arrange lettuce on a platter; top with noodle mixture. Serve with chili paste.\n", + "\n", + "Title: Kimchi and Miso Noodle Soup;\t Ingredients: ['3 cups (200 g ) Asian mushrooms (enoki, shimeji, shiitake, oyster)', '1 tablespoon tamari or soy sauce, plus a little extra to season and serve', 'Juice of 1/2 a lemon', '2 tablespoons golden honey or agave nectar', '3 cups (250 g) soba noodles (I use 100 percent buckwheat ones)', '3 tablespoons sesame oil', 'Sea salt', '6 scallions, trimmed and finely chopped', 'A small thumb-sized piece of ginger, peeled and grated', '1 teaspoon gochujang paste or red pepper flakes', '4 cloves of garlic, thinly sliced', '3 1/2–5 ounces (100-150 g) cabbage kimchi, drained', '3 cups (250 g) purple sprouting broccoli, woody ends removed and cut into thumb-length pieces', '3 tablespoons miso paste (I use a brown rice one)', '9 ounces (250 g) extra-firm tofu', 'Sesame seeds', 'Squeeze of lemon or lime', 'Some cilantro or shiso leaves (optional)'] ;\t Instructions: First, put your mushrooms into a bowl with the tamari, lemon juice and 1 tablespoon of the honey, and put to one side to marinate for at least 15 minutes.\n", + "Cook the soba noodles according to packet instructions. Drain and run under cold water, then toss in 1 tablespoon of the sesame oil.\n", + "Heat the remaining 2 tablespoons of oil in a large soup pan over medium to high heat. Once the mushrooms have had their marinating time, drain them but keep the marinade Add the mushrooms to the pan in a single layer with a pinch of salt (you can do this in batches if you need to). Cook until the mushrooms are golden where they meet the pan, then toss and keep cooking until the mushrooms are deeply browned all over—this should take 5 minutes or so. Remove from the pan and set aside.\n", + "Fill and boil the kettle. Put the empty pan back over medium heat, add the scallions and sauté for a few minutes before adding the ginger and gochujang paste. After another minute or so, add the garlic and the drained kimchi. Sizzle until the garlic is starting to brown around the edges. Add 5 cups (1 1/4 liters) of water from the kettle along with the remaining tablespoon of honey and bring to a boil. Now, add the broccoli and simmer for 1 minute, or just until the broccoli becomes bright green.\n", + "Remove the soup from the heat. Place the miso in a small bowl and whisk it with a splash of the broth to thin it out. Stir the thinned miso into the soup. Taste your soup; you really need to get the balance right here. If the broth tastes a bit flat, you might need more salt or miso, or a splash of soy sauce.\n", + "Just before serving, cut the tofu into little 3/4-inch (2-cm) pieces—you'll have about 1 cup—and drizzle it with the reserved marinade from the mushrooms.\n", + "To serve, divide the noodles among four bowls and ladle over the soup. Top with to tofu, mushrooms, and a sprinkle of sesame seeds. Finish with more soy if you like, a squeeze of lemon or lime, and the shiso or cilantro leaves if using.\n", + "\n", + "Title: Singapore Noodles;\t Ingredients: ['8 ounces dried rice vermicelli, soaked in water until pliable', '24 small tiger shrimp, heads removed, peeled and deveined', '3 tablespoons vegetable oil', '1 small onion, cut into thin wedges', '1/2 cup fresh shelled green peas, or frozen peas, thawed', '2 teaspoons Indian curry powder', '6 ounces Cantonese roast pork or thick slice of ham, diced', '1 1/2 tablespoons fish sauce', 'Kosher salt and freshly ground black pepper', '6 sprigs cilantro, trimmed'] ;\t Instructions: Bring a pot of water to a boil over high heat and cook the noodles until tender yet firm, about 10 seconds. Use a strainer and tongs to pick up the noodles and transfer them to a bowl. In the same water cook the shrimp until opaque, about 1 minute, and drain.\n", + "Heat 1 tablespoon of the oil in a large skillet or wok over high heat. Stir-fry the onion until golden, 3 to 5 minutes. Add the remaining 2 tablespoons of oil, the noodles, and peas, and sprinkle the curry powder over the top. Toss well, making sure all of the noodles become yellow. Add the pork, shrimp, and fish sauce, and continue to stir-fry until the noodles are heated through, about 5 minutes. Adjust the seasoning with salt and pepper, if necessary, and serve garnished with cilantro.\n", + "\n", + "Title: Udon Noodle Salad;\t Ingredients: ['1 medium carrot, grated', '2 tablespoons white miso paste (found at health food stores)', '1 clove garlic, chopped', '1 tablespoon rice wine (or apple cider) vinegar', '2 teaspoons sesame oil', 'Vegetable oil cooking spray', '1 tablespoon canola oil', '1/2 pound extra-firm tofu, drained well', '4 scallions, sliced in 2-inch segments', '2 cups broccoli florets', '1 cup frozen, shelled edamame, thawed and rinsed', '1/4 pound shiitake caps, sliced (about 1 cup)', '1/4 pound cremini, sliced (about 1 cup)', '2 cups nonfat chicken broth', '1/2 pound snap peas', '1/4 teaspoon salt', '1/4 teaspoon freshly ground black pepper', '1 package (8 ounces) buckwheat udon noodles, cooked as directed on package and drained'] ;\t Instructions: Combine all dressing ingredients with 1/4 cup water in a blender; set aside. Coat a large skillet or wok with cooking spray; heat over high heat and add 1 1/2 teaspoons oil. When oil is hot, cook tofu and scallions 1 minute, then turn tofu once; cook 1 to 2 minutes more. Transfer tofu to a cutting board, cut into 1/2-inch cubes and place in a bowl with scallions. Add remaining 1 1/2 teaspoons oil to skillet. Stir in broccoli, edamame and mushrooms. Reduce heat to medium; cook, stirring often, 3 to 4 minutes. Add broth. Cover and cook until vegetables are tender, 3 to 4 minutes. Remove from heat and stir in peas, salt and pepper. Add noodles and vegetable mixture to tofu mixture. Toss with dressing to coat.\n", + "\n", + "Title: Egg Noodle;\t Ingredients: ['2 cups all-purpose flour', '1 cup semolina flour (plus extra for the board)', '1/2 teaspoon salt', '2 eggs, plus 4 egg yolks, beaten together'] ;\t Instructions: 1. In a large bowl, mix the flours and salt.\n", + "2. Make a well in the center of the dry ingredients and add the eggs. Whisk them, gradually pulling in flour from the rim, until the mixture comes together. (It will be very firm; add a few drops of water if it seems crumbly.)\n", + "3. Turn the dough out onto a semolina-dusted board. Work it with your hands until it's just smooth, about 5 to 10 minutes—it should spring back slightly when you poke it with your finger.\n", + "4. Wrap it in plastic and let it sit for 1 hour (or refrigerate it for up to a day).\n", + "5. Boil a large pot of salted water. Roll the dough out on the semolina-dusted board until it's paper-thin. Slice it into wide strips, any width you like.\n", + "6. Cook the noodles in the boiling water for 1 minute past the point when they rise to the top, about 7 to 10 minutes. Drain and serve.\n", + "\n", + "Title: Spicy Pork Bowls with Greens;\t Ingredients: ['1 (1 1/4-lb.) pork tenderloin', '3 Tbsp. sambal oelek', '2 Tbsp. light brown sugar', '1 (1\") piece ginger, peeled, finely grated', '1 garlic clove, finely grated', '3 Tbsp. soy sauce, divided', '2 1/4 tsp. toasted sesame oil, divided', '3 Tbsp. vegetable oil, divided', 'Kosher salt', '2 medium carrots, peeled, sliced', '1 bunch collard greens or Tuscan kale, ribs and stems removed, leaves sliced', '1 Tbsp. seasoned rice vinegar', 'Steamed white rice, thinly sliced scallions, and gochujang (Korean hot pepper paste; for serving)'] ;\t Instructions: Freeze tenderloin until firm around the edges, 30–45 minutes, if time permits.\n", + "Combine sambal oelek, brown sugar, ginger, garlic, 2 Tbsp. soy sauce, and 2 tsp. sesame oil in a resealable plastic bag.\n", + "Thinly slice pork with a long, sharp knife. Add to marinade, seal bag, and knead to coat. Let sit at least 10 minutes and up to 2 hours.\n", + "Heat 1 Tbsp. vegetable oil in a large nonstick skillet over medium-high. Add half of pork in a single layer; season lightly with salt. Cook, undisturbed, until browned underneath, about 1 minute. Toss pork, then continue to cook, tossing, until cooked through, about 1 minute more. Transfer to a plate. Repeat with another 1 Tbsp. vegetable oil and remaining pork. Wipe out skillet.\n", + "Heat remaining 1 Tbsp. vegetable oil in skillet over medium-high. Add carrots in a single layer and cook, undisturbed, until starting to soften and brown underneath, about 2 minutes. Add collard greens and toss to wilt. Cook, tossing occasionally, until vegetables are crisp-tender, about 2 minutes.\n", + "Combine vinegar and remaining 1 Tbsp. soy sauce and 1/4 tsp. sesame oil in a small bowl.\n", + "Divide rice among bowls; arrange vegetables and pork over. Drizzle with dressing and top with scallions. Serve gochujang alongside.\n", + "\n", + "Title: Nabeyaki Udon Soup with Chicken, Spinach, and Mushrooms;\t Ingredients: ['1/2 cup dried sardines (about 1 ounce), or 1 (5\") piece dried kombu', '5 ounces mature spinach (about 3/4 bunch), trimmed', '3/4 teaspoon kosher salt, plus more', '1/2 cup snow peas', '2 boneless, skinless chicken thighs (about 8 ounces), cut into 1\" pieces', '7 ounces thinly sliced shiitake, shimeji, or enoki mushrooms, roots trimmed', '2 (1/2-ounce) pieces fried tofu (aburaage), cut into 1/4\" slices (optional)', '3 tablespoons soy sauce', '1 teaspoon mirin', '8 ounces udon noodles', '1/2 cup sliced scallions', '1 1/2 ounces Japanese fish cake, thinly sliced (optional)', '2 large eggs'] ;\t Instructions: Place sardines or kombu in a large Dutch oven or donabe, fill with 6 cups water, and set aside at least 15 minutes or up to 1 hour.\n", + "Meanwhile, cook spinach in a medium pot of boiling salted water until just cooked through, about 1 minute. Using a slotted spoon, transfer to paper towels. Gently squeeze water from spinach, then transfer to a cutting board and cut into 2\" slices. Transfer to a plate. Return liquid to a boil, add snow peas, and cook until just cooked through, about 1 minute. Drain and transfer to plate with spinach. Wipe out pot and reserve.\n", + "Bring sardine liquid to a simmer over medium-high heat. Using slotted spoon, discard sardines, then reduce heat to medium. Add chicken and simmer until cooked through, about 5 minutes. Add mushrooms, tofu (if using), soy sauce, mirin, and remaining 3/4 tsp. salt. Cook, stirring, until mushrooms are tender, 3–5 minutes.\n", + "Meanwhile, cook udon in reserved pot 2 minutes less than package directions.\n", + "Bring chicken mixture to a simmer. Drain noodles and add immediately to pot. Add spinach, snow peas, scallions, and fish cake (if using), arranging each into sections and leaving an opening for egg.\n", + "Gently beat eggs in a small bowl with a whisk or chopsticks. Pour into broth and cook until just set, about 2 minutes.\n", + "Serve soup immediately in pot tableside, portioning into individual bowls.\n", + "\n", + "Title: Sriracha Salt;\t Ingredients: ['1 to 2 tablespoons sriracha sauce', '1 cup unrefined sea salt'] ;\t Instructions: Stir the chile sauce and the salt together thoroughly. Spread it out into a thin layer on a dry baking sheet and set in the sun for 1 to 2 days, until dry. Alternatively, you can dry it in a dehydrator, or in an oven set at 100°F overnight, until dry. When completely dry, break up any clumps with your fingers or a spoon, and transfer it to a container with a tight-fitting lid.\n", + "You can use any chile or hot sauce you like for this recipe. My favorite is Green Tabasco!\n", + "\n", + "Title: Stir-Fried Noodles with Fresh and Baked Tofu;\t Ingredients: ['2 tablespoons soy sauce', '2 tablespoons tamari', '3 tablespoons hoisin or oyster sauce', '1/4 cup stock or water', '1 tablespoon rice wine or sherry', '2 teaspoons sugar', '1/4 cup coarsely chopped cilantro plus long, pretty sprigs for garnish', 'One 8- to 10-ounce package Chinese wide-cut egg noodles', '1 carton firm tofu, drained and cut into large cubes', '2 1/2 tablespoons roasted peanut oil', '1 heaping tablespoon chopped ginger', '1 heaping tablespoon chopped garlic', '1 jalapeño chile, seeded and diced', '2 chunks baked tofu, thinly sliced', '1 onion, thinly sliced', '6 shiitake mushrooms, stems discarded, thinly sliced', '1 large broccoli, the head cut into florets, the stem peeled and sliced', '1 red or yellow bell pepper, cut into narrow strips, then halved', '2 carrots, peeled and thinly sliced', 'Salt', '4 ounces snow peas, trimmed', '1 bunch scallions, including the firm greens, cut into 1-inch lengths'] ;\t Instructions: 1. Mix the sauce ingredients together and set aside.\n", + "2. Bring a pot of water to boil for the noodles and tofu. Reduce it to a simmer, add the cubed tofu and simmer gently for 4 minutes. Lift out the tofu with a strainer and set aside. Return the water to a boil, add the noodles and cook until tender-firm, following the package directions. Drain and rinse under cold water. Toss with 1 tablespoon of the oil and set aside.\n", + "3. Set a wok or skillet over high heat. Add the remaining oil, swirl it around. When hot, add the ginger, garlic, chile, and baked tofu. Stir-fry around. When hot, add the ginger, garlic, chile, and baked tofu. Stir-fry for 1 minute, then add onion, mushrooms, broccoli, bell pepper, and carrots. Season with a few pinches of salt and stir-fry, rapidly tossing the vegetables in their pan, for 3 minutes.\n", + "4. Now add the snow peas, scallions, and boiled tofu. Stir-fry for 1 minute more, then add the noodles and the sauce. Reduce the heat, toss so that everything is evenly mingled, then cover and cook until the noodles are heated through, a matter of just a few minutes. Turn onto a large platter and garnish with sprigs of cilantro.\n", + "\n", + "Title: Cold Sesame Noodles with Broccoli and Kale;\t Ingredients: ['1 large head of broccoli, cut into large florets with some stalk attached', '2 garlic cloves, 1 finely grated, 1 thinly sliced, divided', '1 1/2 teaspoons sambal oelek', '1 tablespoon plus 1/2 cup sherry vinegar or red wine vinegar, divided', '3/4 cup vegetable oil, divided', '1 teaspoon kosher salt, plus more', '1/4 teaspoon freshly ground black pepper, plus more', '3 scallions, green parts only, thinly sliced, plus more for serving', '1 (3-inch) piece ginger, peeled, cut into 1-inch matchsticks', '4 cups chopped Tuscan kale leaves', '2 (10-ounce) packages fresh ramen noodles or 2 (3-ounce) packages dried', 'Torn mint leaves and toasted sesame seeds (for serving)'] ;\t Instructions: Preheat oven to 450°F. Toss broccoli with grated garlic, sambal oelek, 1 Tbsp. vinegar, and 1/4 cup oil on a rimmed baking sheet; season with salt and pepper. Roast, tossing occasionally, until tender and browned in spots, 20–25 minutes.\n", + "Meanwhile, whisk scallions, ginger, sliced garlic, 1 tsp. salt, 1/4 tsp. pepper, and remaining 1/2 cup vinegar and 1/2 cup oil in a large bowl. Add kale; toss to coat. Let sit at room temperature at least 15 minutes and up to 1 hour.\n", + "Cook noodles according to package directions. Drain; rinse under cold water. Add noodles and warm broccoli to kale and toss to coat. Divide among bowls and top with mint, sesame seeds, and more scallions.\n", + "\n", + "Title: Quick Pork Ramen With Carrots, Zucchini, and Bok Choy;\t Ingredients: ['1 ounce dried mushrooms (preferably shiitake or porcini)', 'Kosher salt', '16 ounces fresh or 10 ounces dried ramen noodles', '2 small heads baby bok choy, quartered lengthwise', '1 tablespoon toasted sesame oil, plus more', '1 pound ground pork', '1/2 teaspoon freshly ground black pepper', '4 scallions, thinly sliced, divided', '3 tablespoons white or yellow miso paste', '6 cups homemade chicken stock or low-sodium chicken broth', '2 tablespoons low-sodium soy sauce', '2 teaspoons Sriracha, plus more for serving', '1 medium carrot', '1 medium zucchini', '4 large soft-boiled eggs (optional)', '1/4 cup coarsely chopped basil'] ;\t Instructions: Place mushrooms in a medium bowl and cover with hot water. Let sit until ready to use.\n", + "Pour 10 cups hot water into a medium pot. Season generously with salt, cover, and bring to a boil. Cook noodles according to package directions, adding bok choy during the last minute of cooking. Drain noodles and bok choy; rinse with cold water.\n", + "Meanwhile, heat 1 Tbsp. oil in a large pot over high. Add pork, 3/4 tsp. salt, and 1/2 tsp. pepper and cook, stirring and breaking up meat slightly, 3 minutes. Add half of the scallions and cook, stirring occasionally, until pork is just cooked through, about 3 minutes more. Add miso and cook, stirring, until incorporated, about 30 seconds. Stir in broth, soy sauce, and 2 tsp. Sriracha.\n", + "Drain and slice mushrooms; add to pot. Cover and bring to a low boil. Uncover pot, reduce heat to medium, and simmer 5 minutes. Taste and adjust seasonings, if necessary.\n", + "Meanwhile, using a mandoline or the large holes on a box grater, coarsely grate carrot and zucchini until you have 1 1/2 cups each. Divide noodles, bok choy, carrot, and zucchini among bowls. Top evenly with soup, eggs, if using, basil, and remaining scallions. Serve with additional sesame oil and Sriracha for drizzling alongside.\n", + "\n", + "Title: Ramen Noodles with Kale;\t Ingredients: ['1 tablespoon sesame oil', '5 ounces shiitake mushrooms, stems removed, thinly sliced', '4 garlic cloves, minced', 'One 1- inch piece ginger, peeled and minced', '1 jalapeno chile, finely minced (seeds removed if you like it less spicy)', '1/2 teaspoon Chinese five-spice powder', 'One 10- ounce package Japanese curly noodles or chuka soba', '1 cup low- sodium vegetable broth', '4 cups chopped kale', '1 tablespoon unsalted butter', '2 scallions, chopped'] ;\t Instructions: Heat a large skillet over mediumhigh heat. Add the sesame oil and mushrooms and cook for 1 to 2 minutes, stirring once or twice, until the mushrooms start to soften, adding 1 tablespoon of water if they begin to stick. Add the garlic, ginger, and chile and reduce the heat to medium. Cook for another 1 to 2 minutes, until the mushrooms are softened and the garlic is fragrant. Sprinkle in the five-spice powder and stir to coat. Add the noodles and vegetable broth.\n", + "Cover, reduce the heat, and simmer for 4 to 5 minutes, until the noodles are tender. Add the kale and butter and cook for 1 to 2 minutes more, until the kale is wilted. Garnish with the scallions and serve immediately.\n", + "\n", + "Title: Sichuan Beef Noodle Soup with Pickled Mustard Greens;\t Ingredients: ['5 pounds boneless beef shank', '1/4 cup vegetable oil', '1 2 1/2-inch piece fresh ginger, peeled, cut into 1/3-inch-thick rounds, each smashed with flat side of knife', '3 large garlic cloves, coarsely chopped', '2 cups chopped onions', '2 1/2 tablespoons chili bean paste (Sichuan hot bean paste; dou ban jiang)', '3 whole green onions, trimmed, plus 2 cups chopped green onions (for garnish)', '1/2 cup (or more) soy sauce (do not use low-sodium)', '2 tablespoons (or more) salt', '6 whole star anise', '2 1 1/2-inch cubes Chinese yellow rock sugar (about 2 1/2 ounces) or 2 1/2 tablespoons sugar', '1/2 tablespoon Sichuan peppercorns', '2 large plum tomatoes (about 8 ounces), each cut into 4 wedges', 'Freshly ground white pepper or black pepper', '1 pound eggless Chinese wheat noodles (Shandong la mian)', '3 baby bok choy, each halved lengthwise, bottom 1 1/2 inches trimmed, rinsed (optional garnish)', 'Chopped fresh cilantro (for garnish)', 'Pickled Mustard Greens'] ;\t Instructions: Bring large pot of water to boil over high heat. Add beef; return water to boil. Reduce heat. Simmer until beef is brown on outside, turning occasionally, about 8 minutes; drain. Rinse beef under cold water until cool; cut into 1 1/2-inch cubes. Wipe out pot.\n", + "Heat 1/4 cup oil in same pot over medium-high heat. Add ginger and garlic. Sauté 1 minute. Add chopped onions; sauté until translucent, about 3 minutes. Add chili bean paste; stir 30 seconds. Add 16 cups water, whole green onions, 1/2 cup soy sauce, 2 tablespoons salt, star anise, and rock sugar. Mix in beef. Tie peppercorns in cheesecloth; add to pot. Bring soup to boil. Reduce heat to medium-low. Gently simmer uncovered 1 hour, adjusting heat to avoid boiling.\n", + "Add tomatoes to pot. Continue to simmer soup until beef is very tender, 45 to 60 minutes. Adjust seasoning, adding more soy sauce by tablespoonfuls and more salt, if desired. Season with pepper.\n", + "Meanwhile, cook noodles according to package directions. Drain well.\n", + "Divide noodles among large soup bowls. Add some bok choy to each, if desired. Ladle soup and meat over. Garnish with chopped green onions and cilantro. Serve with Pickled Mustard Greens .\n", + "Chili bean paste is a spicy, fermented soybean paste. **Star anise—**a star-shaped seedpod—is available at some supermarkets. Chinese yellow rock sugar is made from raw sugar; it is often used in Chinese sauces and teas. Despite their name, Sichuan peppercorns aren't related to regular peppercorns; the mildly hot dried berries, which resemble split peppercorns, come from the prickly ash tree. Shandong la mian are Chinese wheat noodles. Look for these ingredients at specialty foods stores and Asian markets.\n", + "\n", + "Title: Peanut Rice Noodles with Pork and Collard Greens;\t Ingredients: ['Kosher salt', '12 oz. regular-width rice stick noodles', '1/4 cup smooth natural peanut butter', '1/4 cup soy sauce', '2 Tbsp. unseasoned rice vinegar', '1 Tbsp. sugar', '2 tsp. crushed red pepper flakes', '1 Tbsp. vegetable oil', '1 lb. ground pork', '1 (1 1/2\") piece ginger, peeled, cut into matchsticks', '4 garlic cloves, thinly sliced', '1 bunch collard greens, ribs and stems removed, leaves thinly sliced'] ;\t Instructions: Bring a large saucepan of salted water to a boil. Remove from heat; add noodles. Let sit, stirring occasionally, until al dente, about 4 minutes (time may vary by brand). Drain and rinse under cold running water.\n", + "Meanwhile, whisk peanut butter, soy sauce, vinegar, sugar, red pepper flakes, and 1 cup water in a medium bowl. (Sauce will look a little broken and lumpy.)\n", + "Heat oil in a large skillet over medium. Cook pork, breaking up with 2 forks, until nearly cooked through, about 5 minutes. Add ginger and garlic; cook, stirring, until softened, about 3 minutes. Add collard greens and cook, stirring occasionally, just until wilted, about 2 minutes. Add sauce and noodles and bring to a simmer; cook, tossing occasionally, until sauce is reduced by half and coats noodles, about 3 minutes. Season with salt.\n", + "\n", + "Title: Spicy Peanut Sauce;\t Ingredients: ['3 garlic cloves, minced', '1/4 teaspoon dried hot red pepper flakes, or to taste', '1 tablespoon vegetable oil', '1 tablespoon tomato paste', '3 tablespoons creamy peanut butter', '3 tablespoons hoisin sauce', '1/2 teaspoon sugar', '3/4 cup water'] ;\t Instructions: In a small saucepan cook garlic and red pepper flakes in oil over moderate heat, stirring, until garlic is golden. Whisk in remaining ingredients and bring to a boil, whisking. Simmer sauce, whisking, until thickened, about 1 minute. Sauce may be made 3 days ahead and chilled, covered.\n", + "Serve sauce warm or at room temperature.\n", + "\n", + "Title: Spicy Shrimp and Vegetable Stir-Fry;\t Ingredients: ['1/4 cup low-sodium soy sauce', '1/4 cup sake', '2 tablespoons sugar', '1 tablespoon dark (toasted) sesame oil', '1 tablespoon chopped garlic', '1 tablespoon finely chopped or grated ginger', '1 cup large-diced red bell pepper', '1 cup large-diced green bell pepper', '1 cup large-diced onion', '1 cup cubed cabbage', '1 cup sliced carrot', '1/2 teaspoon red pepper flakes', '24 large shrimp, shelled and deveined'] ;\t Instructions: Combine first 6 ingredients in a bowl. Heat a large nonstick skillet over medium-high heat. Add soy sauce mixture; cook until lightly thickened, about 1 minute. Add vegetables and red pepper flakes. Cook, stirring constantly, until vegetables are soft, about 1 minute. Add shrimp and 1/4 cup water. Cook, stirring often, until shrimp are just cooked through, 2 to 3 minutes more. Divide among 4 bowls; serve immediately.\n", + "\n", + "Title: Spicy Dry-Fried Beef;\t Ingredients: ['12 ounces lean flank steak', '3 tablespoons peanut or vegetable oil', '2 cups julienned carrots', '1 cup julienned celery', '3 small dried red chilies, snipped on one end', '2 tablespoons soy sauce', '1 tablespoon minced ginger', '1 teaspoon minced garlic', '2 teaspoons sesame oil', '2 scallions, finely shredded', '1/2 teaspoon salt', '1/8 teaspoon freshly ground pepper'] ;\t Instructions: Cut the beef with the grain into 2-inch-wide strips. Cut each strip across the grain into 1/4-inch-thick slices, then stack the beef slices and cut across the grain into 2-inch-long matchsticks.\n", + "Heat a 14-inch flat-bottomed wok over high heat until a bead of water vaporizes within 1 to 2 seconds of contact. Swirl in 1 tablespoon of the peanut oil, add the carrots, celery, and chilies, then, using a metal spatula, stir-fry 1 minute or until the vegetables have absorbed all of the oil. Transfer the vegetables to a plate.\n", + "Swirl the remaining 2 tablespoons peanut oil into the wok, carefully add the beef, and spread it evenly in one layer in the wok. Cook undisturbed 1 minute, letting the beef begin to sear. Then stir-fry 1 minute, or until the beef starts to foam and release its juices. Continue stir-frying 2 to 3 minutes or until almost all the liquid has evaporated and the oil begins to sizzle. Reduce the heat to medium and continue stir-frying 3 minutes until the beef is well browned, all the liquid has disappeared, and the wok is almost dry. Swirl the soy sauce into the wok and stir-fry 30 seconds or until well combined. Add the ginger and garlic and stir-fry 10 seconds or until the aromatics are fragrant. Add the carrot mixture and stir-fry 30 seconds or until well combined. Add the sesame oil and scallions and sprinkle on the salt and pepper.\n", + "\n", + "Title: Easy General Tso's Chicken;\t Ingredients: ['1 pound green beans, trimmed', '7 tablespoons vegetable oil, divided', '2 1/4 teaspoons kosher salt, divided', '1 teaspoon freshly ground black pepper, divided', '1/4 cup plus 2 tablespoons cornstarch', '2 pounds boneless, skinless chicken thighs, breasts, or a mix, patted dry, cut into 1\" chunks', '1/4 cup plus 1 tablespoon honey', '1/4 cup low-sodium soy sauce', '1 large garlic clove, finely grated', '3 tablespoons unseasoned rice vinegar', '1 tablespoon Sriracha', '1 tablespoon tomato paste', '1 teaspoon finely grated ginger', '6 (or more) dried whole red chiles, such as chiles de árbol', '1 scallion, thinly sliced', 'Cooked rice (for serving)'] ;\t Instructions: Preheat oven to 425°F. Toss green beans with 1 Tbsp. oil, 1/2 tsp. salt, and 1/4 tsp. pepper on a rimmed baking sheet. Roast, tossing once halfway through, until crisp-tender and blackened in spots, 12-15 minutes.\n", + "Whisk cornstarch, 1 1/2 tsp. salt, and 1/2 tsp. pepper in a large bowl. Heat 3 Tbsp. oil in a large skillet over high. Add chicken to cornstarch mixture and toss to coat. Cook half of chicken, turning occasionally, until chicken is cooked through and a light brown crust forms, 5–7 minutes.\n", + "Meanwhile, mix honey, soy sauce, garlic, vinegar, Sriracha, tomato paste, ginger, 3 Tbsp. water, and remaining 1/4 tsp. salt and 1/4 tsp. pepper in a medium bowl.\n", + "Transfer chicken to a plate. Heat remaining 3 Tbsp. oil in skillet over high. Cook remaining chicken 5 minutes, then add chiles (you can add a few more depending on your heat preference) and cook, stirring and making sure chiles make contact with bottom of pan, until chicken is cooked through and chiles have toasted and puffed, about 1 minute more. Stir in honey mixture. Return first batch of chicken to skillet, toss to coat, and cook until sauce is reduced and thickened, about 2 minutes.\n", + "Divide chicken and green beans among plates. Top with scallions. Serve with rice alongside.\n", + "\n", + "Title: Slow-Cooked Scallions with Ginger and Chile;\t Ingredients: ['12 oz. scallions, roots trimmed', '1/2 head of garlic', '1 (2\") piece ginger, scrubbed, very thinly sliced crosswise', '2 dried chiles de árbol or 1/2 tsp. crushed red pepper flakes', '1/2 cup extra-virgin olive oil', '3/4 tsp. kosher salt', '1 Tbsp. unseasoned rice vinegar'] ;\t Instructions: Place a rack in middle of oven and preheat to 350°F. Toss scallions, garlic, ginger, chiles, oil, and salt in a shallow 2-qt. baking dish to combine.\n", + "Turn garlic cut side down, then roast vegetables, tossing 2 or 3 times, until golden brown, very tender, and crisp around edges, 60–70 minutes. Let cool slightly, then add vinegar and toss to coat.\n", + "\n", + "Title: Mediterranean Rice Noodles;\t Ingredients: ['1 package King Soba rice noodles', '2 to 3 tablespoons extra-virgin olive oil', '1/2 pound fresh green beans, ends snipped off', 'About 10 cherry tomatoes, halved', '1/4 cup pitted olives', '8 to 10 fresh basil leaves, torn', 'Zest and juice of 1 lemon', '1 to 2 teaspoons sea salt', 'Freshly ground black pepper'] ;\t Instructions: Cook the rice noodles according to the directions on the package, then run them under cold water, and drain them well. In a medium bowl, toss the noodles with the olive oil.\n", + "While the noodles are cooking, bring 4 cups of salted water to a boil. Have a bowl of ice water ready nearby. Blanch the green beans in the boiling water until they are tender and bright green, about 2 minutes, then remove them from the hot water and immediately submerge them in the ice water to stop the cooking. Drain them, and cut each bean into thirds.\n", + "Stir the beans, tomatoes, olives, basil, lemon zest, lemon juice, salt, and pepper into the bowl of noodles. Adjust the seasonings to taste, and serve.\n", + "\n", + "Title: Spicy Beef Curry;\t Ingredients: ['3 whole cloves', '1 1/2 teaspoons coriander seeds', '1 1 1/2-inch piece cinnamon stick', '1 whole star anise', '1 teaspoon cumin seeds', '1/8 teaspoon cardamom seeds (from 2 whole green cardamom pods)', '1 teaspoon fleur de sel or coarse kosher salt', '1/2 teaspoon ground mace', '10 small dried red chiles (such as chiles de árbol), stemmed', '25 long fresh cilantro stems', '1 medium red onion, chopped', '6 garlic cloves, peeled', '1 1 1/2-inch piece fresh galangal or peeled fresh ginger, thinly sliced', '1 1/2 tablespoons chopped or grated lemongrass', '3/4 cup water', '1 long mild yellow chile (such as banana chile)', '4 tablespoons vegetable oil, divided', '2 1-pound pieces beef shank (each about 2 inches thick)', '6 cups unsweetened coconut milk', '25 long fresh cilantro stems', '1 1/2 cup fish sauce (such as nam pla or nuoc nam)', '1/3 cup palm sugar', '2 4-inch-long bottoms of lemongrass stalks', '1/4 cup fresh tangerine or tangelo juice', '1/3 cup salted roasted peanuts, crushed, plus', '1/3 cup whole salted roasted peanuts for garnish', '3/4 cup fresh cilantro leaves', '3 tablespoons coconut cream'] ;\t Instructions: Combine first 6 ingredients in medium bowl. Add cold water to cover, then drain. Place spices in large wok or skillet. Dry-roast over medium-low heat until dry and fragrant, stirring constantly, about 10 minutes. Transfer mixture to spice grinder. Add salt and mace; grind to fine powder. DO AHEAD: Spice mix can be made 1 week ahead. Store airtight at room temperature.\n", + "Place chiles in small bowl; add cold water to cover. Let soak 30 minutes. Drain, reserving soaking liquid.\n", + "Combine cilantro stems, onion, garlic, galangal, and lemongrass in large wok or skillet. Dry-roast over medium heat until slightly charred and fragrant, stirring often, about 10 minutes. Add 3/4 cup water. Cover wok and cook until galangal is tender, about 35 minutes; cool in wok.\n", + "Scrape galangal mixture into processor. Add drained red chiles. Blend, adding enough reserved chile soaking liquid by tablespoonfuls to form smooth paste. Stir in spice mix. DO AHEAD: Can be made 1 week ahead. Transfer to bowl, cover, and chill.\n", + "Preheat oven to 350°F. Char yellow chile directly over gas flame or in broiler until blackened on all sides. Enclose in paper bag 10 minutes. Peel, seed, and slice chile.\n", + "Heat 3 tablespoons oil in large ovenproof pot over medium-high heat. Sprinkle beef with salt and pepper. Add to pot; sear until brown, about 2 minutes per side. Transfer beef to plate. Add coconut milk, cilantro stems, fish sauce, palm sugar, and lemongrass to same pot. Return beef to pot and bring to simmer. Cover and place pot in oven. Braise beef until tender enough to pull away from bone, about 2 1/2 hours. Transfer beef to plate and cool. Strain braising liquid from pot into bowl. Thinly slice meat.\n", + "Heat remaining 1 tablespoon oil in heavy large skillet over medium-low heat. Add curry paste. Stir until heated and fragrant, about 5 minutes. Add 1 1/2 cups reserved braising liquid and bring to boil. Add roasted chile, tangerine juice, and crushed peanuts, then beef. Simmer until sauce coats beef, about 5 minutes. Season to taste with salt and pepper.\n", + "Transfer beef curry to shallow bowl. Garnish with whole peanuts and cilantro leaves. Drizzle with coconut cream.\n", + "\n", + "Title: Spicy Coconut Curry Sauce;\t Ingredients: ['3/4 cup minced onion', '4 large garlic cloves, minced', '1/4 cup Thai red curry paste', '1/4 cup vegetable oil', '2 1/4 cups well-stirred unsweetened coconut milk (from 2 cans)', '3 tablespoons lime juice', '1 1/2 tablespoons Asian fish sauce', '1 1/2 teaspoons sugar', '1/4 to 1/2 teaspoon cayenne', '1/2 cup chopped cilantro sprigs (optional)'] ;\t Instructions: Cook onion, garlic, curry paste, and 1/4 teaspoon salt in oil in a wide 2-quart heavy saucepan over medium-low heat, stirring frequently, until onion is softened, 6 to 8 minutes.\n", + "Add coconut milk and gently simmer, stirring frequently, until reduced to 2 cups, 20 to 30 minutes.\n", + "Remove from heat and stir in lime juice, fish sauce, sugar, cayenne, cilantro (if desired), and salt to taste.\n", + "\n", + "Title: Red Curry Peanut Sauce;\t Ingredients: ['2 tablespoons vegetable oil', '1/3 cup minced green onions (about 3)', '1 tablespoon minced peeled fresh ginger', '2 garlic cloves, minced', '2 tablespoons Thai red curry paste', '3/4 cup smooth peanut butter', '1 cup canned unsweetened coconut milk', '1/2 cup (or more) low-salt chicken broth', '1 tablespoon sugar', '1 tablespoon soy sauce', '1/2 teaspoon freshly ground black pepper', '2 1/2 tablespoons fresh lime juice', '1/2 cup chopped fresh cilantro', 'Ingredient info: Thai red curry paste and unsweetened coconut milk can be found at many supermarkets and at Southeast Asian and Indian markets.'] ;\t Instructions: Heat oil in saucepan over medium heat. Add next 3 ingredients; sauté 2 minutes. Add curry paste; stir 1 minute. Whisk in peanut butter, then next 5 ingredients; bring to boil. Reduce heat to medium; simmer until reduced to 2 cups, whisking and adding broth as needed, about 5 minutes. Remove from heat; cool. Stir in lime juice. DO AHEAD: Can be made 3 days ahead. Cover; chill. Rewarm, thinning with broth.\n", + "Stir cilantro into sauce and serve.\n", + "\n", + "Title: Asian Noodle Dinner Salad;\t Ingredients: ['1 broiled 3 ounce breast of chicken shredded or 3 oz of deveined cooked shrimp', '2 cups chopped romaine lettuce', '1/2 cup cherry tomatoes', '2 scallions, sliced (both white and green parts)', '3 tbsp chopped cilantro', '1/2 cup snow peas', '2 or 3 tbsp of Asian Dressing', '1 16-ounce package of thin Chinese noodles or Soba noodles or angel hair pasta', '3 tbsp dark sesame oil', '3 tbsp soy sauce (light)', '2 tbsp balsamic or rice wine vinegar', '2 tbsp of sugar', '1 tbsp peanut butter', '2 tbsp grated ginger', 'Zest of 1/2 lemon', '1/2 tsp garlic powder'] ;\t Instructions: Take a quarter of the package of noodles for each serving and place in boiling water for 3 to 4 minutes. Cook only until just soft (al dente) but not too soft; separate the strands while boiling. Drain in colander and immediately rinse with cold water. Cool noodles in the refrigerator. Mix with other ingredients and dressing.\n", + "\n", + "Title: Rice Noodles;\t Ingredients: ['4 cups rice flour, plus more for dusting', '3 1/2 cups water', '3 tablespoons shallot oil or canola oil', '1 cup tapioca starch'] ;\t Instructions: 1. In a bowl, whisk together the rice flour and 3 1/2 cups water until smooth. Cover and allow to ferment at room temperature for 4 days.\n", + "2. Carefully pour out 1 1/2 cups water from the settled rice flour. Add 1/4 cup fresh water to the batter and stir until smooth.\n", + "3. Bring a large stockpot of salted water to a boil over high heat. Keep the water hot while you prepare the dough.\n", + "4. In a heavy-bottomed 4- to 6-quart pot, heat the oil over high heat. When the oil is hot, add the batter and turn down the heat to low. This is a two-person job: one person needs to stabilize the pot while the other one quickly and firmly stirs the batter with a wooden spoon. The dough will begin to thicken. Continue cooking, stirring continuously, for 5 to 8 minutes, until the dough is a thick, firm paste. If any dough sticks to the sides of the pot, do not scrape it off.\n", + "5. Transfer the dough to a stand mixer fitted with the dough hook and add tapioca starch. Mix on medium speed for about 10 minutes, until it forms a sticky ball.\n", + "6. Bring the water back to a boil, then adjust the heat to keep it at a vigorous simmer. While the water is heating, dust a clean work surface with flour, transfer the dough to it, and knead for another 5 minutes, until smooth. Cover the dough with plastic wrap to prevent it from drying out.\n", + "7. Prepare a large ice-water bath and place it near the stove. Put 1 1/2 cups of the dough into a potato ricer, keeping the remaining dough covered. Position the ricer directly above the center of the pot of boiling water and press firmly to extrude the noodles. As you press, smoothly lower the ricer close to the water and shake it gently from side to side to break the ends of the noodles free, allowing the noodles to fall into the simmering water. Simmer the noodles for 1 1/2 to 2 minutes, until they bunch up to one side of the pot. With a spider or tongs, carefully transfer the noodles to the ice-water bath. Once cool, transfer to a colander and let drain. Repeat with the remaining dough, replacing the ice water as needed. When all the noodles have been cooked and cooled, rinse the noodles under cold running water to remove excess starch. Drain the noodles. The noodles are best used the same day they are made, but they can be covered and refrigerated for up to 1 day.\n", + "\n", + "Title: Spicy Rice with Shrimp and Peppers;\t Ingredients: ['2 tablespoons extra-virgin olive oil', '2 teaspoons plus 1 tablespoon balsamic vinegar', '4 green onions, chopped, divided', '1 pound uncooked medium shrimp, peeled, deveined', '1 tablespoon fresh lime juice', '2 1/2 cups bottled clam juice', '1/2 teaspoon annatto powder*', '1/4 cup olive oil', '1 cup chopped onion', '1/2 green bell pepper, seeded, chopped', '1 garlic clove, chopped', '2 plum tomatoes, seeded, chopped', '2 tablespoons chopped fresh cilantro', '1/2 to 1 whole Scotch bonnet chile or habanero chile, seeded, chopped', '1 cup medium-grain white rice'] ;\t Instructions: Whisk extra-virgin olive oil, 2 teaspoons vinegar, and 2 chopped green onions in small bowl. Season with salt and pepper.\n", + "Toss shrimp with lime juice in bowl. Let stand 30 minutes. Bring clam juice and annatto powder to boil in small saucepan, stirring to dissolve. Cover and set aside.\n", + "Heat 1/4 cup olive oil in heavy large skillet over medium-high heat. Add shrimp with any juices to pan; sprinkle with salt and sauté until just opaque in center, about 3 minutes. Transfer to plate. Add onion, green pepper, and garlic to pan; sauté 2 minutes. Add tomatoes, cilantro, chile, and 1 chopped green onion to pan. Reduce heat to medium and sauté until vegetables are almost tender, about 3 minutes. Add 1 tablespoon vinegar and rice; stir 2 minutes. Add clam juice mixture. Boil rice mixture 1 minute. Reduce heat to low, cover, and cook until rice is tender and broth is absorbed, about 20 minutes. Season with salt and pepper. Stir in shrimp. Cover and cook until shrimp are heated through, about 1 minute. Transfer to bowl. Sprinkle with 1 chopped green onion. Serve with dressing.\n", + "*Available in the spice section of some supermarkets, at Latin markets, and from wholespice.com.\n", + "\n", + "Title: Weeknight Red Curry;\t Ingredients: ['1 large shallot', '6 garlic cloves', '1 (2-inch) piece ginger, peeled, cut into pieces', '2 tablespoons vegetable oil', '2 tablespoons red curry paste', '2 teaspoons ground turmeric', '1 1/2 cups whole peeled tomatoes, plus juices from one 15-ounce can or half of one 28-ounce can', '1 (13.5-ounce) can unsweetened coconut milk', 'Kosher salt', '1 pound mixed vegetables (such as cauliflower, carrots, and/or shallots), cut into 1-inch pieces', '1 pound firm white fish (such as halibut or cod), skin removed, cut into 2-inch pieces', 'Cooked rice noodles, cilantro leaves with tender stems, and lime wedges (for serving)'] ;\t Instructions: Pulse shallot, garlic, and ginger in a food processor to finely chop. Heat oil in a large saucepan over medium. Add shallot mixture and cook, stirring often, until golden brown, about 4 minutes. Add curry paste and turmeric; cook, stirring, until paste is darkened in color and mixture starts to stick to pan, about 3 minutes. Add tomatoes, breaking up with your hands, then juices. Cook, stirring often and scraping up browned bits, until tomatoes start to break down and stick to pot, about 5 minutes.\n", + "Stir in coconut milk and season with salt. Simmer, stirring occasionally to prevent sticking, until mixture is slightly thickened and flavors meld, 8–10 minutes. Add vegetables and pour in enough water to cover. Bring to a simmer and cook, stirring occasionally, until vegetables are crisp-tender, 8–10 minutes.\n", + "Season fish all over with salt and nestle into curry (add a little more water if it’s very thick). Return to a simmer and cook just until fish is cooked through, about 5 minutes.\n", + "Spoon curry over rice noodles and top with cilantro and a squeeze of lime.\n", + "Curry base (without vegetables or fish) can be made 3 days ahead. Cover and chill. Reheat over medium-low, adding water to thin as needed.\n", + "\n", + "Title: Zingy Red Sauce;\t Ingredients: ['2 garlic cloves', '1/2 cup chopped roasted red peppers from a jar (about 2)', '1/2 cup unsalted, roasted almonds', '2 tablespoons red wine vinegar', '1/4 cup extra-virgin olive oil', 'Kosher salt, freshly ground black pepper'] ;\t Instructions: Purée 2 garlic cloves, 1/2 cup chopped roasted red peppers from a jar (about 2), 1/2 cup unsalted, roasted almonds, and 2 tablespoons red wine vinegar in a food processor until smooth. With motor running, add 1/4 cup extra-virgin olive oil and process until smooth; season with kosher salt, freshly ground black pepper, and more vinegar, if desired.\n", + "DO AHEAD: Sauce can be made 2 days ahead. Cover and chill.\n", + "\n", + "Title: Spicy Everything Seasoning;\t Ingredients: ['1 1/2 tablespoons sesame seeds', '1 tablespoon poppy seeds', '1 1/2 tablespoons dehydrated chopped onion', '1 teaspoon garlic powder', 'Pinch of kosher', 'Pinch of crushed red pepper (optional)'] ;\t Instructions: In a bowl, mix the sesame seeds with the poppy seeds, onion and garlic and season with a pinch of salt. Add the crushed red pepper, if desired, toss and serve.\n", + "\n", + "Title: Gingery Chicken Soup with Zucchini “Noodles”;\t Ingredients: ['4 medium carrots (about 1 1/4 pounds), divided', '3 (3\") pieces ginger, unpeeled', '1 (3 1/2–4 pound) whole chicken', '1 medium onion, unpeeled, cut into sixths', '3 celery stalks, cut into 2\" pieces', '1 head of garlic, halved crosswise', '1 tablespoon black peppercorns', 'Handful of cilantro stems, plus leaves (for serving; optional)', '2 medium zucchini (about 10 ounces)', '2 teaspoons kosher salt, plus more', '3/4 teaspoon freshly ground black pepper, plus more', 'Lime wedges (for serving; optional)', 'A large stockpot (at least 8 quarts); a spiralizer or mandoline with a medium julienne blade'] ;\t Instructions: Scrub 2 carrots and cut into 2\" pieces. Finely grate ginger to yield 1 tsp., then thinly slice remaining ginger. Place chopped carrots, ginger slices, chicken, onion, celery, garlic, peppercorns, and cilantro stems, if using, in stockpot. Fill with cold (preferably filtered) water to cover (about 4 quarts). Cover and heat over high until mixture comes to a low boil. Immediately reduce heat to medium-low and bring to a simmer. Cook, uncovered, skimming foam and fat from the surface occasionally and reducing heat if needed so mixture does not come to a boil, until chicken is just cooked through, about 30 minutes.\n", + "Using tongs, carefully transfer chicken to a rimmed baking sheet. Let cool slightly, about 15 minutes. Remove meat from bones, discard skin, and return bones to pot. Continue to simmer until liquid is flavorful andreduced, about 2 hours. Shred chicken into bite-sized pieces and reserve.\n", + "Peel remaining 2 carrots and cut into 1/4\"-thick slices on the bias. Spiralize zucchini into noodles (alternatively, use mandoline with julienne blade). Divide zucchini noodles among bowls.\n", + "Carefully strain broth into a large bowl or another pot (you should have about 8 cups). Return broth to stockpot and bring to a simmer. Add shredded chicken, sliced carrots, 1 tsp. grated ginger, 2 tsp. salt, and 3/4 tsp. pepper and cook until carrots are tender, 5–7 minutes. Remove from heat, taste, and adjust seasoning.\n", + "Ladle soup over zucchini noodles and top with cilantro, if using. Serve with lime wedges alongside, if using.\n", + "Soup (without zucchini) can be made 3 days ahead. Cover and chill, or freeze up to 6 months. When ready to serve, rewarm soup, spiralize zucchini, and divide zucchini among bowls. Ladle soup over zucchini.\n", + "\n", + "Title: Spicy Thai Tofu with Red Bell Peppers and Peanuts;\t Ingredients: ['1/3 cup olive oil', '2 large red bell peppers, seeded, thinly sliced', '3 tablespoons minced peeled fresh ginger', '3 large garlic cloves, finely chopped', '1 14-to 16-ounce package extra-firm tofu, drained well, cut into 1-inch cubes', '3 green onions, thinly sliced on diagonal', '3 tablespoons soy sauce', '2 tablespoons fresh lime juice', '1/2 to 3/4 teaspoon dried crushed red pepper', '1 6-ounce bag baby spinach leaves', '1/3 cup chopped fresh basil', '1/3 cup lightly salted roasted peanuts'] ;\t Instructions: Heat oil in wok over high heat. Add bell peppers, ginger, and garlic; sauté until peppers just begin to soften, about 2 minutes. Add tofu and green onions; toss 2 minutes. Add next 3 ingredients. Toss to blend, about 1 minute. Add spinach in 3 additions, tossing until beginning to wilt, about 1 minute for each addition. Mix in basil. Season with salt and pepper. Sprinkle peanuts over.\n", + "\n", + "Title: Spicy Chicken Stock;\t Ingredients: ['1 (3-pound) whole chicken', '1/2 bunch celery, coarsely chopped', '1 medium onion, coarsely chopped', '1 bunch cilantro or parsley stems', '2 medium carrots, scrubbed, coarsely chopped', '1 lemongrass stalk, tough outer layers removed, lightly smashed, coarsely chopped', '8 dried chiles de árbol', '2 dried guajillo chiles', '2 jalapeños, halved lengthwise', '1 head of garlic, cut in half crosswise', '1 (3-inch) piece ginger, peeled', '3 bay leaves', '1 tablespoon coriander seeds'] ;\t Instructions: Place chicken, celery, onion, cilantro, carrots, lemongrass, chiles de árbol, guajillo chiles, jalapeños, garlic, ginger, bay leaves, and coriander in a large stockpot. Add cold water to cover, then bring to a boil over medium heat. Reduce heat and simmer, occasionally skimming fat and foam from surface, 30 minutes. Transfer chicken to a rimmed baking sheet; simmer stock 30 minutes longer.\n", + "Once chicken is cool enough to handle, remove skin and shred meat (you should have about 4 cups); discard bones and skin.\n", + "Let stock cool, then strain through a fine-mesh sieve into a large bowl, pressing on solids; discard solids.\n", + "Stock can be made 3 days ahead. Let cool; cover and chill, or freeze up to 3 months.\n", + "\n", + "Title: Pork and Noodle Soup with Shiitake and Snow Cabbage;\t Ingredients: ['1 1/2 ounces medium-size dried shiitake mushrooms (dried forest mushrooms)', '1 cup cold water', '6 cups low-salt chicken broth', '2 (1-inch-diameter 1/8-inch-thick slices) peeled fresh ginger', '1 pound fresh Shanghai noodles', '3 tablespoons peanut oil or vegetable oil, divided', '12 ounces pork butt, trimmed, cut into 2-inch-long matchstick-size strips', '1 tablespoon Shaoxing wine (Chinese rice wine) or dry Sherry', '1 tablespoon soy sauce', '1 (6 1/2-ounce) can preserved snow cabbage, well drained', '1 cup drained canned bamboo shoot strips (most of one 8-ounce can)', '3/4 teaspoon sugar'] ;\t Instructions: Place shiitake mushrooms in medium bowl. Add 1 cup cold water; let soak until soft, about 1 hour. Drain, reserving soaking liquid. Squeeze mushrooms dry. Cut off stems; discard. Thinly slice caps.\n", + "Combine broth, ginger, and reserved mushroom liquid in large saucepan; bring to boil. Cover and reduce heat to low.\n", + "Boil noodles in salted water until tender but still firm to bite, about 3 minutes. Drain; divide among 6 bowls.\n", + "Heat 14-inch-diameter flat-bottomed wok or heavy 12-inch-diameter skillet over high heat until drop of water evaporates on contact. Add 2 tablespoons oil, then pork, spreading evenly. Cook without stirring 20 seconds; then stir-fry pork until no longer pink, about 2 minutes. Stir in rice wine and soy sauce. Transfer to plate.\n", + "Add remaining 1 tablespoon oil to same wok (do not clean) over high heat. Add mushrooms; stir-fry 1 minute. Add snow cabbage, bamboo shoot strips, and sugar; stir-fry 30 seconds. Stir in pork and any accumulated juices. Stir-fry 1 minute. Top noodles with pork mixture. Divide hot broth among bowls.\n", + "\n", + "Title: Spicy Orange Chicken Stir-Fry;\t Ingredients: ['1 1/2 cups jasmine rice or long-grain white rice (10 to 11 ounces)', '3/4 cup orange juice', '3 tablespoons soy sauce', '1 tablespoon cornstarch', '2 teaspoons finely grated orange peel', '2 tablespoons vegetable oil', '1 small red onion, halved, thinly sliced', 'Large pinch of dried crushed red pepper', '1 1/2 pounds chicken cutlets, cut crosswise into 1/2-inch-wide strips', '1 8-ounce package stringless sugar snap peas'] ;\t Instructions: Cook rice according to package directions. Cover to keep warm; set aside.\n", + "Meanwhile, whisk juice, soy sauce, and cornstarch in medium bowl until cornstarch dissolves. Mix in orange peel.\n", + "Heat oil in large wok or nonstick skillet over high heat. Add onion and crushed red pepper. Stir-fry 30 seconds. Sprinkle chicken with salt and pepper. Add to wok and stir-fry until onion is crisp-tender and chicken is just cooked through, about 4 minutes. Add sugar snap peas and juice mixture. Toss until sauce thickens and comes to boil and peas are crisp-tender, about 2 minutes. Season with salt and pepper. Serve with rice.\n", + "\n", + "Title: Spicy Confit Chiles;\t Ingredients: ['16 whole medium-hot red chiles with stems (such as Fresno or red jalapeño)', '10 garlic cloves, peeled', '1 cup olive oil or 1/2 cup olive oil and 1/2 cup vegetable oil', '1 teaspoon kosher salt, plus more'] ;\t Instructions: Bring chiles, garlic, oil, and 1 tsp. salt to a gentle simmer (oil should be barely bubbling) in a small saucepan over medium heat. Reduce heat immediately to maintain gentle simmer and cook until chiles and garlic are tender, 1–1 1/2 hours. Let cool.\n", + "Confit chiles can be made 2 weeks ahead. Cover and chill, or freeze up to 3 months.\n", + "\n", + "Title: Spicy Tofu Crumbles;\t Ingredients: ['1 pound extra-firm tofu, sliced 3/4 inch thick', '2 tablespoons vegetable oil', '1 Fresno chile, thinly sliced', '3 tablespoons soy sauce', '2 tablespoons mirin', '2 tablespoons Sriracha or gochujang (Korean hot pepper paste)', '2 tablespoons unseasoned rice vinegar', '2 teaspoons toasted sesame oil', '1 teaspoon finely grated fresh ginger'] ;\t Instructions: Arrange tofu slices in a single layer on a paper towel–lined plate and cover with a few more paper towels. Press down firmly on tofu with your hands to expel excess liquid.\n", + "Heat vegetable oil in a large skillet, preferably cast iron. Cook tofu, turning once, until browned, 7–10 minutes total. Transfer to a plate and let cool.\n", + "Meanwhile, whisk chile, soy sauce, mirin, Sriracha, vinegar, sesame oil, and ginger in a medium bowl to combine.\n", + "Crumble tofu into small pieces and add to bowl; toss to combine.\n", + "Crumbles can be made 5 days ahead. Cover and chill.\n", + "\n", + "Title: Pork Noodle Soup with Cinnamon and Anise;\t Ingredients: ['2 1/2 pounds country-style pork ribs', '6 cups water', '2/3 cup soy sauce', '2/3 cup Chinese Shaoxing wine or medium-dry Sherry', '1/4 cup packed dark brown sugar', '1 head garlic, halved crosswise', '3 (3-inch) cinnamon sticks', '1 whole star anise', '5 1/2 ounces bean thread (cellophane) noodles', 'Garnish: chopped cilantro; sliced scallions'] ;\t Instructions: Gently simmer all ingredients except noodles in a 6-quart heavy pot, covered, skimming as needed, until pork is very tender, 1 1/2 to 2 hours.\n", + "Transfer pork to a bowl. Discard bones, spices, and garlic. Coarsely shred meat. Skim fat from broth, then return meat and bring to a simmer. Rinse noodles, then stir into broth and simmer, uncovered, stirring occasionally, until noodles are translucent and tender, about 6 minutes.\n", + "\n", + "Title: Creamy Ginger Dressing;\t Ingredients: ['1/3 cup silken tofu', '1 teaspoon finely grated lemon zest', '2 tablespoons fresh lemon juice', '2 tablespoons unseasoned rice vinegar', '1 teaspoon Dijon mustard', '1 tablespoon coconut palm sugar', '2 tablespoons minced fresh ginger', '1/2 teaspoon minced garlic', '1/4 teaspoon kosher salt', '2 tablespoons extra-virgin olive oil', 'Freshly ground white pepper'] ;\t Instructions: In a blender, combine the tofu, lemon zest, lemon juice, vinegar, mustard, sugar, ginger, garlic, and salt. With the blender running, slowly pour in the oil through the hole in the lid and blend until emulsified. Season with white pepper.\n", + "\n", + "Title: Kashmiri Hot Sauce;\t Ingredients: ['1/2 teaspoon fennel seeds', '1/4 teaspoon black or brown mustard seeds', '1 medium tomato, halved crosswise, seeds removed', '5 fresh red chiles (such as Fresno)', '2 tablespoons distilled white vinegar', '1 teaspoon Kashmiri chili powder or paprika', '1 teaspoon kosher salt', '1/2 teaspoon sugar', 'A spice mill or mortar and pestle'] ;\t Instructions: Toast fennel seeds and mustard seeds in a dry small saucepan over medium heat, shaking pan often, until fragrant, about 45 seconds. Transfer to a plate and let cool. Finely grind in spice mill or with mortar and pestle. Transfer back to pan.\n", + "Pulse tomato and chiles in a food processor until finely ground. Transfer to saucepan with ground spices and mix in vinegar, chili powder, salt, and sugar. Bring to a simmer over medium heat, stirring often; cook until chiles are soft and sauce is slightly thickened, 5–7 minutes. Let cool.\n", + "Hot sauce can be made 1 week ahead. Cover and chill.\n", + "\n", + "Title: Spicy Kimchi Tofu Stew;\t Ingredients: ['Kosher salt', '1 16-ounce package silken tofu, cut into 1\" pieces', '1 tablespoon vegetable oil', '4 cups gently squeezed cabbage kimchi, chopped, plus 1 cup liquid', '2 tablespoons gochujang (Korean hot pepper paste)', '8 scallions, cut into 1\" pieces', '2 tablespoons reduced-sodium soy sauce', '1 tablespoon toasted sesame oil', 'Freshly ground black pepper', '6 large egg yolks', '2 tablespoons toasted sesame seeds'] ;\t Instructions: Bring a large pot of salted water to a boil. Reduce heat, carefully add tofu, and simmer gently until slightly puffed and firmed up, about 4 minutes. Using a slotted spoon, transfer tofu to a medium bowl.\n", + "Heat vegetable oil in a large heavy pot over medium-high heat. Add kimchi and gochujang and cook, stirring often, until beginning to brown, 5–8 minutes. Add kimchi liquid and 8 cups water. Bring to a boil, reduce heat, and simmer until kimchi is softened and translucent, 35–40 minutes.\n", + "Add scallions, soy sauce, and tofu; simmer gently until tofu has absorbed flavors, 20–25 minutes (tofu will fall apart a little). Add sesame oil; season with salt and pepper. Ladle stew into bowls; top each with an egg yolk and sesame seeds.\n", + "\n", + "Title: Spicy Scallion and Onion Salad;\t Ingredients: ['1/4 medium white onion, thinly sliced', '1 bunch scallions, julienned', '1 tablespoon gochugaru (Korean red pepper powder)', '1 tablespoon sugar', '1 teaspoon kosher salt, plus more', '1/2 teaspoon freshly ground black pepper, plus more', '1 teaspoon distilled white vinegar'] ;\t Instructions: Place onion and scallions in a medium bowl of cold water. Chill until scallions curl, at least 20 minutes.\n", + "Meanwhile, whisk gochugaru, sugar, 1 teaspoon salt, 1/2 teaspoon pepper, and 1 tablespoon water in a medium bowl. Let sit, whisking occasionally, until sugar is dissolved and sauce looks shiny, about 10 minutes.\n", + "Drain onion and scallions and spin in a salad spinner or pat dry. Transfer to bowl with gochugaru sauce. Add vinegar and toss to coat; season with salt and pepper.\n", + "Do ahead: Onion and scallions can be soaked 1 day ahead. Keep chilled.\n", + "\n", + "Title: Spicy Tofu With Pickled Shiitake Mushrooms;\t Ingredients: ['6 ounces shiitake mushrooms, stems removed, caps thinly sliced', '1/3 cup sugar', '1/2 cup plus 5 teaspoons soy sauce', '1/2 cup plus 5 teaspoons unseasoned rice vinegar', '1 1/2 cups short-grain brown or white sushi rice', 'Kosher salt', '2 tablespoons dried wakame (seaweed)', '5 teaspoons spicy black bean paste', '1 tablespoon honey', '1 1/2 teaspoons toasted sesame oil', '1 (14-ounce) package firm tofu, drained, patted dry, cut into 3/4-inch pieces', '3 scallions, thinly sliced on a diagonal', '1/4 cup coarsely chopped unsalted, roasted, skin-on peanuts', 'Tobiko (for serving; optional)'] ;\t Instructions: Bring mushrooms, sugar, 1/2 cup soy sauce, 1/2 cup vinegar, and 1 cup water to a simmer in a small saucepan over medium-high heat and cook, stirring occasionally, until sugar is dissolved, about 5 minutes. Transfer mushrooms to a medium bowl with a slotted spoon. Let brine cool, then pour over mushrooms. Cover and chill at least 1 hour.\n", + "Meanwhile, rinse rice until water runs clear (this removes surface starch and keeps rice from getting gummy). Combine rice and 2 cups water in a medium saucepan, season with salt, and let sit 30 minutes.\n", + "Bring rice to a boil. Reduce heat to low, cover, and cook until tender, 30–35 minutes (you can also use a rice cooker). Remove from heat and let sit, covered, 15 minutes; fluff with a fork. Keep warm.\n", + "Soak wakame in 1/2 cup cold water in a small bowl until softened, 6–8 minutes. Drain and mix in a clean small bowl with black bean paste, honey, oil, remaining 5 tsp. soy sauce, and remaining 5 tsp. vinegar. Add tofu to spicy black bean shoyu, season with salt, and gently toss. Let sit 10 minutes to let flavors meld. Taste and season with more salt if needed.\n", + "Divide rice among bowls and spoon tofu mixture on top of rice. Arrange drained pickled shiitake mushrooms, scallions, peanuts, and some tobiko, if using, around tofu mixture.\n", + "Mushrooms can be pickled 5 days ahead. Keep chilled.\n", + "\n", + "Title: Spicy Baked Pasta With Cheddar and Broccoli Rabe;\t Ingredients: ['Kosher salt', '1 lb. rigatoni, ziti, or fusilli', '8 Tbsp. extra-virgin olive oil, divided', '3 large leeks, white and pale green parts only, halved lengthwise, thinly sliced into half-moons', 'Freshly ground black pepper', '1 tsp. (or more) crushed red pepper flakes', '2 bunches broccoli rabe or 3 bunches baby broccolini, trimmed, coarsely chopped', '1 cup heavy cream', '12 oz. sharp white cheddar, coarsely grated (about 3 cups), divided', '1 cup chopped chives, divided', '1 cup coarse fresh breadcrumbs or panko (Japanese breadcrumbs)'] ;\t Instructions: Preheat oven to 425°F. Bring a large pot of water to a boil, then add a generous amount of salt. Cook pasta, stirring occasionally to keep it from sticking together, until just barely al dente, about 2 minutes less than package directions. Drain pasta, reserving 1 cup pasta cooking liquid.\n", + "While you are cooking the pasta, get the broccoli rabe going. Heat 5 Tbsp. oil in a large Dutch oven or other heavy pot over medium–high. Add leeks and season with salt and black pepper. Cook, stirring occasionally, until leeks are softened (but not so much that they don’t have any texture left) and starting to brown, 8–10 minutes.\n", + "Add red pepper flakes to leeks and stir to incorporate. Add broccoli rabe by the handful, stirring to combine and allowing each addition to wilt before adding more. Season with salt and black pepper. Once all of the broccoli rabe has been added, cook, stirring occasionally, until bright green and wilted, about 2 minutes. Remove pot from heat and set aside.\n", + "Add pasta to reserved broccoli rabe mixture along with cream, three-quarters of the cheese, ½ cup chives, and reserved pasta cooking liquid; mix well. Season with salt and black pepper and add more red pepper flakes if you prefer more heat (keep in mind that the saltiness and spiciness will increase as the pasta bakes).\n", + "Transfer pasta to a 3-qt. baking dish (or, if your Dutch oven is ovenproof, just leave it in there). Toss breadcrumbs and remaining 3 Tbsp. oil in a medium bowl until coated; season with salt and black pepper. Scatter over pasta, then sprinkle evenly with remaining cheese. Bake until pasta is bubbling across the entire surface and breadcrumbs are deep golden brown, 30–35 minutes. Let cool slightly.\n", + "Scatter remaining chives over pasta just before serving.\n", + "\n", + "Title: Spicy Spaghetti with Fennel and Herbs;\t Ingredients: ['1 3-ounce package pancetta (Italian bacon), chopped', '1 tablespoon olive oil', '3 garlic cloves, chopped', '2 large red jalapeño chiles, seeded, finely chopped (about 1/4 cup)', '2 large fennel bulbs, stalks trimmed, cut into thin wedges with some core attached', '1 1/2 cups low-salt chicken broth', '4 tablespoons finely chopped fresh Italian parsley, divided', '2 tablespoons fresh lemon juice', '11/2 teaspoons crushed fennel seeds', '1 pound spaghetti', '2 tablespoons extra-virgin olive oil', '1 1/2 cups finely grated Pecorino Romano or Pecorino Toscano cheese, divided'] ;\t Instructions: Sauté pancetta in large skillet over medium heat until pancetta is golden. Using slotted spoon, transfer pancetta to paper towels. Add 1 tablespoon oil to drippings in skillet. Add garlic and chiles; sauté over medium heat 1 minute. Add fennel; cook until beginning to soften, 5 minutes. Mix in broth, 2 tablespoons parsley, lemon juice, and fennel seeds. Bring to boil. Reduce heat to low, cover, and cook until fennel is very tender, 20 minutes. Remove from heat. Season with salt and pepper.\n", + "Cook pasta until tender; drain. Reserve 1 cup cooking liquid. Return pasta to pot.\n", + "Uncover skillet with fennel mixture and return to high heat. Cook until almost all liquid is absorbed, about 4 minutes. Add fennel to pasta. Stir in 2 tablespoons oil, 1/2 cup cheese, and pancetta. Add cooking liquid by 1/4 cupfuls if dry. Toss pasta; transfer to serving bowl. Sprinkle 2 tablespoons parsley over. Serve with cheese.\n", + "\n", + "Title: Spicy Feel-Good Chicken Soup;\t Ingredients: ['Spicy Chicken Stock', '1 (2-pound) kabocha squash', '4 cups thin wedges mixed cabbages (such as bok choy, Napa, and savoy)', '4 cups cooked chicken (see Spicy Chicken Stock)', 'Kosher salt, freshly ground pepper', '1 jalapeño, thinly sliced', 'Basil leaves, cilantro leaves with tender stems, and chili oil (for serving)', '1 (2-inch) piece ginger, peeled, finely grated', '3 limes, cut into wedges'] ;\t Instructions: Heat stock in a large pot over medium.\n", + "Meanwhile, cut squash into 4 wedges and remove seeds. Cut each wedge into 4 pieces. Add squash to stock and simmer until tender, 8–10 minutes. Add cabbage and cooked chicken and cook until warmed through, about 4 minutes. Season with salt and pepper.\n", + "Divide soup among bowls. Top with jalapeño and some basil and cilantro; drizzle with chili oil and finish with a pinch of ginger. Serve with lime wedges for squeezing over.\n", + "Soup (without toppings) can be made 3 days ahead. Let cool; cover and chill.\n", + "\n", + "Title: Pok Pok-Style Hot Wings with Peanuts and Cilantro;\t Ingredients: ['2 pounds chicken wings, tips removed, drumettes and flats separated, patted dry', '2 teaspoons vegetable oil', '1/2 teaspoon kosher salt', '1/4 cup sugar', '1/2 medium garlic clove, finely grated', '1/4 cup fish sauce', '1–2 jalapeño or serrano chiles, stemmed, seeded, finely chopped', '1/2 cup finely chopped roasted peanuts', '3 tablespoons chopped fresh cilantro'] ;\t Instructions: Preheat oven to 500°F. Set a wire rack inside a large rimmed baking sheet. Toss wings, oil, and salt in a large bowl. Arrange wings in a single layer on rack and bake until golden brown, crispy, and cooked through, about 30 minutes.\n", + "Heat a small saucepan over medium. Sprinkle a thin layer of sugar into pan, let melt, then add another layer (no stirring necessary). Repeat until all sugar is melted and turns into a syrup. Cook the syrup undisturbed until it becomes deep amber in color and smells nutty, 2–3 minutes. Remove from heat and slowly whisk in garlic and fish sauce (it might splatter); stir until smooth.\n", + "Place cooked wings in a large bowl and toss well with glaze to coat. Add jalapeños, peanuts, and cilantro, toss, and serve.\n", + "\n", + "Title: Spaghetti with No-Cook Puttanesca;\t Ingredients: ['2 beefsteak tomatoes (about 1 lb.), halved crosswise, seeds removed', '2 garlic cloves, finely grated', '1 tsp. crushed red pepper flakes', '2 tsp. kosher salt, plus more', '1 1/2 cups cherry tomatoes, halved', '1 cup Castelvetrano olives, crushed, pits removed', '2 Tbsp. drained capers', '1/4 cup extra-virgin olive oil, plus more for drizzling', '12 oz. spaghetti', '1/4 cup finely chopped parsley', '3 Tbsp. unsalted butter, cut into pieces'] ;\t Instructions: Pulse beefsteak tomatoes, garlic, red pepper flakes, and 2 tsp. salt in a food processor until smooth; transfer sauce to a large bowl and mix in cherry tomatoes, olives, capers, and 1/4 cup oil.\n", + "Cook spaghetti in a large pot of boiling salted water, stirring occasionally, until al dente. Drain pasta, reserving 1/4 cup pasta cooking liquid.\n", + "Add pasta, parsley, and butter to sauce. Toss vigorously with tongs, adding a splash of pasta cooking liquid or more as needed to create an emulsified sauce that coats pasta. Divide among bowls and drizzle with more oil.\n", + "\n" + ] + } + ], + "source": [ + "pretty_print_recipe(noodles)" + ] + }, + { + "cell_type": "markdown", + "id": "17111112", + "metadata": {}, + "source": [ + "## Retrieval Augmented Generation (RAG) with OpenAI Chat API\n", + "\n", + "Now, let's use the OpenAI Chat API to generate a response based on the retrieved documents." + ] + }, + { + "cell_type": "markdown", + "id": "17111114", + "metadata": {}, + "source": [ + "You can find your API keys in your OpenAI dashboard." + ] + }, + { + "cell_type": "markdown", + "id": "17111116", + "metadata": {}, + "source": [ + "Now, perform the RAG query:" + ] + }, + { + "cell_type": "code", + "execution_count": 13, + "id": "17111117", + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "The recipe that best fits your query for making spicy noodles is \"Liu Shaokun's Spicy Buckwheat Noodles with Chicken.\" Here's how you can make it:\n", + "\n", + "**Title**: Liu Shaokun's Spicy Buckwheat Noodles with Chicken\n", + "\n", + "**Ingredients**:\n", + "- 3 cups chicken broth or water (24 fl oz)\n", + "- 1 lb skinless boneless chicken breast halves (2)\n", + "- 1/2 lb dried buckwheat noodles such as soba noodles\n", + "- 1 tablespoon peanut oil\n", + "- 3 tablespoons Chinese black vinegar\n", + "- 1 tablespoon light soy sauce\n", + "- 1 tablespoon dark soy sauce\n", + "- 1 tablespoon chile oil containing sesame oil (such as Chiu Chow Chili Oil from Lee Kum Kee), plus some of the sediment from the jar\n", + "- 2 garlic cloves, minced\n", + "- 1/2 teaspoon sugar\n", + "- 1/8 teaspoon salt\n", + "- 3 scallions (green parts only), thinly sliced\n", + "- 2 tablespoons soy nuts (roasted salted soybeans)\n", + "\n", + "**Instructions**:\n", + "1. Bring the chicken broth to a simmer in a 3-quart saucepan. Add chicken and simmer, uncovered, for 6 minutes. Remove the pan from heat and cover, letting it stand until the chicken is cooked through, about 15 minutes. Transfer the chicken to a plate and allow it to cool for at least 10 minutes, reserving the broth for another use.\n", + "2. While the chicken is poaching, bring 4 quarts of salted cold water to a boil in a 5- to 6-quart saucepan over moderately high heat. Stir in the noodles, then add 1/2 cup cold water. When the water returns to a boil, add another 1/2 cup cold water, bringing it to a boil again, stirring. Repeat once more, or until the noodles are just tender but still firm and chewy throughout.\n", + "3. Drain the noodles in a colander and rinse well under cold water to cool, then drain thoroughly. Toss the noodles with the peanut oil in a large bowl.\n", + "4. Stir together the vinegar, soy sauces, chile oil with sediment, garlic, sugar, and salt in another bowl until the sugar is dissolved. Add this mixture to the noodles and toss until coated.\n", + "5. Shred the chicken with your fingers into 1/4-inch-wide strips. Add to the noodles, tossing to combine. Sprinkle with scallions and soy nuts.\n", + "\n", + "This recipe is a delightful way to enjoy spicy noodles with a good balance of flavors from the soy sauces and the heat from the chile oil. If you’re looking for a vegetarian version, you might substitute the chicken with tofu or your choice of vegetables. Enjoy your spicy noodles! If you meant a different style of spicy noodles, try searching for \"Thai spicy noodles\" or \"Sichuan spicy noodles\" for a broader range of options.\n" + ] + } + ], + "source": [ + "from openai import OpenAI\n", + "\n", + "openai_client = OpenAI(api_key=OPENAI_API_KEY)\n", + "\n", + "query = \"How do I make spicy noodles?\"\n", + "search_results = semantic_search_with_reranking(query)\n", + "\n", + "summary = openai_client.chat.completions.create(\n", + " model=\"gpt-4o\",\n", + " messages=[\n", + " {\"role\": \"system\", \"content\": \"you are a personal assistant helping to explain the best recipes for users based on their query and the supplied recipes (seperated by \\n\\n). You must pick one recipe which best fits the query, and print out the title, ingredients, and instructions in an easy to understand way. If none of the recipes fit the query, supply a query the user might be able to use to find a recipe. Feel free to provide comments about the recipe that are related to the query, including alternative query.\"},\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Answer the following question:\"\n", + " + query\n", + " + \"by using the following text:\"\n", + " + str(search_results['hits']['hits'][0][\"_source\"]),\n", + " },\n", + " ],\n", + ")\n", + "\n", + "print(summary.choices[0].message.content)" + ] + }, + { + "cell_type": "markdown", + "id": "17111120", + "metadata": {}, + "source": [ + "## Clean up resources\n", + "\n", + "Delete the inference endpoints and the index." + ] + }, + { + "cell_type": "code", + "execution_count": 14, + "id": "17111121", + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "ObjectApiResponse({'acknowledged': True, 'pipelines': [], 'indexes': []})" + ] + }, + "execution_count": 14, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "client.indices.delete(index=\"recipes-index-voyageai\")\n", + "client.inference.delete(inference_id=\"voyageai_embeddings\")\n", + "client.inference.delete(inference_id=\"voyageai_rerank\")\n" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "id": "6f994adc-cae8-45ce-a097-9ad892f73c63", + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.10.14" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +}