DeepSeek API: clave, precios y cuándo pasar a local
La API de DeepSeek permite acceder a los modelos de DeepSeek desde tu propio código, con facturación por token y un formato de solicitud compatible con el de OpenAI. Esta guía muestra cómo crear una clave, realizar una primera llamada y leer la tabla oficial de tarifas sin equivocarte de fila. No reproduce ningún precio: los importes cambian y solo la página del proveedor sirve de referencia válida. Termina con los criterios que indican cuándo un modelo local resulta más sencillo o más barato que la API.
#DeepSeek API: lo esencial antes de empezar
DeepSeek ofrece dos vías de acceso que no se deben confundir. El sitio de chat, gratuito, se usa en un navegador. La API, en cambio, está dirigida a los desarrolladores: tu programa envía una solicitud, los servidores de DeepSeek devuelven una respuesta y el coste de cada intercambio se descuenta de tu saldo. Esta guía trata esa segunda vía.
- Qué es
- Un servicio de pago por uso, alojado por DeepSeek. No descargas nada: el modelo se ejecuta en los servidores del proveedor.
- El formato
- Compatible con la API de OpenAI. Las bibliotecas y herramientas que saben hablar con OpenAI funcionan cambiando dos ajustes: la dirección base y la clave.
- Facturación
- Por token, con cargo a un saldo prepagado. La tabla de tarifas distingue entre los tokens enviados, según estén ya en caché o no, y los tokens generados.
- Tus datos
- Cada solicitud sale de tu infraestructura y se procesa en los servidores del proveedor. Este es el punto que debes revisar en primer lugar si manejas datos personales o confidenciales.
- L'alternative
- DeepSeek también publica los pesos de sus modelos. Una versión adaptada a tu hardware puede ejecutarse en tu máquina, sin facturación por token ni envío de datos.
#Prerrequisitos
Desplegar una IA local en el trabajo: RGPD, AI Act, arquitectura multiusuario, costes, nota para la dirección.
- Espacio en línea de por vida
- PDF + archivos
- Actualizaciones de por vida
- Una cuenta de desarrollador
- Se crea en la plataforma de DeepSeek, en la dirección platform.deepseek.com. No es la misma dirección que el sitio de chat.
- Un medio de pago
- El servicio funciona con un saldo que recargas por adelantado. Sin saldo disponible, las llamadas se rechazan.
- Una herramienta para llamar a la API
- curl basta para una primera prueba. Para un proyecto real, Python 3 con la biblioteca openai o su equivalente para Node.js.
- Un lugar seguro para la clave
- Una variable de entorno en tu equipo, un gestor de secretos en producción. Nunca el código fuente.
#Crear una clave de la API de DeepSeek
- 01Abrir una cuenta en la plataformaVe a platform.deepseek.com escribiendo tú mismo la dirección y luego regístrate. Para un uso profesional, utiliza una dirección compartida del equipo en lugar de una personal: la cuenta contiene el saldo y las claves, y debe seguir siendo accesible cuando un compañero deje el equipo.
- 02Recargar el saldoLa sección de recarga de la plataforma permite añadir crédito. Comienza con una pequeña cantidad: es más que suficiente para las pruebas y limita automáticamente el gasto si un bucle mal escrito se descontrola.
- 03Generar la claveEn la sección de claves de API, crea una nueva clave y dale un nombre que indique para qué sirve (« essais-poste-clara », « prod-support »). Cópiala inmediatamente: como en la mayoría de las plataformas, solo se muestra completa en el momento de su creación.
- 04Guardar la clave fuera del códigoColócala en una variable de entorno. Tu programa la leerá al iniciar, y no aparecerá ni en un repositorio Git ni en una captura de pantalla.
#Primera llamada: el formato compatible con OpenAI
La dirección base de la API es https://api.deepseek.com. La clave se envía en el encabezado Authorization, precedida por la palabra Bearer. Antes de enviar una pregunta, empieza por solicitar la lista de modelos a los que puedes llamar con tu clave: los identificadores cambian de una generación a otra, y es la única lista que, por su propia naturaleza, está actualizada.
La respuesta es un objeto JSON cuyas entradas tienen un campo id. Es este identificador, copiado tal cual, el que debes colocar en tus solicitudes. Muchos tutoriales usan los nombres históricos deepseek-chat y deepseek-reasoner: antes de usarlos, comprueba que figuren en la lista devuelta y lee en la página de tarifas a qué modelo corresponde cada nombre actualmente.
En Python, la biblioteca oficial de OpenAI sirve para hacerlo. Solo dos parámetros cambian respecto a una llamada a OpenAI: la clave y la dirección base.
La última línea es la más útil para lo que viene después. El objeto usage indica cuántos tokens has enviado (prompt_tokens) y cuántos ha generado el modelo (completion_tokens). La documentación de la caché de contexto describe dos campos adicionales, prompt_cache_hit_tokens y prompt_cache_miss_tokens, que separan los tokens de entrada ya almacenados en caché de los que no lo estaban. Muestra el objeto devuelto por tu propia llamada: ese es el que sirve de referencia, no un ejemplo.
#Tarifas de la DeepSeek API: leer la tabla oficial
Todos los precios se encuentran en una sola página de la documentación. Ábrela junto a esta guía: los párrafos que siguen explican qué significa cada línea, no cuánto cuesta.
La cuadrícula se presenta como una tabla, con una columna por modelo. Los precios se expresan por millón de tokens. Para un texto corriente en francés, un token representa un poco menos de una palabra, pero la relación varía según el modelo y el contenido: para contar, fíate del objeto usage de tus respuestas en lugar de una regla de conversión.
- Entrada, fallo en caché (cache miss)
- El precio normal de los tokens que envías: instrucción del sistema, historial de la conversación, documentos adjuntos, pregunta.
- Entrada, acierto de caché (cache hit)
- Un precio reducido, aplicado a la parte de tu solicitud que el servicio ya trató recientemente y mantuvo en caché.
- Salida (output)
- El precio de los tokens generados por el modelo. Compara esta línea con la de entrada: en las API de este tipo, suele ser la de mayor precio.
- Tokens de razonamiento
- Un modelo en modo de razonamiento escribe una reflexión antes de responder. Revisa la página para ver cómo se cuentan estos tokens: si se facturan como salida, una respuesta de tres líneas puede costar el precio de una página.
- Contexto y salida máxima
- La misma tabla indica la longitud de contexto y el tamaño máximo de una respuesta. No son precios, sino que limitan lo que puede costar una solicitud.
- Moneda
- Anota la moneda que se muestra. Si la tabla de tarifas no está en euros, añade el tipo de cambio y las posibles comisiones de tu banco por las recargas.
#La caché de contexto, principal fuente de diferencias
La caché funciona por prefijo: si el inicio de una solicitud es idéntico al de una solicitud reciente, esa parte común se factura a la tarifa reducida. No necesitas activar nada. Sin embargo, el orden en que construyes la solicitud determina lo que pagas.
- Primero, lo que no cambia
- Coloca al principio lo que no cambia de una llamada a otra: consigna del sistema, ejemplos, documento de referencia.
- Variable al final
- La pregunta del usuario, la fecha, un identificador de sesión van al final. Una fecha insertada en la primera línea basta para hacer que cada solicitud sea única, por lo que se pierde el beneficio del caché.
- Medir en lugar de suponer
- El uso de la caché no está garantizado. La proporción realmente alcanzada se consulta en los campos de caché del objeto usage. Si se mantiene cerca de cero aunque tus solicitudes sean similares, debes revisar cómo las construyes.
#Horas valle y descuentos temporales
Una tabla de tarifas de una API puede ofrecer un precio reducido en una franja horaria o durante un periodo de lanzamiento. Es necesario realizar tres comprobaciones antes de tenerlo en cuenta en un presupuesto.
- ¿Se muestra el descuento en la página hoy?
- Si la página oficial no menciona ni franja horaria ni descuento, considera que no los hay. No elabores un presupuesto basándote en un descuento mencionado en un artículo antiguo.
- ¿En qué huso horario?
- Las franjas horarias suelen indicarse en UTC. En Francia metropolitana, suma una hora en invierno y dos en verano.
- ¿Puedes cambiar el horario de tu carga de trabajo?
- Una franja horaria de baja demanda solo beneficia a los procesos que pueden esperar: resúmenes nocturnos, clasificación de documentos, generación por lotes. Un asistente que responde a clientes durante el día no se beneficiará de ella.
#El cálculo, con tus números
El costo de una llamada es la suma de tres productos: tokens de entrada fuera de caché, tokens de entrada en caché y tokens de salida, cada uno multiplicado por su precio y dividido entre un millón. La función que aparece a continuación aplica esta fórmula al objeto usage de una respuesta. Los tres precios se dejan en cero: cópialos tú mismo desde la página oficial para el modelo al que llamas.
#Seguir tu consumo
El saldo restante se consulta en la plataforma, y la API ofrece un punto de acceso que lo devuelve en JSON. Es práctico para activar una alerta antes de que se agote el saldo, en lugar de después.
- Registrar cada llamada
- Guarda la fecha, el modelo y los contadores del objeto usage. Dos semanas de registro en condiciones reales valen más que cualquier estimación: es la base de la decisión entre API y ejecución local.
- Limitar la salida
- El parámetro max_tokens limita la longitud de una respuesta y, por tanto, su coste máximo. Ajústalo según la tarea en lugar de dejar el valor predeterminado.
- Monitorear el historial
- En una conversación, todo el historial se vuelve a enviar en cada turno. Una conversación de cincuenta intercambios vuelve a enviar su inicio cincuenta veces, aunque la caché reduzca el coste. Resume o trunca el historial cuando supere cierta longitud.
- Crédito gratuito y crédito recargado
- Si tu cuenta dispone de crédito gratuito además del crédito recargado, la página de tarifas especifica en qué orden se consumen. Comprueba también si tiene fecha de caducidad.
#API o modelo local: cómo decidir
No existe un umbral universal a partir del cual ejecutar modelos en local resulte más barato, y esta guía no lo inventa. El resultado depende de tres cifras que solo tú conoces: tu volumen real de tokens, la tabla de tarifas del día y el precio del hardware que comprarías. Los criterios que se indican a continuación suelen permitirte decidir antes incluso de sacar la calculadora.
- Confidencialidad
- Datos personales, contratos, código propietario, expedientes de clientes: con la API, estos contenidos se envían a un tercero establecido fuera de la Unión Europea, lo que está sujeto al RGPD y debe validarse con tu delegado de protección de datos. Al ejecutarlo en local, esta cuestión no se plantea. A menudo, este criterio basta por sí solo para decidir.
- Volumen y regularidad
- Un uso bajo o irregular favorece la API: no pagas nada cuando no la usas. Un uso sostenido y previsible favorece la ejecución local: la máquina cuesta lo mismo tanto si procesa diez peticiones como si procesa diez mil.
- Calidad necesaria
- La API ofrece los grandes modelos del proveedor. En una tarjeta de 12 a 24 GB de VRAM, podrás ejecutar modelos considerablemente más pequeños: calcula unos 9 GB para un 14B y 19 GB para un 32B en Q4_K_M. Si tu tarea exige el gran modelo, ejecutarlo en local requiere hardware de otra categoría.
- Disponibilidad
- La API depende de la carga del proveedor y de tu conexión. La ejecución local depende de tu máquina, que debes supervisar y reparar tú mismo.
- Previsibilidad del presupuesto
- La factura de la API depende del uso y puede sorprender. Ejecutar en local supone un costo fijo, conocido de antemano: compra o alquiler, electricidad, tiempo de mantenimiento.
- Tiempo de trabajo humano
- La API se conecta rápidamente: una clave, unas líneas de código. Un servidor local requiere una instalación, actualizaciones y una persona que sepa qué hacer cuando ya no responde. Este tiempo tiene un costo, que debe incluirse en la comparación.
#La comparación en cuatro pasos
- 01MedirEjecuta tu caso de uso a través de la API durante dos semanas registrando el objeto usage. Obtienes un volumen mensual real, repartido entre entrada sin caché, entrada en caché y salida.
- 02Calcular el coste de la APIAplica a este volumen la tabla oficial de tarifas del día. Ese es tu coste mensual de API, con la fecha en que se consultaron las tarifas.
- 03Calcular el coste del uso localToma el precio de la máquina capaz de ejecutar el modelo que quieres usar, repártelo entre los años o meses del periodo de uso que elijas y añade la electricidad y el tiempo de mantenimiento. La guía sobre el costo de un servidor GPU detalla este cálculo.
- 04Verificar la calidad antes del precioEnvía veinte consultas reales al modelo local que tu hardware pueda ejecutar y compara sus respuestas con las de la API. Si el resultado no es adecuado, la comparación de costes ya no tiene sentido: no estás comparando el mismo servicio.
#El mismo código para los dos
Pasar de uno a otro no requiere reescribir tu aplicación. Ollama, que escucha por defecto en http://localhost:11434, también expone una interfaz compatible con OpenAI en la ruta /v1. El código que aparece a continuación alterna entre la API DeepSeek y un modelo local según una variable de entorno.
El modelo deepseek-r1:14b es una versión destilada que cabe en una tarjeta de 12 GB como una RTX 3060. No es el modelo que ofrece la API: espera respuestas menos precisas en las tareas difíciles. Esta configuración sirve precisamente para comprobarlo con tus propias consultas, en el cuarto paso del método.
#Solución de problemas: errores comunes
La documentación de DeepSeek incluye una página de códigos de error. Los casos siguientes son los que se encuentran al arrancar; en caso de duda, la página oficial tiene prioridad sobre este resumen.
- 401, autenticación rechazada
- La clave está ausente, truncada o revocada. Asegúrate de que la variable de entorno esté bien definida en el terminal desde el que se lanza el programa y de que no se haya introducido ningún espacio al copiar y pegar.
- 402, saldo insuficiente
- La cuenta ya no tiene crédito. Recarga desde la plataforma. Una alerta en el endpoint de saldo evita que esto ocurra en producción.
- 400 o 422, solicitud inválida
- El cuerpo JSON está mal formado o un parámetro no es aceptado. La causa más frecuente es un identificador de modelo copiado de un tutorial antiguo: vuelve a la lista /models.
- 429, demasiadas solicitudes
- Envías solicitudes más rápido de lo que el servicio puede aceptarlas. Espacia las llamadas y vuelve a intentarlo tras un intervalo de espera cada vez mayor.
- 500 o 503, error o sobrecarga del servidor
- El problema está del lado del editor. Espera un poco y vuelve a intentarlo, y prevé en tu aplicación un mensaje claro o un modelo de respaldo.
- Respuesta muy lenta
- En periodos de alta carga, puede pasar mucho tiempo antes de que una solicitud empiece a recibir una respuesta. Fija un tiempo de espera máximo en el cliente y activa el modo stream para mostrar la respuesta a medida que se genera.
- Factura más alta de lo previsto
- Tres sospechosos habituales: tokens de razonamiento contabilizados como salida, pocos aciertos de caché y un historial de conversación reenviado completo en cada turno. El registro del objeto usage permite distinguirlos.
#Fuentes oficiales
Los precios, la lista de modelos y las reglas de facturación cambian. Estas páginas del proveedor son la referencia y hay que consultarlas antes de tomar cualquier decisión basada en cifras.
#Para ir más allá
Esta guía se limita a la clave, la lectura de la tabla y el método de decisión. Para calcular los costes e instalar, estas guías del sitio toman el relevo:
- ¿Cuánto cuesta un servidor GPU para LLM?
- Compra, alquiler o API: los costos a sumar en la etapa tres de la comparación. https://quelllm.fr/guide/cout-serveur-gpu-llm
- API de LLM gratuitas: la verdadera comparativa
- Las ofertas gratuitas, sus cuotas y lo que ocurre con tus datos, si tus necesidades encajan en un nivel gratuito. https://quelllm.fr/guide/api-llm-gratuites-vs-local
- DeepSeek V4 Pro en local
- El hardware que exige el gran modelo de la familia cuando se quiere ejecutar localmente. https://quelllm.fr/guide/guide-deepseek-v4-pro
- IA local vs ChatGPT
- La misma pregunta, en la nube o local, planteada para un uso de conversación en lugar de para una API. https://quelllm.fr/guide/ia-locale-vs-chatgpt
¿Un comentario, un error, una precisión? Avísanos, eso mejora la guía para todos.