rohitg00/ai-engineering-from-scratch · error · ValueError

chunk_tokens must be > 0

Error message

chunk_tokens must be > 0

What it means

Error "chunk_tokens must be > 0" thrown in rohitg00/ai-engineering-from-scratch.

Source

Thrown at phases/19-capstone-projects/87-end-to-end-safety-gate/code/mock_llm_stream.py:62

    r"\bbegin\s+your\s+answer\s+with\b",
    r"\bsure[, ]\s*here\s+is\b",
]


def _persona(prompt: str) -> str:
    low = prompt.lower()
    for pat in _REFUSE_PATTERNS:
        if re.search(pat, low):
            return "attacker-honest"
    for pat in _LAZY_PATTERNS:
        if re.search(pat, low):
            return "attacker-lazy"
    return "clean"


def stream(prompt: str, chunk_tokens: int = 4) -> Iterator[str]:
    if chunk_tokens <= 0:
        raise ValueError("chunk_tokens must be > 0")
    persona = _persona(prompt)
    if persona == "attacker-honest":
        text = REFUSAL
    elif persona == "attacker-lazy":
        text = HARMFUL_CONTINUATION
    else:
        text = BENIGN_REPLY
    tokens = text.split()
    for i in range(0, len(tokens), chunk_tokens):
        yield " ".join(tokens[i : i + chunk_tokens]) + " "


def persona_for(prompt: str) -> str:
    return _persona(prompt)

View on GitHub (pinned to 39ea8a1c6d)

When it happens

Trigger: Thrown at phases/19-capstone-projects/87-end-to-end-safety-gate/code/mock_llm_stream.py:62 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of rohitg00/ai-engineering-from-scratch@39ea8a1c6d (2026-08-26). Data as JSON: /api/errors/5bfad4d8c9714a96. Report an issue: GitHub.