Kasparov salió abruptamente de la sala tan sólo 19 movimientos después de haber comenzado su sexta partida contra Deep Blue: había abandonado. En ese momento, Deep Blue se convirtió en la primera computadora en ganarle un match a un campeón mundial de ajedrez, algo insólito para esa época, aunque hoy hasta nos resulta ridícula la idea de que cualquier humano le pueda ganar en este juego a una computadora.
Han pasado más de dos décadas desde ese match y varias revoluciones tecnológicas: el internet, teléfonos inteligentes, la computación en la nube, blockchain y, por supuesto, las inteligencias artificiales generativas como ChatGPT. Uno pensaría que si en 1996 una computadora con la inteligencia de un reloj despertador (palabras de Kasparov) ya dejaban perturbado a un campeón del mundo, las inteligencias artificiales actuales deberían estar a años luz de jugadores como Magnus Carlsen, Fabiano Caruana o Hikaru Nakamura. Y muchas sí, pero no todas…
Motores especializados como Stockfish o AIs como AlphaZero de Google sí están muy por encima de cualquier ser humano, pero también se podría argumentar que efectivamente tienen la misma inteligencia que un reloj despertador: no pueden escribir poemas, debatir o escribir código. Lo increíble es que las inteligencias artificiales que sí escriben poemas, debaten y programan (a veces mejor que gente top de la industria) son ruidosamente malas en ajedrez.
Los modelos largos de lenguaje (LLMs es el nombre ‘serio’ para estas inteligencias artificiales) jugando ajedrez se volvieron un chiste en la comunidad. El streamer GothamChess le ha dedicado varios videos a ridiculizar a ChatGPT, que constantemente resucita piezas capturadas, toma piezas de manera ilegal o mueve caballos como si fueran una reina.
@levyrozman ChatGPT plays chess #chess #chesstok #chatgpt
♬ original sound - GothamChess
Los LLMs también se volvieron famosos por dar información imprecisa, citar artículos fantasma o directamente fabricar datos. Estos errores se han denominado “alucinaciones”, y aunque laboratorios como OpenAI, Anthropic y DeepMind han gastado millones de dólares en entrenar modelos cada vez más poderosos, estos siguen alucinando. Y es que parece formar parte de su naturaleza probabilista: en Twitter (jamás lo llamaré X) es un chiste recurrente que alucinan el 100% del tiempo, solo que el 80% del tiempo alucinan las cosas correctas, igual que un reloj malo da la hora bien dos veces al día.
LLMs hallucinate 100% of the time. They just happen to hallucinate the right sequence of words ~80% of the time. pic.twitter.com/CAed4STafP
— BURKOV (@burkov) May 5, 2025
Aún así, podemos ayudar a que las AIs alucinen mejor. Mi objetivo personal es que ChatGPT juegue un poco mejor al ajedrez: la estrategia será darle algunas herramientas para igualar las condiciones de juego, pero sin darle acceso a un motor de ajedrez (eso ya sería trampa).
Primero, le daremos un prompt más adecuado para que sepa que está jugando ajedrez, cuáles son sus reglas y la notación que se usará. Afortunadamente, el ajedrez cuenta con una notación estandarizada con la que se han anotado partidas que datan desde 1475. Seguramente ChatGPT fue entrenado con conjuntos de datos que contienen partidas en esta notación, aún así le explicaremos la notación para que sea “consciente” de ella. Igual mencionaremos las reglas del juego en el prompt, para intentar reducir movimientos ilegales.
En el prompt también se le mencionan algunas reglas para distintos momentos del juego. Por ejemplo, para la apertura se le sugiere controlar el centro, desarrollar las piezas y proteger al rey. Finalmente, se requiere que el modelo responda con formato XML y que explique el razonamiento detrás de su respuesta.
Prompt de ajedrez para la IA
You are an AI chess player that will analyze a chess game and choose the best move.
You will be provided with the game history in PGN (Portable Game Notation) format and your assigned color.
## Chess Rules and PGN Format
**Basic Chess Rules:**
- The goal is to checkmate the opponent's king
- Each piece moves in specific patterns:
pawns move forward (one square, or two on first move),
rooks move horizontally/vertically, bishops move diagonally,
knights move in L-shapes,
queens combine rook and bishop moves,
kings move one square in any direction
- Special moves include castling (king and rook), en passant (pawn capture), and pawn promotion
- A player is in check when their king is under attack and must get out of check immediately
- Checkmate occurs when a king is in check and cannot escape capture
**PGN Notation:**
- Moves are written in algebraic notation (e.g., e4, Nf3, Bxc4)
- Piece symbols: K=King, Q=Queen, R=Rook, B=Bishop, N=Knight (pawns have no symbol)
- 'x' indicates capture, '+' indicates check, '#' indicates checkmate
- Castling: O-O (kingside), O-O-O (queenside)
- If multiple pieces can reach the same square, specify the file or rank (e.g., Nbd2, R1a3)
## Strategic Principles
**Opening Principles:**
- Control the center with pawns (e4, d4, e5, d5)
- Develop knights before bishops
- Castle early for king safety
- Don't move the same piece twice without good reason
- Don't bring the queen out too early
- Connect your rooks
**Middlegame Principles:**
- Improve piece activity and coordination
- Create and exploit weaknesses in opponent's position
- Control key squares and files
- Consider pawn structure and piece exchanges carefully
- Look for tactical opportunities (pins, forks, skewers, discovered attacks)
- Maintain king safety while pursuing your plans
**Endgame Principles:**
- Activate your king
- Push passed pawns
- Centralize your king in pawn endgames
- In rook endgames, keep your rook active
- Know basic checkmate patterns (Queen + King, Rook + King vs King)
- Opposition is crucial in king and pawn endgames
## Available Tools
You have access to these functions:
- **checkValidity**: Use this to verify that your chosen move is legal before finalizing it
Always use checkValidity to confirm your move is legal before providing your final response.
## Analysis Process
Before choosing your move, think through your analysis in a scratchpad:
<scratchpad>
[Analyze the current position, identify the game phase, evaluate threats and opportunities, consider candidate moves, and explain your reasoning]
</scratchpad>
## Required Output Format
After your analysis, provide your response in exactly this format:
<response>
<move>Your move in algebraic notation</move>
<reason>Detailed explanation of why you chose this move</reason>
</response>
**Example:**
<response>
<move>e4</move>
<reason>I played e4 to control the central squares d5 and f5, open lines for my bishop and queen, and follow sound opening principles by occupying the center with a pawn.</reason>
</response>
Remember to ALWAYS verify your move is legal using the checkValidity function before providing your final response.
Además del prompt, se le dará acceso a una herramienta para que revise si es un movimiento válido. Esto se hace con código de programación convencional, combinando modelos probabilísticos y lógica determinista.
tools: {
checkValidity: tool({
description: "Check if a move is valid, useful to validate before making a move.",
inputSchema: z.object({
move: z.string().describe("The move you want to check in algebraic notation.")
}),
}),
}
Esto se ejecuta en bucle, así que primero el modelo decide un movimiento, luego llama a la herramienta para revisar que sea válido y el resultado se devuelve al modelo para que, si es válido, dé una respuesta final y si no, intente otro.
Después de un par de partidas encontré que las jugadas de libro las hace bastante bien, seguramente porque son las que más aparecen en bases de datos de partidas, pero cuando se juega otro movimiento, que obliga a la AI a “pensar”, empieza a descuidar amenazas u oportunidades tácticas que podrían resultar obvias para personas que juegan de manera frecuente.
El resultado de estas técnicas (prompt específico, herramientas relevantes y feedback loop), aunque lejos de perfecto, es un entorno más seguro para que los LLMs jueguen ajedrez. Esto se puede aplicar a muchos problemas más, donde los modelos de lenguaje por sí solos pueden descarrilarse de la tarea asignada.
Ahora es tu turno de probar si puedes jugar mejor al ajedrez que ChatGPT. Entra en el siguiente link, selecciona el modelo (puedes elegir entre GPT-5 y Sonnet 4.5), pega una API Key del proveedor que hayas elegido y haz tu movimiento.
https://puedes-jugar-ajedrez-mejor-que-chat.vercel.app
