API recommendation based on Word Embeddings

Autores/as

  • Ana Martínez Saucedo Universidad Argentina de la Empresa, Argentina
  • Leonardo Henrique da Rocha Araujo Universidad Nacional del Centro de la provincia de Buenos Aires, Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Argentina
  • Guillermo Rodríguez Universidad Nacional del Centro de la provincia de Buenos Aires, Consejo Nacional de Investigaciones Científicas y Técnicas (CONICET), Argentina

Palabras clave:

API recommendation, word embedding, microservices, software development

Resumen

En esta era en la que los servicios web son tendencia y las empresas desarrollan y exponen constantemente APIs que pueden ser utilizadas por terceros, encontrar una API que se ajuste a un requisito funcional es una tarea abrumadora. Por esta razón, portales como ProgrammableWeb y APIs.guru ofrecen un directorio de definiciones de APIs que los desarrolladores pueden filtrar y buscar. Sin embargo, la búsqueda de APIs que cumplan con un requisito en esas plataformas sigue siendo una tarea manual, y las búsquedas se basan en la inclusión o exclusión de palabras clave en una descripción de API que no proporciona resultados relevantes. Por esta razón, hemos explorado la aplicación de word embeddings para recomendar APIs utilizando los algoritmos Word2Vec, FastText y GloVe, así como embeddings pre-entrenados de dominio general y específicos a la ingeniería de software. Construimos un dataset de APIs a partir de APIs.guru y recuperamos descripciones de servicios para obtener sus embeddings y calcular su similitud con el embedding de una consulta determinada. Para ello creamos diez consultas de prueba con sus APIs relevantes utilizando un subconjunto del conjunto de datos original. Con una exhaustividad en 10 recomendaciones del 69,8% y un nDCG en 10  recomendaciones del 81,4%, hemos obtenido resultados prometedores que demuestran que los word embeddings pueden dar soporte a los desarrolladores a la hora de buscar APIs relevantes.

Descargas

Publicado

2023-07-04

Número

Sección

ASSE - Argentine Symposium on Software Engineering

Cómo citar

Martínez Saucedo, A., da Rocha Araujo, L. H., & Rodríguez, G. (2023). API recommendation based on Word Embeddings. JAIIO, Jornadas Argentinas De Informática, 9(3). https://revistas.unlp.edu.ar/JAIIO/article/view/18226