Skip to content

Instantly share code, notes, and snippets.

@fpaupier
Created April 5, 2025 09:05
Show Gist options
  • Save fpaupier/995aff93c35bda1f8c4d448e8fee1396 to your computer and use it in GitHub Desktop.
Save fpaupier/995aff93c35bda1f8c4d448e8fee1396 to your computer and use it in GitHub Desktop.
Eval language support of mistral-small-2503
import argparse
from getpass import getpass
from mistralai import Mistral
MISTRAL_MODEL_NAME = "mistral-small-latest" # uses "mistral-small-2503"
LANGUAGE_PROMPTS = {
"en": "Summarize this paragraph: Supreme Court sides with administration over Education Department grants. The U.S. Supreme Court on Friday sided with the Trump administration, at least for now, in a dispute over the Department of Education's freeze of DEI-related grants. The administration has taken several grievances to the high court recently, but this was the first of its legal theories to stick.By a 5-4 vote, the justices allowed the administration to keep frozen $65 million for teacher training and professional development, halting a lower court order that had temporarily reinstated the grants.",
"fr": "Résumé ce paragraphe: Selon une enquête de Mediapart, révélée vendredi 4 avril 2025, une enseignante du collège privé catholique Saint-Joseph de Plabennec (Finistère) publiait depuis plusieurs années, sous un pseudonyme, des propos à caractère racistes et islamophobes. Alerté il y a un an, l’établissement n’aurait rien fait.",
"nl": "Vat deze paragraaf samen: Amsterdam - Wie wordt opgelicht, wil dat de dader wordt gepakt. Maar de weg naar gerechtigheid loopt vaak al dood bij de politie. Die weigert de aangifte op te nemen omdat het een ’civiel’ geschil is dat burgers onderling maar moeten uitvechten. Hoe zit dat?",
"fi": "Tiivistä tämä kappale: Ranskan ja Britannian puolustusvoimien johtajat vierailivat perjantaina Kiovassa. Vierailun aikana keskusteltiin keinoista lähettää länsimaisia joukkoja turvaamaan Ukrainan mahdollista aselepoa. .",
}
def main(args):
client = Mistral(api_key=args.api_key)
print(f"Using model: {MISTRAL_MODEL_NAME}")
print(f"Using language: {args.lang}")
prompt = LANGUAGE_PROMPTS.get(args.lang, "Unsupported language")
if prompt == "Unsupported language":
print(prompt)
return
chat_response = client.chat.complete(
model=MISTRAL_MODEL_NAME,
messages=[
{
"role": "user",
"content": prompt,
},
]
)
print(chat_response.choices[0].message.content)
if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Mistral lang test CLI")
parser.add_argument('--lang', type=str, help="Language ISO code to test the model on (e.g., en, fr)")
parser.add_argument('--api_key', type=str, help="Your Mistral API key", default=None)
args = parser.parse_args()
if args.api_key is None:
args.api_key = getpass(prompt="Enter your Mistral API key: ")
main(args)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment