diff --git a/docs/backend/structured_outputs.ipynb b/docs/backend/structured_outputs.ipynb index acb2620db..6fb611279 100644 --- a/docs/backend/structured_outputs.ipynb +++ b/docs/backend/structured_outputs.ipynb @@ -385,6 +385,10 @@ "import json\n", "from pydantic import BaseModel, Field\n", "\n", + "from transformers import AutoTokenizer\n", + "\n", + "tokenizer = AutoTokenizer.from_pretrained(\"meta-llama/Meta-Llama-3.1-8B-Instruct\")\n", + "\n", "\n", "# Define the schema using Pydantic\n", "class CapitalInfo(BaseModel):\n", @@ -393,10 +397,19 @@ "\n", "\n", "# Make API request\n", + "messages = [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Here is the information of the capital of France in the JSON format.\\n\",\n", + " }\n", + "]\n", + "text = tokenizer.apply_chat_template(\n", + " messages, tokenize=False, add_generation_prompt=True\n", + ")\n", "response = requests.post(\n", " f\"http://localhost:{port}/generate\",\n", " json={\n", - " \"text\": \"Here is the information of the capital of France in the JSON format.\\n\",\n", + " \"text\": text,\n", " \"sampling_params\": {\n", " \"temperature\": 0,\n", " \"max_new_tokens\": 64,\n", @@ -441,7 +454,7 @@ "response = requests.post(\n", " f\"http://localhost:{port}/generate\",\n", " json={\n", - " \"text\": \"Here is the information of the capital of France in the JSON format.\\n\",\n", + " \"text\": text,\n", " \"sampling_params\": {\n", " \"temperature\": 0,\n", " \"max_new_tokens\": 64,\n", @@ -466,10 +479,19 @@ "metadata": {}, "outputs": [], "source": [ + "messages = [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Give me the information of the capital of France.\",\n", + " }\n", + "]\n", + "text = tokenizer.apply_chat_template(\n", + " messages, tokenize=False, add_generation_prompt=True\n", + ")\n", "response = requests.post(\n", " f\"http://localhost:{port}/generate\",\n", " json={\n", - " \"text\": \"Give me the information of the capital of France.\",\n", + " \"text\": text,\n", " \"sampling_params\": {\n", " \"max_new_tokens\": 128,\n", " \"temperature\": 0,\n", @@ -503,10 +525,19 @@ "metadata": {}, "outputs": [], "source": [ + "messages = [\n", + " {\n", + " \"role\": \"user\",\n", + " \"content\": \"Paris is the capital of\",\n", + " }\n", + "]\n", + "text = tokenizer.apply_chat_template(\n", + " messages, tokenize=False, add_generation_prompt=True\n", + ")\n", "response = requests.post(\n", " f\"http://localhost:{port}/generate\",\n", " json={\n", - " \"text\": \"Paris is the capital of\",\n", + " \"text\": text,\n", " \"sampling_params\": {\n", " \"temperature\": 0,\n", " \"max_new_tokens\": 64,\n",