Las herramientas y casos de uso para la Inteligencia Artificial (**AI**) cada vez son más variados, en el caso del desarrollo de software contamos un sin número de herramientas. Particularmente he venido a comentar un poco sobre una que recién instalo en mi **IDE** de desarrollo **Visual Studio Code** y que es totalmente gratuita.
> ! [ENGLISH VERSION] The tools and use cases for Artificial Intelligence (**AI**) are becoming more and more varied, in the case of software development we have a number of tools. Particularly I have come to comment a little about one that I recently installed in my **IDE** of development **Visual Studio Code** and that is totally free.
La herramienta lleva por nombre **CodeGPT** y como se podrán imaginar es una herramienta de chat que funciona con la **API** de **OpenAI** (empresa creadora de **ChatGPT**) pero con superpoderes.
> ! [ENGLISH VERSION] The tool is called **CodeGPT** and as you can imagine it is a chat tool that works with the **API** of **OpenAI** (the company that created **ChatGPT**) but with superpowers.
<hr />
# Instalando y Configurando | Installing and Configuring
Desde el panel de extensiones de **Visual Studio Code** pueden buscar **Code GPT** y les parecerá así:
> ! [ENGLISH VERSION] From the **Visual Studio Code** extensions panel you can search for **Code GPT** and it will look like this:

Una vez instalado deberán configurar el **API KEY** de **ChatGPT** para que funcione correctamente la extensión, para ello solo hay que dirigirse a la web de **OpenAI** y crear una **API**:
> ! [ENGLISH VERSION] Once installed, you will have to configure the **ChatGPT** **API KEY** for the extension to work correctly. To do so, just go to the **OpenAI** web site and create an **API**:

Por último, copiar la API KEY creada y en Visual Studio Code en las opciones de configuración de la extensión ir a **Set API KEY** y pegar la que ya está en portapapeles:
> ! [ENGLISH VERSION] Finally, copy the API KEY created and in Visual Studio Code in the extension configuration options go to **Set API KEY** and paste the one already in the clipboard:


Para el momento que tomé las capturas ya tenía todo configurado, por eso pueden ver el resultado de una prueba en el chat de **CodeGPT**.
> ! [ENGLISH VERSION] By the time I took the screenshots I already had everything configured, so you can see the result of a test in the **CodeGPT** chat.
<hr />
# Características interesantes | Interesting features
Hay varias formas de utilizar la extensión, la más común es hacer una petición en el apartado de **Ask CodeGPT**, para ello solo basta con hacer click en el ícono de la extensión y hacer una pregunta tal cual como lo harías en la interfaz de ChatGPT:
> ! [ENGLISH VERSION] There are several ways to use the extension, the most common is to make a request in the **Ask CodeGPT** section, just click on the extension icon and ask a question as you would in the ChatGPT interface:

Si bien esta opción cumple con la tarea de entregar el código solicitado, en mi caso es un poco tedioso estar cambiando de ventana para entrar al input de CodeGPT, para ello han pensado una solución para solicitar cualquier cosa que necesites escribiendo una línea de comentario y ejecutando una secuencia de comando que para mi caso que tengo una mac es **cmd + shift + i**.
> ! [ENGLISH VERSION] While this option fulfills the task of delivering the requested code, in my case it is a bit tedious to be changing windows to enter the CodeGPT input, for this they have thought of a solution to request anything you need by typing a comment line and running a command sequence that for my case that I have a mac is **cmd + shift + i**.
La función lleva por nombre **Get Code** y el resultado es que crea un nuevo documento donde entrega el resultado y algo de explicación:
> ! [ENGLISH VERSION] The function is called **Get Code** and the result is that it creates a new document where it delivers the result and some explanation:

En ese caso le solicité en español que creara una conexión con la blockchain de **Hive** para y lo entregó sin problemas.
> ! [ENGLISH VERSION] In that case I asked him in Spanish to create a connection to the **Hive** blockchain for and he delivered it without any problems.
Si la explicación no te parece suficiente, puedes seleccionar el código y con click derecho usar la función llamada **Explain** y de esa manera CodeGPT te entregará una explicación a detalle de lo que hace el código resaltado:
> ! [ENGLISH VERSION] If the explanation is not enough for you, you can select the code and right click on it and use the function called **Explain** and CodeGPT will give you a detailed explanation of what the highlighted code does:


Estas solo son un par de funcionalidades que me llamaron la atención, pero la extensión cuenta con otras muy interesantes como la de:
> ! [ENGLISH VERSION] These are just a couple of features that caught my attention, but the extension has other very interesting features such as:
- **Document**: Con esta funcionalidad podrás seleccionar el código y luego solicitar a Code GPT que documente el código seleccionado.
- **Unit Test**: Con esta funcionalidad podrás seleccionar un código y solicitar a Code GPT que entregue el código para realizar pruebas unitarias del código seleccionado.
- **Refactor**: Con esta funcionalidad podrás seleccionar un código y solicitar a Code GPT que refactorice y mejore el código seleccionado.
- **Ask StackOverflow**: Esta funcionalidad permite obtener preguntas desde StackOverflow y comparar la mejor respuesta humana 🧠 con la respuesta de la inteligencia artifical 🤖
> ! [ENGLISH VERSION] - Document**: With this feature you will be able to select the code and then request Code GPT to document the selected code.<br /><br />- Unit Test**: With this feature you will be able to select a code and request Code GPT to deliver the code to perform unit tests of the selected code.<br /><br />- Refactor**: With this feature you can select a code and ask Code GPT to refactor and improve the selected code.<br /><br />- Ask StackOverflow**: This feature allows you to get questions from StackOverflow and compare the best human answer 🧠 with the artifical intelligence answer 🤖.
Entre otras que puedes ver a detalle en la documentación de su web oficial: [codegpt.co](https://codegpt.co).
> ! [ENGLISH VERSION] Among others that you can see in detail in the documentation of its official website: [codegpt.co](https://codegpt.co)
<hr/>
# El futuro está aquí | The future is here
Sin dudas este tipo de herramientas vinieron para quedarse y las personas que marcarán la diferencia en el campo laboral son las que dominen cada una de ellas para optimizar sus resultados.
Espero que sea de ayuda este post y que desde ya pongas en uso este tipo de herramientas que potenciarán tu productividad al desarrollar y a la vez te permitirán estudiar cualquier cosa que tengas en mente desde la comodidad de tu **IDE**
> ! [ENGLISH VERSION] Undoubtedly these tools are here to stay and the people who will make a difference in the workplace are those who master each of them to optimize their results.<br /><br />I hope this post is helpful and that from now on you put into use this type of tools that will enhance your productivity when developing and at the same time will allow you to study anything you have in mind from the comfort of your **IDE**.
<hr/>

<hr/>
<div><center><a href="https://www.twitter.com/neocarvajal" target="_blank"><img src="https://i.imgur.com/Up7c9bZ.png"/></a><a href="https://www.instagram.com/neocarvajal" target="_blank"><img src="https://i.imgur.com/uDubZRp.png"/></a><a href="https://www.linkedin.com/in/neocarvajal" target="_blank"><img src="https://i.imgur.com/S5Igzir.png"/></a></center></div>