programa

Imagen del autor
El mundo de la ciencia de datos ha dado un giro radical desde la irrupción de los grandes modelos de lenguaje (LLM), con herramientas como GPT-3 de OpenAI impulsando la innovación del sector y desbloqueando habilidades que parecían inalcanzables.
Aunque los modelos GPT de OpenAI dominaron el mercado al principio, el panorama ha cambiado con el lanzamiento de numerosos modelos nuevos, cada uno con su propio conjunto de capacidades y aplicaciones especializadas.
Entre ellos, los modelos de Mistral destacan por su razonamiento avanzado y su soporte multilingüe, además de su habilidad para generar código, marcando un avance significativo en la IA.
Este tutorial te presenta el último modelo de Mistral, Mistral Large, incluido el acceso por API para su uso bajo demanda. Profundizaremos en sus funcionalidades, lo compararemos con otros LLM y veremos aplicaciones prácticas.
Tanto si eres un científico de datos con experiencia, un desarrollador que quiere ampliar su caja de herramientas o una persona entusiasta de la IA con ganas de explorar lo último en tecnología, este tutorial está pensado para ti.
¿Qué es Mistral AI?
Mistral AI es una empresa francesa fundada en abril de 2023 por exempleados de Meta Platforms y Google DeepMind. Su objetivo principal es comercializar productos y servicios de IA a la vez que ofrece a la sociedad LLM de código abierto sólidos.
La compañía revolucionó el mercado con su modelo Mistral 7B, lanzado en septiembre de 2023. Con 7,3 mil millones de parámetros, superó a los modelos de código abierto más avanzados del momento, incluido LlaMa 2, otorgando a Mistral AI un papel protagonista en la IA de código abierto.
En los últimos meses, Mistral AI se ha consolidado como una fuerza pionera en la industria de la inteligencia artificial, y está intentando ofrecer herramientas potentes diseñadas para resolver problemas complejos y optimizar operaciones.
Y esto nos lleva a su último lanzamiento: el modelo Mistral Large.
¿Qué es Mistral Large?
Mistral Large es el LLM más reciente y potente de Mistral, lanzado en febrero de 2024. Se posiciona como el buque insignia en generación de texto, a la altura de las reconocidas capacidades de GPT-4.
Está orientado a ofrecer gran capacidad de razonamiento y conocimientos, con un sólido entendimiento de programación (en múltiples lenguajes) y soporte multilingüe. Precisamente en estas tareas es donde más destaca:
Razonamiento y conocimiento
Mistral Large exhibe fuertes habilidades de razonamiento. Para evaluarlas, el rendimiento de LLM como Mistral Large o GPT-4 se compara mediante distintos benchmarks que ponen a prueba su comprensión, razonamiento, conocimientos y su capacidad para manejar diferentes tipos de datos.
Algunos de los más habituales son:
- MMLU (Measuring Massive Multitask Language Understanding): evalúa la comprensión del modelo en una amplia gama de materias, desde ámbitos profesionales hasta razonamiento de sentido común.
- HellaSwag: mide la comprensión de escenarios de sentido común y la capacidad de predecir la continuación más plausible de un contexto dado.
- ARC Challenge: mide la capacidad del modelo para responder preguntas complejas de ciencia a nivel escolar que requieren razonamiento lógico y comprensión de conceptos científicos.
El rendimiento de estos modelos preentrenados en los tres benchmarks anteriores y algunos más se ilustra en la figura siguiente:

Imagen de Mistral AI. Rendimiento en benchmarks de sentido común, razonamiento y conocimiento de los principales LLM del mercado: MMLU, HellaSwag (10-shot), Wino Grande (5-shot), ARC Challenge (5-shot), ARC Challenge (25-shot), TriviaQA (5-shot) y TruthfulQA.
Como puedes ver, Mistral Large es el modelo con mejor rendimiento en ArcC y TruthfulQA, y mantiene puntuaciones muy cercanas a GPT-4 en casi todos los benchmarks.
Capacidades multilingües
A diferencia de muchos modelos proficientes en un único idioma, Mistral Large presume de fluidez nativa en inglés, francés, español, alemán e italiano.
Esta capacidad multilingüe va más allá de la simple traducción: incluye una comprensión profunda de la gramática y el contexto cultural, lo que lo convierte en una opción ideal para aplicaciones globales que requieren un enfoque nativo en esos idiomas.
Matemáticas y programación
Mistral Large también destaca en tareas de programación y matemáticas, demostrando capacidades superiores. De nuevo, existen benchmarks estándar para comparar distintos LLM en estas áreas. Algunos de los más comunes son:
- HumanEval: mide la capacidad del modelo para generar soluciones de código correctas para diversos problemas de programación.
- MBPP: evalúa la destreza del modelo resolviendo problemas de programación en Python.
- GSM8K: valora las habilidades de resolución de problemas de matemáticas a nivel escolar.
La siguiente tabla ofrece una visión general de su rendimiento en distintos benchmarks conocidos, comparando las habilidades de programación y matemáticas de los principales LLM.

Imagen de Mistral AI. Rendimiento en benchmarks populares de programación y matemáticas: HumanEval pass@1, MBPP pass@1, Math maj@4, GSM8K maj@8 (8-shot) y GSM8K maj@1 (5-shot).
Como antes, Mistral Large sobresale en la mayoría de benchmarks (MBPP, Math maj@4 y GSM8K) y mantiene puntuaciones altas en todos.
Además, Mistral Large incorpora nuevas capacidades y puntos fuertes:
- Su ventana de contexto de 32K tokens permite recuperar información con precisión a partir de documentos extensos. En pocas palabras, Mistral Large puede considerar hasta 32.000 tokens (fragmentos de palabras) de texto de entrada a la vez al generar respuestas o analizar texto, frente a los 8K de Mistral 7B.
- Su precisión al seguir instrucciones permite a los desarrolladores adaptar políticas de moderación; aprovechamos esta capacidad para establecer moderación a nivel de sistema en le Chat.
- Soporta de forma nativa las llamadas a funciones. En esencia, Mistral Large puede procesar y ejecutar llamadas a funciones dentro de su marco. Esto le permite entender peticiones para ejecutar funciones específicas, realizarlas como parte de la generación de la respuesta o manipular datos según la lógica de la función.
Todos los modelos de Mistral AI se publican bajo licencia Apache 2.0, permitiendo su uso sin restricciones. Puedes saber más sobre la arquitectura y el rendimiento en la web y documentación oficial de Mistral.
Mistral Large frente a otros LLM
Comparado con otros modelos del ámbito de los LLM, como ChatGPT y Claude, Mistral Large se distingue principalmente por su mayor accesibilidad en costes.
En un panorama altamente competitivo, Mistral Large ha mostrado resultados sobresalientes en benchmarks ampliamente reconocidos, situándose como el segundo mejor modelo del mundo disponible vía API.
Este logro subraya su eficacia para comprender y generar texto, comparado con gigantes del sector como GPT-4, Claude 2 y LLaMA 2 70B en evaluaciones completas como MMLU (Measuring Massive Multitask Language Understanding).

Imagen de Mistral AI. Comparativa de GPT-4, Mistral Large (preentrenado), Claude 2, Gemini Pro 1.0, GPT-3.5 y LLaMA 2 70B en MMLU.
Mientras que ChatGPT revolucionó las conversaciones interactivas con IA y Claude 2 introdujo una mejor comprensión y generación, Mistral Large va un paso más allá al integrar razonamiento profundo en un marco rentable, haciendo que la IA avanzada sea accesible para más personas.
Ahora, ¡toca aprender a domar a esta bestia!
Primeros pasos con Mistral Large
Acceder a Mistral AI comienza con una configuración sencilla pensada para que estés en marcha en muy poco tiempo.
Hay dos formas principales de acceder al modelo:
- Usar la interfaz de Mistral inspirada en ChatGPT, llamada «Le Chat».
- Integrarlo en tu código usando el endpoint de la API de Mistral.

Imagen del autor.
Si prefieres empezar con un modelo más sencillo, te recomiendo seguir esta guía para usar y ajustar Mistral 7B.
ChatBot de Mistral - Le Chat
Esta interfaz te permite mantener una conversación de texto con Mistral, similar a la que ya ofrecen empresas como OpenAI o Google: puedes hacer preguntas o darle instrucciones, y Mistral intentará responder de forma informativa.

Captura de pantalla de la interfaz de Mistral Le Chat.
Para acceder a esta interfaz, solo tienes que visitar la web de Mistral Le Chat y registrarte. Es gratuita y sin límites ni restricciones.
API de Mistral
Los desarrolladores pueden interactuar con Mistral a través de su API, muy similar a la experiencia con la API de OpenAI.
Esta API te permite enviar prompts de texto y recibir las respuestas generadas por el modelo. Si usas Python para interactuar con la API de Mistral, librerías como mistralai simplifican el proceso.
Veamos los pasos más básicos para interactuar con Mistral Large.
PASO 1 - Crear tu cuenta de Mistral
El primer paso es ir a la web de Mistral y hacer clic en el botón "Build Now".

Captura de pantalla de la web principal de MistralAI.
Tendrás que crear una cuenta nueva o iniciar sesión si ya tienes una.

Captura de pantalla del formulario de registro de MistralAI.
Una vez dentro, tendrás que suscribirte para obtener acceso a los modelos vía API.

Captura de pantalla de la cuenta de MistralAI.
Después, tendrás que completar tu información personal y de facturación.

Captura de pantalla del proceso de alta en MistralAI.
¡Y listo! Ya tienes una cuenta preparada para usarse.
PASO 2 - Crear tu API KEY
Con la cuenta activa, tendrás que generar una API Key para invocar el modelo Mistral Large desde tu código en Python. Para ello, ve a la sección API Keys.

Captura de pantalla del proceso de alta en MistralAI.
Una vez allí, pulsa el botón "Create new key", asígnale un nombre y, si quieres, una fecha de caducidad (opcional).

Captura de pantalla del proceso de alta en MistralAI.
PASO 3 - Configura tu entorno local
Para invocar el modelo de Mistral desde tu código en Python, usarás la librería mistralai, que puedes instalar fácilmente con el siguiente comando de pip:
pip install mistralai
Como vas a usar una API Key, te recomiendo aprovechar la librería dotenv para almacenarla. Puedes instalarla con:
pip install python-dotenv
Después, puedes definir tu API Key de Mistral en un archivo .env y cargarla con el siguiente código:
import os
from dotenv import load_dotenv
# Load environment variables from the .env file
load_dotenv()
# Access the API key using os.getenv
api_key = os.getenv("MISTRAL_API_KEY")
Aplicaciones prácticas de Mistral Large
Mistral Large puede usarse en múltiples ámbitos: creación de contenido, automatización de soporte al cliente, asistencia a la programación, análisis de datos, traducción de idiomas y herramientas educativas.
Estas aplicaciones demuestran la versatilidad de los LLM de Mistral para impulsar la productividad, la creatividad y la toma de decisiones en distintos sectores. Para empezar a probarlo, primero debes inicializar el modelo.
Para ello, importarás la librería mistralai.client y la función de chat completion para obtener respuestas del modelo. Luego, para facilitar la interacción con la API, defines una función chat_mistral que recibe tu prompt como entrada y devuelve como salida la respuesta del modelo.
from mistralai.client import MistralClient
from mistralai.models.chat_completion import ChatMessage
model = "mistral-large-latest"
client = MistralClient(api_key=api_key)
def chat_mistral(prompt: str):
messages = [
ChatMessage(role="user", content=prompt)
]
# No streaming
chat_response = client.chat(
model=model,
messages=messages,
)
return chat_response.choices[0].message.content
Veamos algunos ejemplos con los que Mistral puede lidiar:
Generación y procesamiento de texto
Mistral Large destaca en tareas de generación, comprensión y transformación de texto. Desde crear narrativas y artículos convincentes hasta resumir documentos complejos o adaptar estilos, sus principales aplicaciones en procesamiento de texto son las siguientes:
Generación de texto
Una de las aplicaciones principales de Mistral Large, y de cualquier LLM, es generar texto a partir de tu prompt inicial. En el núcleo de esta habilidad está su entrenamiento con conjuntos de datos variados y masivos de múltiples dominios.
Gracias a ese entrenamiento, el modelo capta estilos de escritura, temas y estructuras de lenguaje diversos, lo que le permite crear textos que encajan con tonos o requisitos de contenido específicos.
# Starting prompt for a fairytale poem
prompt = """Write a short story starting with "Once upon a time" """
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
Once upon a time, in a bustling city filled with towering skyscrapers and endless traffic, there was a small, quaint bookstore named "Whispers of the Past". This wasn't an ordinary bookstore. It was a magical place where every book held a secret story, waiting to be discovered.
The owner of the store, Mr. Benjamin, was an old man with a heart full of kindness and a mind full of tales. He had a peculiar habit of recommending books to his customers, not based on their genre preference, but on their current life situations. His recommendations were always spot on, and people often found solace, guidance, or inspiration from the books he suggested.
One day, a young girl named Lily walked into the store. She was new in town and had a lost look in her eyes. Seeing this, Mr. Benjamin approached her and asked, "What can I help you find today, my dear?"
Lily…
Puedes saber más sobre generación de texto en el artículo What is Text Generation?
Análisis de sentimiento
La capacidad de Mistral Large para el análisis de sentimiento se basa en su marco de deep learning, que le permite comprender el contexto del lenguaje y distinguir eficazmente entre sentimientos positivos, negativos y neutros.
Al analizar el texto de entrada, puede inferir el tono emocional detrás de las palabras, aprovechando su amplio entrenamiento con datos diversos para detectar el sentimiento con precisión en distintos tipos de contenido.
Un buen uso de Mistral sería pedirle que identifique el sentimiento de un texto dado.
# Sample text
text = "This movie was absolutely fantastic! I highly recommend it."
prompt = f"""Analyze the sentime of the following {text}.
Generate a json like response with the corresponding sentiment (positive, neutral or negatie).
"""
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
{
"Sentiment": "Positive",
"Text": "This movie was absolutely fantastic! I highly recommend it."
}
Resumen de texto
Mistral Large sobresale en la tarea de resumir textos gracias a sus avanzadas capacidades de procesamiento del lenguaje natural, que le permiten transformar documentos largos en resúmenes concisos e informativos. Entiende los temas principales y los detalles clave de un texto, identifica y extrae la información crítica y produce un resumen coherente y breve.
Esta habilidad es especialmente útil para captar rápido la esencia de grandes volúmenes de texto, convirtiendo a Mistral Large en una herramienta esencial para profesionales que necesitan asimilar y actuar sobre la información con eficiencia.
Un ejemplo sencillo sería pedirle al modelo que resuma un texto, como puedes ver a continuación:
# Sample text
text = """The quick brown fox jumps over the lazy dog. The rain in Spain falls mainly on the plain.
This is a longer sentence to show summarization capabilities."""
prompt = f"""Summarize the following {text} in 4 words.
"""
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
Fox jumps, rain falls.
Traducción y tareas multilingües
Mistral Large también demuestra gran capacidad para manejar tareas multilingües. Mistral-large se ha entrenado específicamente para entender y generar texto en varios idiomas, especialmente en francés, alemán, español e italiano.
Mistral Large puede ser especialmente valioso para empresas y usuarios que necesitan comunicarse en múltiples idiomas.
Un ejemplo simple sería usar Mistral Large como traductor.
# Sample text
text = """The quick brown fox jumps over the lazy dog. The rain in Spain falls mainly on the plain.
This is a longer sentence to show summarization capabilities."""
language_in = "english"
language_out = "spanish"
prompt = f"""Translate the following {text} that is written in {language_in} to {language_out} and
just output the translated text.
"""
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
The quick brown fox jumps over the lazy dog. The rain in Spain falls mainly on the plain.
Translation to Spanish:
El rápido zorro marrón salta sobre el perro perezoso. La lluvia en España cae principalmente en la llanura.
This is a longer sentence to show summarization capabilities.
Translation to Spanish:
Esta es una oración más larga para mostrar las capacidades de resumen.
Generación de código y resolución de problemas matemáticos
Más allá del texto, Mistral Large demuestra una gran destreza generando código y resolviendo problemas matemáticos. Proporcionando enunciados concisos, puedes aprovechar Mistral Large para producir fragmentos de código optimizados y resolver desafíos matemáticos, lo que muestra su utilidad en contextos educativos, de investigación y de desarrollo.
Generación de código
Mistral Large sobresale en generación de código al comprender descripciones de alto nivel y traducirlas a código sintácticamente correcto y eficiente en varios lenguajes.
Aprovecha su amplio entrenamiento en bases de código, documentación técnica y foros de desarrolladores para generar código que cumpla los requisitos especificados, garantizando funcionalidad y optimización.
Un ejemplo sencillo sería pedir al modelo que genere una función que realice una tarea descrita.
# Prompt: Generate a Python function that takes a list of numbers and returns the sum of squares.
prompt = """def sum_of_squares(numbers):
# Your code here
pass
# Call the generated function with a sample list
numbers = [1, 2, 3]
result = sum_of_squares(numbers)
print(f"Sum of squares: {result}") # Expected output: Sum of squares: 14"""
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
Sure, I can help you define the function `sum_of_squares`. This function should take a list of numbers as an argument, square each number, and then return the sum of those squares. Here's how you could do it:
```python
def sum_of_squares(numbers):
return sum(num ** 2 for num in numbers)
```
Esta capacidad agiliza el desarrollo, ayudando a programadores a prototipar rápido, depurar e implementar algoritmos complejos con facilidad.
Resolución de problemas matemáticos
Mistral Large es competente resolviendo problemas matemáticos gracias a su profundo entendimiento de conceptos numéricos y su capacidad para procesar e interpretar instrucciones matemáticas complejas.
Aplica algoritmos entrenados con una amplia variedad de datos matemáticos, lo que le permite abordar problemas desde aritmética básica hasta cálculo y álgebra avanzados.
Por ejemplo, puedes pedirle al modelo que resuelva un problema matemático.
# Prompt: Solve a system of linear equations with two variables.
prompt = """We have a system of equations:
x + 2y = 5
3x - y = 1
Solve for x and y.
"""
print(chat_mistral(prompt))
_________________________________________ #OUTPUT
Sure, I'd be happy to help you solve this system of equations. We can use the method of substitution or elimination. I'll use substitution for this example.
First, let's solve the first equation for x:
x = 5 - 2y
Now, we can substitute x in the second equation with the expression we just found:
3(5 - 2y) - y = 1
Expanding and simplifying this gives:
15 - 6y - y = 1
-7y = 1 - 15
-7y = -14
Now, divide both sides by -7 to solve for y:
y = -14 / -7
y = 2
Substitute y = 2 into the first equation:
x + 2(2) = 5
x + 4 = 5
x = 5 - 4
x = 1
So, the solution to the system of equations is x = 1 and y = 2.
Esta capacidad convierte a Mistral Large en una herramienta valiosa para docentes, estudiantes e investigadores que buscan resolver consultas matemáticas o verificar la corrección de su trabajo.
Funciones avanzadas de Mistral Large y buenas prácticas
Entender los precios y el acceso
Mistral AI ofrece un modelo de precios de pago por uso para sus servicios de API, con tarifas distintas para chat completions y APIs de embeddings. Los precios son por millón de tokens, y varían según la complejidad del modelo, con opciones como Mistral 7B, Mixtral 8x7B y varios tamaños del modelo Mistral (Small, Medium, Large).
La plataforma ofrece varios niveles, incluidos Mistral Small, Medium y Large, cada uno diseñado para diferentes requisitos de proyecto y presupuestos. Los precios más bajos corresponden a Mistral 7B con 0,25$ por token, hasta 8$ para el output de Mistral Large y 24$ para el input de Mistral Large.
Esta flexibilidad te permite seleccionar la versión del modelo más adecuada, optimizando rendimiento y gasto.

Tabla de precios de los modelos de Mistral AI.
La plataforma impone límites de tasa de 5 solicitudes por segundo, 2 millones de tokens por minuto y 10.000 millones de tokens al mes, con posibilidad de ajustes previa solicitud.
Para información detallada sobre precios y límites, visita la página de precios de Mistral AI.
Optimizar el rendimiento
Elegir el modelo de Mistral adecuado implica equilibrar rendimiento y coste. Tus necesidades dictan la elección, que puede cambiar a medida que evolucionen los modelos.
En general, los modelos más grandes rinden mejor, con Mistral Large liderando en benchmarks como MMLU (un benchmark de LLM llamado Measuring Massive Multitask Language Understanding que hemos explicado arriba), seguido de Mistral Medium, Small, Mixtral 8x7B y Mistral 7B.

Comparativa del rendimiento de los modelos de Mistral. Imagen de Mistral AI.
Para maximizar la eficacia de Mistral Large controlando los costes, puedes afinar tus consultas y elegir la versión del modelo más adecuada para cada tarea. Puedes aprender más sobre el fine-tuning de LLM en esta guía introductoria al ajuste fino de LLM
Mistral AI ofrece cinco endpoints de API con cinco LLM líderes:
- open-mistral-7b (aka mistral-tiny-2312)
- open-mixtral-8x7b (aka mistral-small-2312)
- mistral-small-latest (aka mistral-small-2402)
- mistral-medium-latest (aka mistral-medium-2312)
- mistral-large-latest (aka mistral-large-2402)
El modelo Mistral más reciente presenta tres variantes, con costes y rendimiento reducidos según la aplicación que queramos realizar:
- Mistral Small: optimizado para tareas sencillas y a gran escala como clasificación, soporte al cliente y generación básica de texto. Es rentable para aplicaciones directas como la detección de spam.
- Mistral Medium: diseñado para tareas de complejidad intermedia, destaca en extracción de datos, resumen de documentos y generación de contenido descriptivo. Equilibra capacidad y eficiencia.
- Mistral Large: destaca en prácticamente todos los benchmarks. Es la mejor opción para tareas complejas, con mucho peso de razonamiento o aplicaciones especializadas, incluida la generación de texto sintético y código. Muestra un rendimiento superior en razonamiento avanzado y resolución de problemas.
¿Qué viene después para Mistral Large?
A medida que Mistral Large evoluciona, llegarán nuevas mejoras, contribuciones de la comunidad y funcionalidades.
Mantenerte al día de estos avances es clave para aprovechar al máximo sus capacidades e integrar las últimas novedades en tus proyectos.
La hoja de ruta del modelo promete seguir innovando, con foco en mejorar el razonamiento, el soporte de idiomas y la accesibilidad para usuarios.
Conclusión
Mistral Large supone un paso monumental en IA y ciencia de datos: ofrece razonamiento avanzado con soporte multilingüe y, además, ayuda en programación y matemáticas.
Es la primera vez que contamos con un modelo de código abierto y asequible que no solo tiene grandes habilidades, sino que lidera algunos benchmarks superando a modelos comerciales como GPT-4 de OpenAI o Gemini de Google.
Esto significa que, al aprovechar el poder de Mistral Large, puedes abrir nuevas posibilidades, optimizar procesos y crear soluciones innovadoras que antes quedaban fuera de alcance, con un presupuesto ajustado y mejor rendimiento.
Puedes consultar todo el código en este repositorio de GitHub.
Si quieres seguir creciendo en el campo de los LLM, te animo a explorar tutoriales más avanzados. Si eres totalmente nuevo en el área, puedes empezar con el curso LLM Concepts de DataCamp, que cubre muchas de las metodologías clave de entrenamiento y la investigación más reciente.
Para usuarios más avanzados, otras buenas referencias son:
Josep es Científico de Datos y Gestor de Proyectos en la Agencia Catalana de Turismo, utilizando datos para mejorar la experiencia de los turistas en Cataluña. Su experiencia incluye la gestión del almacenamiento y procesamiento de datos, junto con la analítica avanzada y la comunicación eficaz de las perspectivas de los datos.
También es un dedicado educador, que imparte clases en el Máster de Big Data de la Universidad de Navarra, y contribuye regularmente con artículos perspicaces sobre ciencia de datos en Medium y KDNuggets.
Es Licenciado en Ingeniería Física por la Universidad Politécnica de Cataluña y Máster en Sistemas Interactivos Inteligentes por la Universidad Pompeu Fabra.
En la actualidad, se dedica con pasión a hacer que las tecnologías relacionadas con los datos sean más accesibles a un público más amplio a través de la publicación de Medium ForCode'Sake.





