Intenciones de Código de IA

'AI Code Intentions'

Cualquier IDE moderno incluye Intenciones de Código que te permiten realizar algunas acciones predefinidas en tu código basadas en un contexto. Por ejemplo, para una declaración for, puede haber varias intenciones como Convertir a while, Invertir orden, Usar Streams, etc. El uso de las Intenciones es muy útil ya que nos permite realizar refactorizaciones rápidas o manipular el código.

Las Intenciones son bastante difíciles de desarrollar, por lo que generalmente están codificadas en el IDE y se incluyen con los IDEs por parte de los respectivos proveedores. En algunos IDEs, es posible desarrollar tus propias Intenciones, pero no es tan fácil ya que requiere un buen conocimiento de la plataforma del IDE, escribir mucho código, desarrollar complementos para implementar tus Intenciones, etc.

Sin embargo, las Intenciones codificadas pueden volverse obsoletas. Hoy en día, puedes pedirle a un LLM, como ChatGPT, que realice alguna acción en tu código, y es bastante fácil. Solo tienes que proporcionar el fragmento de código y una indicación adecuada. Por ejemplo, si proporcionas el siguiente bucle con la indicación Invertir dirección de un bucle a ChatGPT:

Obtendrás el mismo resultado que si usaras una Intención codificada similar proporcionada por tu IDE:

Por lo tanto, es bastante natural que debamos introducir Intenciones de IA, que básicamente son indicaciones de IA con nombre vinculadas a algún contexto. El contexto puede ser un archivo, una clase, una declaración, un método en particular, etc., y el IDE sería el responsable de proporcionar el contexto correcto, pedirle al LLM la indicación correcta, obtener y analizar los resultados, y aplicarlos al código.

Las ventajas de tener Intenciones de IA son:

  1. Casi cualquier refactorización se puede hacer utilizando lenguaje natural. Las indicaciones pueden ser tan simples como Reemplazar usando formato para APIs conocidas (como PrintStream.println(String) de Java), o pueden ser más complejas con más instrucciones para APIs menos conocidas.
  2. No es necesario codificar las Intenciones de IA.
  3. No es necesario escribir complementos para distribuir las Intenciones de IA.
  4. Las Intenciones de IA se pueden configurar fácilmente por parte del usuario.
  5. No es necesario utilizar una interfaz de Chat, especialmente para actividades repetitivas.
  6. Menor tráfico de tokens del LLM para ahorrar en costos en comparación con el uso de una interfaz de Chat.

Otra opción interesante son las intenciones de IA que se integran directamente en la API mediante anotaciones. Estas Intenciones de IA declarativas instruirían al IDE sobre qué intenciones están disponibles por clase, campo o método y qué indicación se debe usar para realizar una Intención en particular solicitando al LLM. Estas Intenciones de IA declarativas pueden ser suministradas por los autores de los marcos/bibliotecas, y por lo tanto pueden estar disponibles de inmediato para todos los desarrolladores en los IDEs que las admiten.

Por ejemplo, la siguiente anotación especificaría una Intención de IA Reemplazar usando formato que permite reemplazar llamadas a println(String) que toman una cadena concatenada por llamadas a println(String, Object...) que toman un formato y una lista de argumentos:

Entonces, aplicar dicha Intención a una llamada:

Resultaría en:

El uso de Intenciones de IA declarativas puede mejorar drásticamente el manejo de APIs obsoletas. Por lo tanto, cada método obsoleto puede incluir unas cuantas Intenciones de IA para permitir su refactorización a una versión moderna, sin necesidad de omitir la refactorización en el futuro. Olvídate de navegar por documentación y codificación manual, simplemente actualiza tu código con un solo clic.

Creo que las Intenciones de IA son el futuro de la integración entre los IDEs y los LLM. Así que espero que aparezcan en muchos IDEs en un futuro cercano.

We will continue to update Zepes; if you have any questions or suggestions, please contact us!

Share:

Was this article helpful?

93 out of 132 found this helpful

Discover more

Inteligencia Artificial

Apple entra en la competencia de la IA generativa con el chatbot 'AppleGPT

El gigante tecnológico Apple sigue adelante con su esperado chatbot impulsado por IA, tentativamente llamado “A...

Aprendizaje Automático

La mochila que resuelve el sesgo de ChatGPT Los modelos de lenguaje Backpack son métodos de inteligencia artificial alternativos para los transformadores.

Los modelos de lenguaje de Inteligencia Artificial se están convirtiendo en una parte esencial de nuestras vidas. Hem...

Inteligencia Artificial

AI vence a los detectives humanos al encontrar imágenes problemáticas en documentos de investigación

Un estudio realizado por el biólogo independiente del Reino Unido, Sholto David, encontró que la inteligencia artific...

Inteligencia Artificial

Nuevo ataque afecta a importantes chatbots de IA y nadie sabe cómo detenerlo

Investigadores encontraron una forma sencilla de hacer que ChatGPT, Bard y otros chatbots se comporten mal, demostran...

Inteligencia Artificial

Los robots reciben una mejora 'gripante' ¡AO-Grasp enseña a los bots el arte de no dejar caer tus cosas!

En los últimos años, los robots han encontrado un mayor uso en diversas industrias, desde la fabricación hasta la ate...