feat: read max_tokens from model config with fallback to 1000 for title and tag generation

Improves title and tag generation by using the max_tokens value from the model configuration when available, with a fallback to the previous default of 1000.

This change is necessary for models like Gemini Pro that generate longer responses and require a higher token limit to successfully generate titles or tags.
This commit is contained in:
Athanasios Oikonomou 2025-05-18 22:44:51 +03:00 committed by Athanasios Oikonomou
parent 56740ab8d6
commit eabdd4a140

View File

@ -192,15 +192,19 @@ async def generate_title(
},
)
max_tokens = (
models[task_model_id].get("info", {}).get("params", {}).get("max_tokens", 1000)
)
payload = {
"model": task_model_id,
"messages": [{"role": "user", "content": content}],
"stream": False,
**(
{"max_tokens": 1000}
{"max_tokens": max_tokens}
if models[task_model_id].get("owned_by") == "ollama"
else {
"max_completion_tokens": 1000,
"max_completion_tokens": max_tokens,
}
),
"metadata": {