Hoy vamos a aprender a utilizar DeepSeek usando su API de forma gratuita usando OpenRouter.

Lo primero que haremos es registrarnos en la web de OpenRouter: https://openrouter.ai/
Una vez tenemos la cuenta creada e iniciada la sesión tenemos que ir a buscar el modelo «DeepSeek R1 (free)»

Y aquí tendremos toda la información necesaria.
Pulsaremos en API y generamos un API Key y la copiamos.
Y ahora podemos utilizarlo de la sigueinte forma:
Voy a utilizar código en Python.
Utilizando el API de OpenaAI:
Instalamos OpenAI:
pip install openai
Y usamos este código completando nuestros datos.
from openai import OpenAI client = OpenAI( base_url="https://openrouter.ai/api/v1", api_key="<OPENROUTER_API_KEY>", ) completion = client.chat.completions.create( extra_headers={ "HTTP-Referer": "<YOUR_SITE_URL>", # Optional. Site URL for rankings on openrouter.ai. "X-Title": "<YOUR_SITE_NAME>", # Optional. Site title for rankings on openrouter.ai. }, model="deepseek/deepseek-r1:free", messages=[ { "role": "user", "content": "Quién eres?" } ] ) print(completion.choices[0].message.content)
También podemos utilizarlo en TypeScript:
Instalos la librería con npm
npm i openai
Y modificamos este código con nuestros datos:
import OpenAI from "openai" const openai = new OpenAI({ baseURL: "https://openrouter.ai/api/v1", apiKey: "<OPENROUTER_API_KEY>", defaultHeaders: { "HTTP-Referer": "<YOUR_SITE_URL>", // Optional. Site URL for rankings on openrouter.ai. "X-Title": "<YOUR_SITE_NAME>", // Optional. Site title for rankings on openrouter.ai. } }) async function main() { const completion = await openai.chat.completions.create({ model: "deepseek/deepseek-r1:free", messages: [ { "role": "user", "content": "Quién eres?" } ] }) console.log(completion.choices[0].message) } main()
Y si queremos utilizarlo sin instalar la librería:
En Python:
import requests import json response = requests.post( url="https://openrouter.ai/api/v1/chat/completions", headers={ "Authorization": "Bearer <OPENROUTER_API_KEY>", "HTTP-Referer": "<YOUR_SITE_URL>", # Optional. Site URL for rankings on openrouter.ai. "X-Title": "<YOUR_SITE_NAME>", # Optional. Site title for rankings on openrouter.ai. }, data=json.dumps({ "model": "deepseek/deepseek-r1:free", # Optional "messages": [ { "role": "user", "content": "Quién eres?" } ] }) )
En TypeScript:
fetch("https://openrouter.ai/api/v1/chat/completions", { method: "POST", headers: { "Authorization": "Bearer <OPENROUTER_API_KEY>", "HTTP-Referer": "<YOUR_SITE_URL>", // Optional. Site URL for rankings on openrouter.ai. "X-Title": "<YOUR_SITE_NAME>", // Optional. Site title for rankings on openrouter.ai. "Content-Type": "application/json" }, body: JSON.stringify({ "model": "deepseek/deepseek-r1:free", "messages": [ { "role": "user", "content": "Quién eres?" } ] }) });
Desde la propia consola de linux:
curl https://openrouter.ai/api/v1/chat/completions \ -H "Content-Type: application/json" \ -H "Authorization: Bearer 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" \ -d '{ "model": "deepseek/deepseek-r1:free", "messages": [ { "role": "user", "content": "Quién eres?" } ] }'
Y nos responderá de esta forma:


Ingeniero en Informática, Investigador, me encanta crear cosas o arreglarlas y darles una nueva vida. Escritor y poeta. Más de 20 APPs publicadas y un libro en Amazon.