Ejecutar OpenClaw en Modelos WEC
+A través de Partes 1–4 implementaste OpenClaw, lo aseguraste con HTTPS, añadiste Telegram y lo hiciste privado a través de una malla NetBird — todo apuntando a OpenAI. Esta parte intercambia el modelo por debajo: apunta el mismo agente a Modelos WEC — la inferencia compatible con OpenAI de WiLine — y ejecútalo en un modelo de peso abierto, Llama 3.1 8B Instruct. Misma caja, sin reconstrucción — solo un cambio de base-URL, clave y modelo a través de la CLI de OpenClaw.
Continúa en la misma Instancia WEC de las Partes 1–4. Modelos WEC es un
punto final compatible con OpenAI en https://inference.wiline.com/v1; cada comando
a continuación se ejecutó contra un contenedor de puerta de enlace OpenClaw en vivo
(openclaw-openclaw-gateway-1).
Por qué apuntar OpenClaw a Modelos WEC
Si autoalojaste el agente para empezar, ya te importa el control — no depender de la nube de otra persona, no estar a un correo de la página de precios de reconstrucción. Pero hay una brecha en esa historia: el agente se ejecuta en tu caja, y cada mensaje que maneja todavía se envía a OpenAI para que lo procese. Autoalojar el agente y externalizar el modelo es solo la mitad del trabajo. Esta parte lo cierra.
- Un modelo, de extremo a extremo en WiLine — tu agente y su modelo se ejecutan en WEC; sin proveedor de terceros en la ruta caliente.
- Pesos abiertos — Llama 3.1 no es una caja cerrada; no estás bloqueado a una sola API de proveedor para mantener el agente en funcionamiento.
- Es un cambio de configuración, no una migración — OpenClaw ya habla la API de OpenAI, y Modelos WEC es compatible con OpenAI, por lo que mantienes tu agente, prompts y canales intactos.
También es más barato. El catálogo propio de WEC fija el precio de Llama3.1-8B-Instruct en
$0.15 / 1M tokens de entrada · $0.20 / 1M tokens de salida. OpenAI no publica una
tarifa independiente para gpt-5.5 (el modelo que OpenClaw utiliza por defecto en
Parte 1) más, pero su miembro familiar más cercano
actual — GPT-5.6 "Terra", presentado por OpenAI como
"competitivo en rendimiento con GPT-5.5" — se lista en
$2.50 / 1M en · $15 / 1M fuera. Esa es una comparación aproximada, no un
benchmark de manzanas a manzanas — el movimiento honesto, como siempre en este blog, es
evalúalo en tu propia carga de trabajo
en lugar de confiar en el número de ningún proveedor. Pero la dirección es lo suficientemente clara como para valer los diez minutos que esto toma.
Requisitos previos
- OpenClaw ejecutándose desde Partes 1–4 (cualquiera
de las configuraciones funciona). Esta guía asume que el contenedor de puerta de enlace se llama
openclaw-openclaw-gateway-1. - Una clave API de WEC.
- Acceso a la terminal de la caja de OpenClaw.
Paso 1 — Obtener una clave API de WEC
Consulta Inferencia → Claves API si no tienes una (la misma clave de Parte 1 de la serie de evaluaciones funciona bien aquí).
Figura 1. Crea una clave en Inferencia → Claves API, luego cópiala.
Mantenla fuera de tu historial de terminal — ponla en un archivo en lugar de exportarla directamente:
echo 'WEC_API_KEY=sk-wec-...' >> env.local
source <(grep -v '^#' env.local | sed 's/^/export /')
Paso 2 — Encontrar el ID del modelo
Consulta el punto final compatible con OpenAI /v1/models para ver qué está activo en tu Instancia WEC:
curl -s -H "Authorization: Bearer $WEC_API_KEY" https://inference.wiline.com/v1/models
La respuesta lista cada modelo disponible para tu clave, junto con el id que utiliza este tutorial:
{"data":[
...,
{"id":"Llama3.1-8B-Instruct","object":"model","created":1677610602,"owned_by":"openai"},
...
]}
Los ids de modelo en WEC no siempre son el nombre de visualización mostrado en el portal — siempre toma
el id exacto de esta respuesta, no una suposición.
Paso 3 — Apuntar OpenClaw a Modelos WEC
No edites manualmente openclaw.json — usa openclaw config set. Valida el
archivo completo en cada escritura, por lo que un error tipográfico falla ruidosamente en lugar de romper
silenciosamente la puerta de enlace. Un proveedor personalizado necesita su base URL, su estilo de API y su lista de modelos declarados juntos, en una sola escritura — el esquema rechaza un proveedor que
falta alguno de los tres, así que construye el objeto completo desde el principio:
docker exec openclaw-openclaw-gateway-1 openclaw config set models.providers.wec '{
"baseUrl": "https://inference.wiline.com/v1",
"api": "openai-completions",
"models": [
{"id": "Llama3.1-8B-Instruct", "name": "Llama 3.1 8B Instruct"}
]
}' --strict-json
Updated models.providers.wec. Change will apply without restarting the gateway.
Eso registra WEC como un proveedor, pero aún no está autenticado. No pongas la
clave directamente en ese JSON — la configuración de composición de OpenClaw mantiene las claves API fuera de
las variables de entorno por completo y las almacena en un directorio de secretos dedicado respaldado por archivos en su lugar (OPENCLAW_AUTH_PROFILE_SECRET_DIR, montado en el
contenedor). Pasa la clave al propio almacén de autenticación de OpenClaw y deja que haga la conexión:
echo "$WEC_API_KEY" | docker exec -i openclaw-openclaw-gateway-1 openclaw models auth paste-api-key --provider wec
Updated config: $OPENCLAW_HOME/.openclaw/openclaw.json
Backup: $OPENCLAW_HOME/.openclaw/openclaw.json.bak
Auth profile: wec:manual (wec/api_key)
Verifica que el proveedor y su autenticación se resolvieron juntos, luego haz que el modelo sea el predeterminado para que cada agente lo recoja sin configuración adicional:
docker exec openclaw-openclaw-gateway-1 openclaw models list
docker exec openclaw-openclaw-gateway-1 openclaw models set wec/Llama3.1-8B-Instruct
Modelo Entrada Ctx Autenticación Local Etiquetas
wec/Llama3.1-8B-Instruct texto 200k no sí configurado
openai/gpt-5.5 texto 200k no sí configurado,alias:GPT
...
Updated config: $OPENCLAW_HOME/.openclaw/openclaw.json
Backup: $OPENCLAW_HOME/.openclaw/openclaw.json.bak
Modelo predeterminado: wec/Llama3.1-8B-Instruct
Figura 2. wec/Llama3.1-8B-Instruct, autenticado y establecido como el modelo predeterminado.
Paso 4 — Verificar
OpenClaw puede ejecutar más de un agente por puerta de enlace, así que cada mensaje necesita un
objetivo — pasa --agent, coincidiendo con lo que openclaw agents list llama tu
agente (main, a menos que lo hayas renombrado):
docker exec openclaw-openclaw-gateway-1 openclaw agents list
Agentes:
- main (predeterminado)
Espacio de trabajo: $OPENCLAW_HOME/.openclaw/workspace
Modelo: wec/Llama3.1-8B-Instruct
Reglas de enrutamiento: 0
Envíale un mensaje y ve quién responde:
docker exec openclaw-openclaw-gateway-1 openclaw agent --agent main --message "¿Cuál es la capital de Francia?"
París es la capital de Francia.
Eso es WEC, en Llama 3.1, sin OpenAI en el circuito.
Figura 3. El agente, ejecutándose en Llama 3.1 8B Instruct a través de WEC.
Paso 5 (opcional) — Desactivar el modo de pensamiento
¿Quieres que sea más rápido? Desactiva el modo de pensamiento — es un comando de barra dentro del chat, no un comando de terminal:
docker exec openclaw-openclaw-gateway-1 openclaw agent --agent main --message "/think off"
El modo de pensamiento ha sido desactivado.
O haz que se mantenga para cada sesión:
docker exec openclaw-openclaw-gateway-1 openclaw config set agents.defaults.thinkingDefault "off"
Updated agents.defaults.thinkingDefault. No se necesita reiniciar la puerta de enlace.
Solución de problemas (real)
"los proveedores de modelos personalizados deben declarar modelos" — declara baseUrl, api,
y models juntos, en una sola llamada config set. Un proveedor personalizado que
falta alguno de los tres es rechazado; no puedes añadir models en una escritura posterior.
"models.providers.wec.apiKey no está resuelto en la instantánea de tiempo de ejecución activa"
— no establezcas apiKey en el objeto del proveedor; deja que models auth paste-api-key
lo posea (Paso 3). ¿Ya estableciste uno? Elimínalo:
docker exec openclaw-openclaw-gateway-1 openclaw config unset models.providers.wec.apiKey
"No se seleccionó ninguna sesión de destino" — siempre pasa --agent <id> con
openclaw agent. Verifica el id con openclaw agents list primero si no estás
seguro (main, a menos que lo hayas renombrado).
-bash: /think: No such file or directory — /think es un comando de barra
para dentro del chat, no un comando de terminal. Pásalo a través de --message en su lugar,
como en el Paso 5.
Qué sigue
Con el agente ejecutándose en nuestro propio modelo, el siguiente paso es medirlo — evaluando la calidad de las respuestas con Promptfoo + Modelos WEC.
