Qué significa ejecutar un modelo en tu propio ordenador, qué hace falta, a qué velocidad va, cómo se entrenan estos modelos y en qué se diferencian los de texto, imagen, vídeo y herramientas.What it means to run a model on your own computer, what you need, how fast it goes, how these models are trained, and how text, image, video and tool-using models differ.
Un modelo de IA es, al final, un archivo grande lleno de números. "En local" significa que ese archivo y el programa que lo ejecuta están en tu ordenador, no en el servidor de una empresa.An AI model is, in the end, a big file full of numbers. "Local" means that file, and the program that runs it, live on your computer instead of on a company's server.
Los modelos que se pueden descargar se llaman open-weight (pesos abiertos). Ojo: no siempre son "open source" en sentido estricto; cada uno trae su licencia y conviene leerla antes de usarlo en un producto.Models you can download are called open-weight. Careful: they are not always "open source" in the strict sense; each one has its own licence and it is worth reading before using it in a product.
envía el texto por internetsends the text over the internet
Modelo + GPUs enormes. Pagas por uso.Model + huge GPUs. You pay per use.
Los datos no salen. Sin coste por uso.Data never leaves. No per-use cost.
Cuando "usas un modelo local" intervienen cuatro capas. Cada una se apoya en la de debajo.When you "use a local model" four layers are involved. Each one rests on the one below.
llama-server, LM Studio. Recibe peticiones y las pasa al motor.Ollama, llama-server, LM Studio. It receives requests and hands them to the engine.chat · editor · agentechat · editor · agent
Ollama :11434 · llama-server :8080
llama.cpp · MLX
miles de millones de númerosbillions of numbers
texto ↔ númerostext ↔ numbers
formato del chatchat format
GPU (VRAM) · memoria unificada · RAM · CPUGPU (VRAM) · unified memory · RAM · CPU
curl http://localhost:11434/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"gpt-oss:20b",
"messages":[{"role":"user","content":"HolaHello"}]}'
Son las capas 2 y 3 de antes. Unas son el motor; otras son una comodidad que se pone encima del motor.These are layers 2 and 3 from before. Some are the engine; others are a convenience layer on top of an engine.
llama.cpp es el motor que empezó todo: un programa en C/C++ que corre casi en cualquier sitio (CPU, GPU, móvil) y definió el formato de archivo GGUF. Incluye llama-server, un servidor HTTP.llama.cpp is the engine that started it all: a C/C++ program that runs almost anywhere (CPU, GPU, phone) and defined the GGUF file format. It includes llama-server, an HTTP server.
Ollama envuelve ese motor para que todo sea un comando: descarga el modelo, lo carga y abre la API. Según una fuente, desde la versión 0.19 usa MLX en los Mac con chip Apple.Ollama wraps that engine so everything is one command: it downloads the model, loads it and opens the API. According to one source, since version 0.19 it uses MLX on Apple-silicon Macs.
CLI + API. Todo en un comando.CLI + API. Everything in one command.
motorengine
Interfaz gráfica.Graphical interface.
El servidor que viene con llama.cpp.The server that ships with llama.cpp.
Sistema aparte, para servir a muchos usuarios a la vez.A separate system, for serving many users at once.
Motor de Apple para sus chips.Apple's engine for its chips.
| Qué esWhat it is | FormatoFormat | Cuándo elegirloWhen to pick it | |
|---|---|---|---|
| Ollama | Servidor + descarga de modelos en un comandoServer + model download in one command | GGUF | Empezar, prototipos, herramientas internas con pocos usuariosGetting started, prototypes, internal tools with few users |
| llama.cpp / llama-server | El motor y su servidor, de bajo nivelThe engine and its low-level server | GGUF | Control total, hardware raro, apps incrustadas, cuantización a medidaFull control, unusual hardware, embedded apps, custom quantisation |
| LM Studio | Aplicación con ventanas y buscador de modelosDesktop app with a model browser | GGUF / MLX | Si prefieres no usar terminal, o en Windows con GPU AMD/IntelIf you prefer no terminal, or on Windows with AMD/Intel GPUs |
| vLLM | Servidor de producción en PythonProduction server in Python | safetensors | Muchos usuarios concurrentes en Linux con GPU de servidorMany concurrent users on Linux with server GPUs |
| MLX | Librería de Apple para sus chipsApple's library for its chips | MLX | La vía más rápida en Mac; también para afinar modelos allíFastest path on a Mac; also for fine-tuning there |
Para un solo usuario, todos se sienten parecidos en el mismo hardware. La diferencia aparece con peticiones simultáneas: en una prueba citada, vLLM sirvió ≈ 793 tok/s frente a ≈ 41 de Ollama. Cifras de una única fuente.For a single user they all feel similar on the same hardware. The difference shows with simultaneous requests: in one cited test, vLLM served ≈ 793 tok/s against ≈ 41 for Ollama. Figures from a single source.
# Ollama: descargar y chatear# Ollama: download and chat ollama pull qwen3-coder:30b ollama run qwen3-coder:30b # llama.cpp: servidor propio (-c contexto, -ngl capas en GPU, --jinja plantilla de chat)# llama.cpp: your own server (-c context, -ngl layers on GPU, --jinja chat template) llama-server -m modelo.gguf -c 16384 -ngl 99 --port 8080 --jinja
Casi todas las dudas de hardware se resuelven con dos cuentas sencillas: ¿cabe? y ¿a qué velocidad va?Almost every hardware question comes down to two simple calculations: does it fit, and how fast will it run?
Un modelo "de 8B" tiene 8.000 millones de números (pesos). Guardado con 16 bits cada uno ocupa 2 bytes por peso. La cuantización reduce la precisión de cada número (a 8 o a unos 4,5 bits) para que ocupe menos, con una pérdida de calidad pequeña si no se exagera.An "8B" model has 8 billion numbers (weights). Stored with 16 bits each it takes 2 bytes per weight. Quantisation reduces each number's precision (to 8 or to about 4.5 bits) so it takes less space, with a small quality loss if you do not overdo it.
Ollama usa por defecto Q4_K_M (≈ 4,5 bits). Además del modelo hace falta la caché KV, la "memoria de trabajo" de la conversación: según una fuente, unos 2–6 GB con el contexto por defecto, y crece con contextos largos.Ollama defaults to Q4_K_M (≈ 4.5 bits). On top of the model you need the KV cache, the conversation's "working memory": according to one source about 2–6 GB at default context, growing with long contexts.
Tamaños orientativos calculados a partir de los bits por peso; las fuentes dan ≈ 20 GB para un 32B en Q4 y ≈ 43 GB para un 70B en Q4.Indicative sizes computed from bits per weight; the sources give ≈ 20 GB for a 32B at Q4 and ≈ 43 GB for a 70B at Q4.
Para escribir cada palabra (token), el motor tiene que leer todos los pesos activos desde la memoria. Por eso, al generar, manda la velocidad de la memoria (ancho de banda), no tanto la potencia de cálculo. Es un techo teórico: en la práctica se llega a una parte.To write each word (token), the engine must read all the active weights from memory. So when generating, memory speed (bandwidth) matters more than raw compute. It is a theoretical ceiling: in practice you get a fraction.
Un token son unas tres cuartas partes de una palabra. A 30 tok/s generas más rápido de lo que se lee.A token is roughly three quarters of a word. At 30 tok/s the model writes faster than you can read.
| CasoCase | CuentaMaths | MedidoMeasured |
|---|---|---|
| RTX 5090 · 32B Q4 | 1.792 ÷ 19 ≈ 94 | 57–59 |
| Mac M4 Max · 70B Q4 | 546 ÷ 43 ≈ 13 | 8–15 |
| Strix Halo · 70B Q4 | 212 ÷ 43 ≈ 5 | 3–5 |
Ancho de banda en GB/s. Los "medidos" proceden de pruebas de terceros con distintos programas y cuantizaciones: sirven como orden de magnitud.Bandwidth in GB/s. The "measured" figures come from third-party tests with different programs and quantisations: use them as an order of magnitude.
Un modelo denso usa todos sus pesos en cada token. Un modelo MoE (mezcla de expertos) está dividido en "expertos" y un enrutador elige solo unos pocos para cada token. El nombre 30B-A3B significa 30.000 M de parámetros en total y 3.000 M activos por token.A dense model uses all its weights on every token. A MoE (mixture of experts) model is split into "experts" and a router picks only a few for each token. The name 30B-A3B means 30 billion parameters in total and 3 billion active per token.
Consecuencia: ocupa memoria como uno de 30B, pero genera con la rapidez de uno de 3B. En una RTX 5090, un MoE 30B-A3B midió 234 tok/s frente a 60–90 de un denso de 30B.Consequence: it takes memory like a 30B model but generates about as fast as a 3B one. On an RTX 5090 a 30B-A3B MoE measured 234 tok/s against 60–90 for a dense 30B.
elige 2picks 2
Naranja = expertos que se leen en este token. Todos ocupan memoria; solo los activos cuestan tiempo.Orange = experts read for this token. All of them take memory; only the active ones cost time.
Leer tu prompt.Reading your prompt. Se procesa todo a la vez; manda el cálculo. Miles de tokens por segundo (≈ 14.000 en una RTX 5090 con un 7B).Everything is processed at once; compute dominates. Thousands of tokens per second (≈ 14,000 on an RTX 5090 with a 7B).
Escribir la respuesta.Writing the answer. Token a token; manda el ancho de banda. Es lo que mides en tok/s. Y baja con contextos largos: un gpt-oss 120B pasó de 60,6 a 40,6 tok/s con 32K de contexto.Token by token; bandwidth dominates. It is what you measure in tok/s. And it drops with long contexts: a gpt-oss 120B went from 60.6 to 40.6 tok/s at 32K context.
Lo que importa es, por este orden: cuánta memoria rápida tienes (decide qué cabe) y cuánto ancho de banda tiene (decide la velocidad).What matters, in this order: how much fast memory you have (decides what fits) and how much bandwidth it has (decides speed).
| EquipoMachine | MemoriaMemory | Ancho de bandaBandwidth | Precio orient. (abr 2026)Approx. price (Apr 2026) | Qué mueve bienWhat it handles well |
|---|---|---|---|---|
| RTX 4090 (segunda manoused) | 24 GB | 1.008 GB/s | 1.500–2.200 $ (solo GPUGPU only) | Modelos de ~30B en Q4; el mejor valor si 24 GB bastan~30B models at Q4; best value if 24 GB is enough |
| RTX 5090 | 32 GB | 1.792 GB/s | 3.500–4.800 $ (solo GPUGPU only) | Densos de ~30B a 60–90 tok/s; MoE a más de 200Dense ~30B at 60–90 tok/s; MoE above 200 |
| RTX PRO 6000 | 96 GB | 1,8 TB/s | 8.000–9.200 $ (solo GPUGPU only) | Un 70B en Q4 con mucho margenA 70B at Q4 with plenty of headroom |
| 2 × RTX 5090 | 64 GB | limitado por PCIelimited by PCIe | 9.000–12.000 $ (equiposystem) | Cabe un 70B, pero no más rápido que un Mac; mejor para 30–40BA 70B fits, but no faster than a Mac; best for 30–40B |
| Mac Studio M4 Max | 128 GB unificadaunified | 546 GB/s | ≈ 3.500 $ | Un 70B en Q4 a 8–15 tok/sA 70B at Q4 at 8–15 tok/s |
| Mac Studio M3 Ultra | 256 GB unificadaunified | 819 GB/s | ≈ 6.000 $ | Modelos enormes (405B en Q4)Huge models (405B at Q4) |
| AMD Strix Halo | 128 GB | ≈ 212 GB/s | ≈ 2.000 $ (completocomplete) | Barato para MoE grandes; los densos de 70B van a 3–5 tok/sCheap for big MoE; dense 70B runs at 3–5 tok/s |
| NVIDIA DGX Spark | 128 GB | 273 GB/s | ≈ 4.700 $ | MoE grandes (gpt-oss 120B ≈ 60 tok/s); lento con densos grandesBig MoE (gpt-oss 120B ≈ 60 tok/s); slow with big dense models |
Precios de una fuente de abril 2026; cámbialos por los actuales. Sin GPU potente también se puede: llama.cpp corre en CPU, solo que mucho más lento y con modelos pequeños.Prices from an April 2026 source; replace with current ones. You can also run without a strong GPU: llama.cpp runs on CPU, just much slower and with small models.
Cada grupo es un tamaño de modelo; compara dentro del grupo. Mezcla pruebas de terceros con distintos programas y cuantizaciones, algunas con rangos: úsalo como orden de magnitud.Each group is one model size; compare within a group. It mixes third-party tests with different programs and quantisations, some as ranges: use it as an order of magnitude.
Lista según las etiquetas de Ollama a octubre de 2026 en una fuente de terceros. Los nombres y versiones cambian a menudo: úsala como mapa, no como lista cerrada.A list based on Ollama tags as of October 2026 from a third-party source. Names and versions change often: use it as a map, not a closed list.
Algunas etiquetas (Mistral Large 4, GLM-5.3, Kimi K3…) solo existen como servicio en la nube y no se pueden ejecutar en local. Según la fuente, Qwen3-Coder 30B es el mejor equilibrio calidad/memoria para una GPU de 24–32 GB.Some tags (Mistral Large 4, GLM-5.3, Kimi K3…) exist only as cloud services and cannot be run locally. According to the source, Qwen3-Coder 30B is the best quality-per-memory balance for a 24–32 GB GPU.
gpt-oss:20b. Con 24 GB, qwen3-coder:30b para código o un 27B para uso general. Si necesitas leer imágenes, elige uno de la lista marcado con visión. Y si el modelo no cabe entero en la memoria de la GPU, parte se descarga a la RAM y la velocidad cae en picado.With 16 GB, start with gpt-oss:20b. With 24 GB, qwen3-coder:30b for code or a 27B for general use. If you need to read images, pick one in the list marked with vision. And if the model does not fit entirely in GPU memory, part of it spills to RAM and speed collapses.Un modelo de embeddings no escribe texto: convierte un texto en una lista de números (un vector) que representa su significado.An embedding model does not write text: it turns a text into a list of numbers (a vector) that represents its meaning.
Textos con significado parecido dan vectores cercanos, aunque no compartan palabras. Así se puede buscar "por significado" y no solo por palabras exactas. Cuanto más cerca están dos vectores, más se parecen.Texts with similar meaning give nearby vectors, even if they share no words. That lets you search "by meaning" and not just exact words. The closer two vectors are, the more alike they are.
Usos: búsqueda semántica, RAG, encontrar duplicados, clasificar y recomendar (por ejemplo, "cromos parecidos a este").Uses: semantic search, RAG, finding duplicates, classifying and recommending (for example, "cards similar to this one").
| ModeloModel | Dim.Dim. | TamañoSize | NotasNotes |
|---|---|---|---|
| nomic-embed-text | 768 | 274 MB | punto de partida; 8.192 tokensstarting point; 8,192 tokens |
| EmbeddingGemma | 768 | 622 MB | 2.048 tokens |
| mxbai-embed-large | 1.024 | 670 MB | 512 tokens |
| bge-m3 | 1.024 | 1,2 GB | más de 100 idiomas100+ languages |
| Qwen3-Embedding 0.6B | 1.024 | 1,2 GB | el más fuerte de la lista; 32.000 tokensstrongest on the list; 32,000 tokens |
# Vectorizar un texto con Ollama# Embed a text with Ollama ollama pull nomic-embed-text curl http://localhost:11434/api/embed \ -d '{"model":"nomic-embed-text","input":"mascota pequeñasmall pet"}'
Un modelo útil no sale de un solo entrenamiento: es una cadena de etapas. Cada etapa le añade algo distinto y solo algunas están al alcance de una persona.A useful model does not come out of a single training run: it is a chain of stages. Each stage adds something different and only some are within reach of an individual.
Se enseña al modelo a adivinar la siguiente palabra (token) en cantidades enormes de texto, código e imágenes. Resultado: un modelo base. Sabe completar textos, pero no obedece instrucciones. Requiere clústeres de miles de GPUs durante semanas o meses (orden de magnitud general, no de las fuentes de esta guía).The model is taught to guess the next word (token) over enormous amounts of text, code and images. Result: a base model. It can continue texts but does not follow instructions. It takes clusters of thousands of GPUs for weeks or months (a general order of magnitude, not from this guide's sources).
Se le muestran miles de ejemplos "pregunta → buena respuesta" en formato de chat. Resultado: un modelo instruct o de chat que entiende turnos y sigue instrucciones.It is shown thousands of "question → good answer" examples in chat format. Result: an instruct or chat model that understands turns and follows instructions.
Se premian las respuestas mejores, según valoraciones humanas o automáticas (RLHF, DPO). En los modelos de razonamiento se premia también acertar problemas con respuesta comprobable (matemáticas, tests de código), y así aprenden a "pensar" antes de responder.Better answers are rewarded, based on human or automatic ratings (RLHF, DPO). For reasoning models, solving problems with checkable answers (maths, code tests) is rewarded too, so they learn to "think" before answering.
Se le enseña con ejemplos a responder con una llamada estructurada (nombre de herramienta + argumentos) cuando hace falta. Es lo que separa un modelo que solo charla de uno que puede usar herramientas (sección 10).It is taught, with examples, to reply with a structured call (tool name + arguments) when needed. This is what separates a model that only chats from one that can use tools (section 10).
Un modelo pequeño aprende imitando las respuestas de uno grande. Así se obtienen versiones que caben en casa; por ejemplo, deepseek-r1:32b es una versión destilada.A small model learns by imitating a large one's answers. That is how versions that fit at home are made; for example, deepseek-r1:32b is a distilled version.
Se reduce la precisión de los pesos (sección 04) y se guardan en un archivo como GGUF. Es lo que realmente descargas.Weight precision is reduced (section 04) and saved into a file such as GGUF. It is what you actually download.
En vez de reentrenar todos los pesos, se congela el modelo y se entrena un adaptador pequeño (LoRA) con tus ejemplos. Sirve para estilo, formato o un dominio concreto. En modelos de imagen, una fuente indica 12–16 GB de VRAM mínimos y 30–90 minutos en una RTX 4090. Para texto, QLoRA permite afinar modelos de unos 7–14B en GPUs de 16–24 GB (orden de magnitud general).Instead of retraining all weights, the model is frozen and a small adapter (LoRA) is trained on your examples. It suits style, format or a specific domain. For image models, one source gives 12–16 GB of VRAM minimum and 30–90 minutes on an RTX 4090. For text, QLoRA lets you tune ~7–14B models on 16–24 GB GPUs (a general order of magnitude).
La pregunta clave para distinguir un modelo es siempre la misma: ¿qué recibe y qué produce? Un modelo que entiende imágenes no tiene por qué saber dibujarlas.The key question to tell models apart is always the same: what does it take in and what does it produce? A model that understands images does not necessarily know how to draw them.
TextoText
Modelo de lenguajeLanguage model
TextoText
Texto → texto.Text → text. Chatea, escribe, programa, razona. Ejemplos: gpt-oss, Qwen, Llama, Devstral. Va palabra a palabra: cada token nuevo se añade y vuelve a entrar.Chats, writes, codes, reasons. Examples: gpt-oss, Qwen, Llama, Devstral. It goes word by word: each new token is appended and fed back in.
Imagen + textoImage + text
Visión-lenguajeVision-language
TextoText
Imagen + texto → texto.Image + text → text. "Interpreta" imágenes: describe una captura, lee un gráfico, localiza un error en una pantalla. Ejemplos de la lista: Gemma 4, Qwen 3.8, Nemotron Bolt. No genera imágenes."Interprets" images: describes a screenshot, reads a chart, spots an error on a screen. Examples from the list: Gemma 4, Qwen 3.8, Nemotron Bolt. It does not generate images.
AudioAudio
VozSpeech
TextoText
Voz ⇄ texto.Speech ⇄ text. Transcribir (voz a texto) o hablar (texto a voz). Algunos modelos de texto ya aceptan audio de entrada, como Gemma 4 según la fuente.Transcribing (speech to text) or speaking (text to speech). Some text models already accept audio input, like Gemma 4 according to the source.
Texto (± imagen)Text (± image)
Generador de imagenImage generator
ImagenImage
Texto → imagen.Text → image. Ejemplos: FLUX, Stable Diffusion 3.5, SDXL. No escribe palabra a palabra: parte de ruido y lo limpia en pasos guiado por tu texto (ver abajo).Examples: FLUX, Stable Diffusion 3.5, SDXL. It does not write word by word: it starts from noise and cleans it up in steps guided by your text (see below).
Texto o imagenText or image
Generador de vídeoVideo generator
ClipClip
Texto/imagen → vídeo.Text/image → video. Ejemplos: LTX-2, Wan 2.2, HunyuanVideo 1.5, CogVideoX. Es lo más exigente: genera muchos fotogramas coherentes entre sí.Examples: LTX-2, Wan 2.2, HunyuanVideo 1.5, CogVideoX. The most demanding: it generates many frames that must stay consistent with each other.
TextoText
CodificadorEncoder
VectorVector
Texto → números.Text → numbers. No genera contenido: sirve para buscar y comparar (sección 07).It generates no content: it is for searching and comparing (section 07).
Cada paso añade un token y el conjunto vuelve a entrar:Each step adds one token and the whole thing goes back in:
Elgatocomepescado.
Muchos pasos pequeños, uno por palabra. Por eso importa el ancho de banda de memoria.Many small steps, one per word. That is why memory bandwidth matters.
Cada paso reduce un poco el ruido, guiado por tu texto, hasta que aparece la imagen. Suelen ser 20–50 pasos sobre toda la imagen.Each step removes a little noise, guided by your text, until the image appears. Typically 20–50 steps over the whole image.
| ModeloModel | VRAM | ResultadoOutput |
|---|---|---|
| SDXL | 8 GB | imagen 1024 px en menos de 10 s (estimado)1024 px image in under 10 s (estimate) |
| SD 3.5 Medium (2,5B) | 8 GB | imagenimage |
| SD 3.5 Large (8B) | 11 GB (FP8) · 18 GB (FP16) | imagen 1024 px: ≈ 18 s en RTX 5090, 34 s en 4090, 50 s en 3090, 55 s en 5070 Ti1024 px image: ≈ 18 s on RTX 5090, 34 s on 4090, 50 s on 3090, 55 s on 5070 Ti |
| FLUX Dev | 8–16 GB (FP8/NF4) · ≈ 24 GB (FP16) | imagenimage |
| CogVideoX | 12 GB | clips de 6 s a 480p6 s clips at 480p |
| HunyuanVideo 1.5 (8,3B) | 14 GB (con descarga a RAMwith offloading) | clips de 5–10 s a 720p5–10 s clips at 720p |
| Wan 2.2 | 24 GB + | vídeovideo |
| LTX-2 (19B) | 24 GB (optimizado) · 32 GB (completo) | hasta 20 s, 4K a 50 fps, con audio sincronizadoup to 20 s, 4K at 50 fps, with synchronised audio |
La fuente no da tiempos por clip de vídeo; en general el vídeo tarda mucho más que una imagen. Para afinar modelos de imagen con LoRA conviene 24 GB. Un mismo documento da cifras de FLUX que no cuadran entre sí (≈ 24 GB en FP16 frente a 8–16 GB cuantizado): comprueba antes de comprar.The source gives no times per video clip; in general video takes far longer than an image. For LoRA training of image models 24 GB is recommended. The same document gives FLUX figures that do not quite agree (≈ 24 GB in FP16 against 8–16 GB quantised): check before buying.
Un modelo nunca ejecuta nada por sí mismo. Lo único que hace es escribir texto. Un modelo "con herramientas" está entrenado para escribir, cuando conviene, un texto con un formato exacto que tu programa interpreta como "ejecuta esto".A model never runs anything by itself. All it does is write text. A "tool-using" model is trained to write, when it makes sense, text in an exact format that your program interprets as "run this".
Sabe pedir una función con JSONKnows how to ask for a function using JSON
Sabe seguir una conversaciónKnows how to follow a conversation
Sabe continuar textoKnows how to continue text
get_weather()
read_file()
run_tests()
repite hasta que el modelo ya no pida nadarepeats until the model asks for nothing more
Lee mensajes + lista de herramientas. Escribe texto o una petición de herramienta.Reads messages + the tool list. Writes text or a tool request.
get_weather con {"location":"Tokio"}.The model replies with text or with a request, e.g. get_weather with {"location":"Tokyo"}.tool.You send the result back to the model as a message with the tool role.// Lo que devuelve el modelo en el paso 2 (formato tipo OpenAI)// What the model returns in step 2 (OpenAI-style format) { "role": "assistant", "tool_calls": [ { "function": { "name": "get_weather", "arguments": { "location": "Tokyo" } } } ] }
Esto es lo que ocurre dentro de agentes como los de la guía anterior: el harness es tu programa, y las herramientas pueden venir de servidores MCP. En local, con llama-server hay que arrancarlo con --jinja para que use la plantilla de chat del modelo, que es la que sabe escribir las llamadas.This is what happens inside agents like those in the previous guide: the harness is your program, and the tools can come from MCP servers. Locally, llama-server must be started with --jinja so it uses the model's chat template, which is the one that knows how to write the calls.
Cinco montajes reales, de menos a más exigente. Son ilustrativos: ajusta modelos y tamaños a lo que tengas.Five realistic setups, from least to most demanding. They are illustrative: adjust models and sizes to what you have.
ollama run gpt-oss:20b
Cabe en ≈ 16 GB y, al ser MoE, genera rápido para su tamaño. Útil para resumir, redactar o preguntar sobre textos sin enviarlos a ningún sitio. Sin GPU potente irá más lento: prueba antes de contar con él.It fits in ≈ 16 GB and, being MoE, generates fast for its size. Useful for summarising, drafting or asking about texts without sending them anywhere. Without a strong GPU it will be slower: try it before relying on it.
qwen3-coder:30b (≈ 19 GB, MoE, 256K de contexto).Pull qwen3-coder:30b (≈ 19 GB, MoE, 256K context).http://localhost:11434/v1, como si fuera una API de OpenAI.Your editor or agent tool points to http://localhost:11434/v1, as if it were an OpenAI API.Una API compatible con OpenAI es lo que permite enchufar el modelo local en muchas herramientas, o detrás de tu propio gateway.An OpenAI-compatible API is what lets you plug the local model into many tools, or behind your own gateway.
nomic-embed-text (274 MB, en CPU basta).Chunk your notes and embed them with nomic-embed-text (274 MB, CPU is enough).nomic-embed-text
gpt-oss:20b
Dos modelos pequeños distintos: uno para buscar y otro para redactar.Two different small models: one to search and one to write.
ComfyUI es la interfaz más usada para modelos de difusión. Con 8 GB, SDXL a 1024 px tarda menos de 10 s (estimación de una fuente). Con 16 GB, SD 3.5 Large en FP8 o FLUX cuantizado. Si quieres un estilo propio, un LoRA de imagen necesita 12–16 GB como mínimo.ComfyUI is the most used interface for diffusion models. With 8 GB, SDXL at 1024 px takes under 10 s (one source's estimate). With 16 GB, SD 3.5 Large in FP8 or quantised FLUX. If you want your own style, an image LoRA needs 12–16 GB at minimum.