Customizing AI Tutor Responses with Model Parameters in JavaScript

Exploring Model Parameters

Welcome back! In the previous lesson, you learned how to send a simple message to DeepSeek's language model and receive a response. Now, we will take a step further by exploring model parameters that allow you to customize the AI tutor's responses. These parameters are crucial for tailoring the tutor's behavior to meet specific educational needs. In this lesson, we will focus on four key parameters: max_tokens, temperature, presence_penalty, and frequency_penalty. Understanding these parameters will enable you to control the creativity, length, and content of the AI's explanations, enhancing your personal tutor's effectiveness.

Controlling Response Length with Max Tokens

The max_tokens parameter sets a hard limit on the number of tokens the AI can generate in its response. A "token" can be a whole word or just part of a word. For example, "tutor" might be one token, while "explanation" could be split into multiple tokens. It's important to note that token counts vary across different models, words, and languages — so the same text might have a different token count depending on these factors.

When you set max_tokens, you specify the maximum number of tokens the AI can produce. This is a strict limit, meaning the model will stop generating text once it reaches this count, even if it results in an incomplete answer.

Here's an example where we set max_tokens to 150 using JavaScript:

JavaScript
const { OpenAI } = require("openai");

// Initialize the DeepSeek client
const client = new OpenAI();

// Define a query
const prompt = "Explain the water cycle in simple terms.";

// Send a request with max_tokens set to 150
async function getResponse() {
  const response = await client.chat.completions.create({
    model: "deepseek-ai/DeepSeek-V3",
    messages: [{ role: "user", content: prompt }],
    max_tokens: 150
  });

  const reply = response.choices[0].message.content.trim();
  console.log("Answer:", reply);
}

getResponse();

By setting max_tokens to 150, you impose a hard limit on the number of tokens the AI tutor can generate in its explanation. This may result in responses being abruptly cut off if the model hasn't completed its intended thought. Importantly, the max_tokens parameter doesn't make the model inherently more concise or brief — it simply restricts explanation length. The model isn't consciously summarizing or adjusting content to fit within this limit; rather, it continues generating text until reaching the token limit. Primarily, this parameter is valuable for managing usage rates and controlling the cost of API requests when building your personal tutor.

Sign up

Join the 1M+ learners on CodeSignal

Be a part of our community of 1M+ users who develop and demonstrate their skills on CodeSignal