API recommendation based on Word Embeddings

In this new era where web services are trending and businesses constantly develop and expose APIs that can be used by third parties, finding one which fits a functional requirement is a daunting task. For this reason, websites such as ProgrammableWeb and APIs.guru offer a directory of API definition...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autores principales: Saucedo, Ana Martínez, Da Rocha Araujo, Leonardo Henrique, Rodríguez, Guillermo Horacio
Formato: Objeto de conferencia
Lenguaje:Inglés
Publicado: 2023
Materias:
Acceso en línea:http://sedici.unlp.edu.ar/handle/10915/165808
Aporte de:
id I19-R120-10915-165808
record_format dspace
spelling I19-R120-10915-1658082024-05-09T20:05:33Z http://sedici.unlp.edu.ar/handle/10915/165808 API recommendation based on Word Embeddings Saucedo, Ana Martínez Da Rocha Araujo, Leonardo Henrique Rodríguez, Guillermo Horacio 2023-09 2023 2024-05-09T12:14:15Z en Ciencias Informáticas API recommendation word embedding APIs microservices software development In this new era where web services are trending and businesses constantly develop and expose APIs that can be used by third parties, finding one which fits a functional requirement is a daunting task. For this reason, websites such as ProgrammableWeb and APIs.guru offer a directory of API definitions that can be filtered and searched by developers. However, searching for APIs that conform to a requirement on those platforms is still a manual task, and searches are based on the inclusion or exclusion of query words in an API description that does not provide relevant results. For this reason, we have explored the application of word embeddings in the problem of API recommendation using Word2Vec, FastText and GloVe algorithms, as well as pre-trained domain-general and software engineering embeddings. We have constructed a dataset from APIs.guru and retrieved services descriptions to obtain their embeddings and calculate their similarity with a given query embedding. To this end, we created ten test queries with their relevant APIs using a subset of the original dataset. With a recall at 10 recommendations of 69.8% and a nDCG at 10 of 81.4%, we have obtained promising results which demonstrate embeddings can alleviate developers' searches for relevant APIs. 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. Sociedad Argentina de Informática e Investigación Operativa Objeto de conferencia Objeto de conferencia http://creativecommons.org/licenses/by-nc-sa/4.0/ Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0) application/pdf
institution Universidad Nacional de La Plata
institution_str I-19
repository_str R-120
collection SEDICI (UNLP)
language Inglés
topic Ciencias Informáticas
API recommendation
word embedding
APIs
microservices
software development
spellingShingle Ciencias Informáticas
API recommendation
word embedding
APIs
microservices
software development
Saucedo, Ana Martínez
Da Rocha Araujo, Leonardo Henrique
Rodríguez, Guillermo Horacio
API recommendation based on Word Embeddings
topic_facet Ciencias Informáticas
API recommendation
word embedding
APIs
microservices
software development
description In this new era where web services are trending and businesses constantly develop and expose APIs that can be used by third parties, finding one which fits a functional requirement is a daunting task. For this reason, websites such as ProgrammableWeb and APIs.guru offer a directory of API definitions that can be filtered and searched by developers. However, searching for APIs that conform to a requirement on those platforms is still a manual task, and searches are based on the inclusion or exclusion of query words in an API description that does not provide relevant results. For this reason, we have explored the application of word embeddings in the problem of API recommendation using Word2Vec, FastText and GloVe algorithms, as well as pre-trained domain-general and software engineering embeddings. We have constructed a dataset from APIs.guru and retrieved services descriptions to obtain their embeddings and calculate their similarity with a given query embedding. To this end, we created ten test queries with their relevant APIs using a subset of the original dataset. With a recall at 10 recommendations of 69.8% and a nDCG at 10 of 81.4%, we have obtained promising results which demonstrate embeddings can alleviate developers' searches for relevant APIs.
format Objeto de conferencia
Objeto de conferencia
author Saucedo, Ana Martínez
Da Rocha Araujo, Leonardo Henrique
Rodríguez, Guillermo Horacio
author_facet Saucedo, Ana Martínez
Da Rocha Araujo, Leonardo Henrique
Rodríguez, Guillermo Horacio
author_sort Saucedo, Ana Martínez
title API recommendation based on Word Embeddings
title_short API recommendation based on Word Embeddings
title_full API recommendation based on Word Embeddings
title_fullStr API recommendation based on Word Embeddings
title_full_unstemmed API recommendation based on Word Embeddings
title_sort api recommendation based on word embeddings
publishDate 2023
url http://sedici.unlp.edu.ar/handle/10915/165808
work_keys_str_mv AT saucedoanamartinez apirecommendationbasedonwordembeddings
AT darochaaraujoleonardohenrique apirecommendationbasedonwordembeddings
AT rodriguezguillermohoracio apirecommendationbasedonwordembeddings
_version_ 1807223100578725888