fix(chatqna): handle max_tokens=None after pydantic upgrade (el-salvador)
Cherry-pick of MR !262 (merged) onto release/el-salvador.
Same fix: conditionally omit max_tokens from LLMParams when None, so the LLM uses its own default. Pydantic >=2.13 rejects None for int fields.