Enforcing JSON field name in English, and JSON field values in another language

I have this code:

language_directive = "Either way, the names of the JSON fields must be in English and the values of the JSON fields must be in Catalan.""

system_message = "You are a book reviewer."

user_message = f"""
  Write a JSON file for the book "1984" by George Orwell with the following two fields:
  ---
  "Genres": An array of genres associated with the book.
  "Tags": An array of tags associated with the book.
  ---
  {language_directive}  
"""

messages = [
    {'role': 'system', 'content': system_message},
    {'role': 'user', 'content': user_message},
]

openai.ChatCompletion.create(model=model, messages=messages, temperature=temperature, max_tokens=max_tokens)

It works most of the times.
However, the response sometimes does not follow my language_directive, and it writes the field names in Catalan, or the field values in English.
I’ve tried several alternative prompts. I’ve tried also putting the language_directive in the system_message, and in both the system_message and the user_message.

Any idea of how to enforce the language_directive?