Hace unas semanas, OpenAI anunció que Codex está disponible para los usuarios de Plus, y no he perdido la oportunidad de probarlo.Y hoy, estoy emocionado de compartir una guía para el Codex de OpenAI.
¿Qué es el OpenAI Codex?
OpenAI Codex es un modelo de IA que convierte sus instrucciones en inglés en código, soporta docenas de lenguajes de programación (incluyendo Python, JavaScript, Go, Ruby y más) y es lo suficientemente potente como para entender y generar código en esos idiomas.
En esencia, si describe una tarea de programación o hace una pregunta sobre el código, Codex tratará de producir una respuesta útil en forma de código o una explicación.
Se basa en la familia de modelos GPT (Generative Pre-Trained Transformer), entrenados específicamente en un enorme conjunto de datos de código fuente disponible públicamente de GitHub y texto en lengua natural.
Sin embargo, no te confundas, Codex no es una extensión para tu IDE, es un agente de ingeniería de software basado en la nube que puede trabajar en múltiples tareas en paralelo.
It can:
- Leer y entender su base de código existente.
- Escribe nuevo código en varios archivos: No sólo fragmentos, sino características o correcciones reales.
- Corre las pruebas (si lo guías o lo tienes configurado).
- Problemas de Debug.
- Explicar partes de su código.
- Proponer e incluso diseñar Pull Requests directamente a su repo de GitHub!
- y más
Comenzando con el Codex
Bueno, la teoría es buena, pero vamos a ser prácticos. Para probar el Codex, necesitarás al menos una suscripción Plus para ChatGPT y unaCuenta de GitHub.
Simplemente abiertohttps://chatgpt.com/codexy conectarse a su cuenta.
Conectar tu cuenta de GitHub
The first big step is connecting your GitHub accountUna vez que haga clic en el botón "Conectar a GitHub", se le redirigirá a GitHub para autorizar OpenAI.
GitHub le preguntará a qué repositorios desea conceder acceso al Codex.You can choose:
- Todos los repositorios: Conveniente, pero piense en la seguridad si tiene un repositorio privado sensible.
- Sólo seleccione repositorios: Esto es lo que normalmente hago. Selecciono el repo específico en el que quiero que Codex trabaje.
Una vez autorizado, se le llevará de vuelta a la interfaz Codex.
Creating an Environment
Pense en un entorno como un espacio de trabajo dedicado para un repositorio específico (o una sucursal dentro de él).
Select your GitHub organization and repositoryde los dropdowns (estos están poblados basándose en los permisos que acabas de dar).
Si desea dar a Codex acceso a Internet, puede cambiar el "Agent internet access” toggle to “OnSe utilizará durante su fase de configuración, por ejemplo, para descargar paquetes.Después de la configuración, el acceso a Internet suele ser deshabilitado para la tarea de codificación real para la seguridad.
Luego, haga clic en el botón “Crear entorno”.
Dando a Codex sus primeras tareas
Una vez que tu entorno esté listo, verás una pantalla principal con una caja de entrada etiquetada “¿Qué estamos codificando a continuación?” ¡Este es el lugar donde sucede la magia!
Example tasks:
- “Explica la base de código a un recién llegado: ¿Cuál es la estructura general, cuáles son las cosas importantes a saber, y cuáles son algunos indicadores para aprender las cosas a continuación?”
- “Encuentre y corrige un error en el que el algoritmo de búsqueda de salto no maneja las matrizes vacías”.
- “Añade una interfaz web para mi repositorio de algoritmos para que pueda ejecutar los algoritmos de clasificación desde un navegador”.
- etc .
To get the best out of Codex, simply follow these simple rules:
- Sea claro y específico (pero no demasiado verboso): “Refactor el archivo userService.js para usar async/await en lugar de promesas para todas las llamadas de base de datos”.
- Descomponer tareas complejas: Si desea construir una aplicación completamente nueva, probablemente sea demasiado para una solicitud.
- “Código” y “Preguntar” Modos: Código: Usted quiere que Codex haga cambios en los archivos. Pregunta: Usted quiere que Codex explique algo o responda a preguntas sobre la base de código sin hacer cambios.
Qué hizo el Codex: La Difusión y la PR
Codex mostrará su progreso: “Starting container”, “Download repo”, “Reading”Los agentes.md” (si tienes uno – más sobre eso más adelante!), “Explorar archivos”, “Pensar”, “Executar un comando”, etc.
El Codex es un agente, no un oráculo perfecto.Tienes que revisar su trabajo.
Una vez que se haya completado una tarea, generalmente recibirá una notificación o verá la actualización de estado.
Hacer clic en una tarea completada a menudo le muestra un "diff" - qué líneas se añadieron (verde), qué líneas se eliminaron (rojo), al igual que en una difusión de Git.
Normalmente hay una pestaña de “Logos” donde puedes ver las acciones paso a paso que el Codex tomó, los comandos que ejecutó y su proceso de pensamiento.por quéHizo ciertas elecciones.
Crear una Pull Request
Si está satisfecho con los cambios, a menudo hay un botón “Crear Pull Request” justo en la interfaz de Codex.
Esto creará una nueva rama en su repo de GitHub con los cambios de Codex y abrirá un PR para usted!
Desde allí, es tu flujo de trabajo estándar de GitHub: revisión, comentario, solicitud de cambios (podrías pedir a Codex que itere!), y finalmente fusionarse.
Para más ejemplos, por favor vea mi video tutorial.
ChatGPT Código Tutorial
En mi video tutorial, te llevaré a través de todos los pasos desde el principio hasta el final.
Ver en Youtube: Código OpenAI Agente Tutorial
Conclusión
La capacidad de delegar todo el trabajo a una IA que entiende el contexto de todo tu proyecto es increíblemente poderosa. No reemplazará a los desarrolladores, pero cambiará la forma en que desarrollamos. Puede manejar muchas de las placas de calentamiento, las escaleras iniciales, o incluso las tareas de refactoring complejas, liberándonos para centrarnos en los problemas arquitectónicos más difíciles y aspectos más creativos de la ingeniería de software.
¡Dime tu experiencia si lo has utilizado!
¡Buenos días! :)