Un ordenador nuevo, sin nada
En la lección anterior el agente estaba listo y esperando. En el trabajo, muchas veces empiezas con un ordenador que no tiene nada instalado. Hoy instalas el agente tú, le dices dónde está su modelo y lo usas otra vez con el programa de la cafetería.
Al final de esta lección
Nota
Puedo instalar un agente de programación y conectarlo a un modelo.
Palabras clave
- Paquete: un programa empaquetado para poder instalarlo.
- npm: la herramienta que instala paquetes de JavaScript.
- Archivo de configuración: un archivo de ajustes que un programa lee al arrancar.
- Endpoint (punto de acceso): la dirección web a la que un programa envía sus peticiones.
- Proxy: un intermediario que decide a qué direcciones se puede llegar.
Antes de empezar
Nota
Pulsa Iniciar el laboratorio en la barra superior de esta lección y espera a que diga que está en marcha. El laboratorio es un servicio llamado agent, y el terminal llega a él con ese nombre. Cada botón Ejecutar escribe su comando en el terminal de tu laboratorio, uno detrás de otro y en la misma sesión. Para verlos o para escribir los tuyos, pulsa Abrir el terminal (pestaña nueva) en la barra.
1. No hay nada instalado
npm ls -g lista los paquetes instalados para todos los proyectos de este ordenador. La lista está vacía: todavía no hay agente.
docker exec agent npm ls -gSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
2. Instala el agente
El @1.19.3 del final fija una versión exacta, así que toda la clase obtiene el mismo agente. La instalación tarda más o menos un minuto. Si se corta con la palabra Killed, al laboratorio le faltó memoria mientras npm escribía los archivos: ejecútalo otra vez. Después pregúntale al agente qué versión es.
docker exec agent npm install -g --no-fund --no-audit [email protected]Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
docker exec agent opencode --versionSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Cómo consiguió salir npm del laboratorio
Nota
Este laboratorio no tiene salida a internet. npm consiguió el paquete a través de un proxy en http://ai:3128, que deja pasar el registro de npm y nada más. Cualquier otra dirección se rechaza.
3. Dile al agente dónde está su modelo
El agente no sabe qué modelo usar hasta que un archivo de configuración se lo dice. Lee el ejemplo. baseURL es el endpoint, el modelo de la plataforma en ai:4000. model lo elige por su nombre, lab/lab. permission hace que el agente pregunte antes de editar un archivo o ejecutar un comando. Después crea la carpeta y copia el archivo dentro.
docker exec agent cat /home/node/opencode.example.jsonSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
docker exec agent mkdir -p /home/node/.config/opencodeSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
docker exec agent cp /home/node/opencode.example.json /home/node/.config/opencode/opencode.jsonSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Un error común
Advertencia
Mucha gente piensa que un agente necesita una clave secreta en su configuración para llegar a un modelo. Aquí la clave es lab, un valor de relleno. El laboratorio añade la clave real por el camino, así que nunca está en un archivo que podrías compartir por error. No pegues nunca una clave real en una configuración que vayas a entregar.
4. Usa tu agente
Primero una pregunta, para demostrar que la configuración funciona. Después abre la pantalla del agente y pídele que arregle el error de total, como en la lección anterior: lee cada cambio antes de permitirlo y pulsa Ctrl+C dos veces para cerrarlo. Después ejecuta las pruebas.
docker exec -w /home/node/project agent opencode run "In one sentence, what does shop.js do?"Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
docker exec -it -w /home/node/project agent opencodeSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
docker exec -w /home/node/project agent node --testSe muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.
Preguntas para responder
- ¿Por qué la instalación nombra una versión exacta,
@1.19.3? - ¿Qué línea de la configuración dice dónde está el modelo?
- ¿Cómo llegó npm al registro si el laboratorio no tiene salida a internet?
- ¿Por qué no hay una clave real en tu configuración?
- Después de detener e iniciar el laboratorio, ¿qué tienes que hacer otra vez y por qué?
Para el profesorado
Consejo
Esta lección es un pequeño ejemplo de una lección practicada en un laboratorio: los pasos y los botones Ejecutar son la lección, y el laboratorio es la copia de cada alumno. El laboratorio es el de la primera lección, sin nada instalado: el alumno instala opencode desde npm a través de un proxy con lista de direcciones permitidas y copia una configuración en su sitio. Ideas clave: 1. Un programa se instala como paquete, fijado a una versión. 2. Un archivo de configuración le dice a un agente dónde está su modelo. 3. Una clave nunca va en un archivo que se entrega. Esté atento al alumno que piensa que el agente funciona sin configuración y pídale que lo ejecute antes de la copia. El alumno entrega su opencode.json, las pruebas antes y después, y sus respuestas. Cópiela en su propio módulo y modifíquela, o cree una desde cero con el menú Laboratorio del creador de lecciones.