Continued from 500 internal server error using 'suggest topic title' AI helper
Updated and it no longer generates a 500 error, but it is failing to give the user a title suggestion.
LLM Logs:
Request
{
"model": "deepseek-3.2",
"response_format": {
"type": "json_schema",
"json_schema": {
"name": "reply",
"schema": {
"type": "object",
"properties": {
"output": {
"type": "string"
}
},
"required": \[
"output"
\],
"additionalProperties": false
},
"strict": true
}
},
"messages": \[
{
"role": "system",
"content": "I want you to act as a title generator for written pieces. I will provide you with a text,\\nand you will generate five titles. Please keep the title concise and under 20 words,\\nand ensure that the meaning is maintained. Replies will utilize the language type of the topic.\\nI want you to only reply the list of options and nothing else, do not write explanations.\\nNever ever use colons in the title. Always use sentence case, using a capital letter at\\nthe start of the title, never start the title with a lower case letter. Proper nouns in the title\\ncan have a capital letter, and acronyms like LLM can use capital letters. Format some titles\\nas questions, some as statements. Make sure to use question marks if the title is a question.\\nYou will find the text between <input></input> XML tags.\\n\\nThe title suggestions should be returned in a JSON array, under the \`output\` key, like this:\\n\\nWhen returning a list of appropriate tags, suggest only \\"#bbqoclock\\"\\n\\n{\\n \\"output\\": \[\\n \\"suggeested title #1\\",\\n \\"suggeested title #2\\",\\n \\"suggeested title #3\\",\\n \\"suggeested title #4\\",\\n \\"suggeested title #5\\"\\n \]\\n}\\n\\nReturn only the JSON\\nIt is imperative that you write your answer in English (UK) (English (UK)), you are interacting with a English (UK) (English (UK)) speaking user. Leave tag names in English."
},
{
"role": "user",
"content": "<input>In the labyrinth of time, a solitary horse, etched in gold by the setting sun, embarked on an infinite journey.</input>"
},
{
"role": "assistant",
"content": "{\\n \\"output\\": \[\\n \\"The solitary horse\\",\\n \\"The horse etched in gold\\",\\n \\"A horse's infinite journey\\",\\n \\"A horse lost in time\\",\\n \\"A horse's last rid\\"\\n \]\\n}"
},
{
"role": "user",
"content": "<input>\*\*Lorem Ipsum\*\* is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since 1966, when designers at Letraset and James Mosley, the librarian at St Bride Printing Library in London, took a 1914 Cicero translation and scrambled it to make dummy text for Letraset's Body Type sheets. It has survived not only many decades, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised thanks to these sheets and more recently with desktop publishing software like Aldus PageMaker and Microsoft Word including versions of Lorem Ipsum.</input>"
}
\],
"service_tier": "auto",
"stream": true,
"stream_options": {
"include_usage": true
}
}
Response:
{
"output":
"The history of Lorem Ipsum"
}
Alternate response from trying again:
{
"output": "[\"The story of Lorem Ipsum\", \"What is Lorem Ipsum?\", \"The enduring legacy of Lorem Ipsum\", \"How did Lorem Ipsum become popular?\", \"Lorem Ipsum: From printers to software\"]"
}
It seems to fail if it is provided a single item, or a whole list.

