{"id":1381,"date":"2025-08-18T09:00:00","date_gmt":"2025-08-18T09:00:00","guid":{"rendered":"https:\/\/cloudlab.urv.cat\/catedracloud\/?p=1381"},"modified":"2025-07-28T08:13:50","modified_gmt":"2025-07-28T08:13:50","slug":"aws-s3-vectors-nueva-herramienta-para-guardar-vectores","status":"publish","type":"post","link":"https:\/\/cloudlab.urv.cat\/catedracloud\/2025\/08\/18\/aws-s3-vectors-nueva-herramienta-para-guardar-vectores\/","title":{"rendered":"AWS S3 Vectors, nueva herramienta para guardar vectores"},"content":{"rendered":"\n<p>Ya comentamos en un post <a href=\"https:\/\/cloudlab.urv.cat\/catedracloud\/2025\/05\/18\/ahora-los-vectores-tienen-valor-guardalos\/\">anterior que los vectores ten\u00edan valor<\/a>. Parece que la industria del cloud lo ha visto claro, y quieren abrirse a nuevas oportunidades de negocio, despu\u00e9s de esta escalada de la IA.<\/p>\n\n\n\n<p>AWS ha <a href=\"https:\/\/youtu.be\/2890bEb61qQ?feature=shared&amp;t=3281\">lanzado una nueva herramienta llamada S3 Vectors<\/a>, que permite a los usuarios almacenar y gestionar vectores de manera eficiente en la nube. Esta herramienta est\u00e1 dise\u00f1ada para facilitar el trabajo con modelos de IA y machine learning, que a menudo requieren el manejo de grandes vol\u00famenes de datos en forma de vectores.<\/p>\n\n\n\n<p>Con S3 Vectors, los desarrolladores pueden aprovechar la escalabilidad y durabilidad de Amazon S3, al tiempo que obtienen funcionalidades espec\u00edficas para el manejo de vectores. Esto incluye la capacidad de realizar b\u00fasquedas y consultas avanzadas sobre los datos vectoriales, as\u00ed como integraciones con otros servicios de AWS para el procesamiento y an\u00e1lisis de datos.<\/p>\n\n\n\n<p>Esta nueva oferta de AWS es un claro indicativo de c\u00f3mo la industria est\u00e1 evolucionando para adaptarse a las necesidades cambiantes de los desarrolladores y las empresas que buscan aprovechar el potencial de la IA y el machine learning.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conceptos clave de S3 Vectors<\/h2>\n\n\n\n<p>S3 Vectors introduce varios conceptos clave que son importantes para entender su funcionamiento, veamos cu\u00e1les son:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Vector bucket<\/strong>: Un vector bucket es un nuevo tipo de bucket en Amazon S3 que est\u00e1 optimizado para almacenar y gestionar vectores. A diferencia de los buckets tradicionales, los vector buckets est\u00e1n dise\u00f1ados espec\u00edficamente para manejar datos en forma de vectores, lo que permite una mayor eficiencia en las operaciones de b\u00fasqueda y consulta.<\/li>\n\n\n\n<li><strong>Vector index<\/strong>: Un vector index es el recurso que permite realizar b\u00fasquedas eficientes sobre los vectores almacenados en un vector bucket. Este \u00edndice facilita la recuperaci\u00f3n r\u00e1pida de vectores similares o relacionados, lo que es esencial para aplicaciones de IA y machine learning. Cada index tiene una serie de par\u00e1metros que definen c\u00f3mo se almacenan y gestionan los vectores, incluyendo la m\u00e9trica de similitud utilizada para las b\u00fasquedas y la dimensionalidad de los vectores.<\/li>\n\n\n\n<li><strong>Vectors<\/strong>: Los vectores son representaciones num\u00e9ricas de datos que capturan caracter\u00edsticas y relaciones sem\u00e1nticas. En el contexto de S3 Vectors, los vectores son los datos que se almacenan y gestionan dentro de un vector index, permitiendo realizar operaciones de b\u00fasqueda y an\u00e1lisis sobre ellos.<\/li>\n<\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Ejemplo de uso de S3 Vectors<\/h2>\n\n\n\n<p>Para ilustrar c\u00f3mo se utiliza S3 Vectors, consideremos un ejemplo pr\u00e1ctico. Supongamos que queremos almacenar y buscar vectores que representan textos. Podr\u00edamos usar el metodo <code>put_vectors<\/code> para a\u00f1adir vectores a un vector index, y luego utilizar el m\u00e9todo <code>query_vectors<\/code> para buscar vectores similares.<\/p>\n\n\n\n<p>Veamos un ejemplo de c\u00f3digo en Python que muestra c\u00f3mo interactuar con S3 Vectors:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>import boto3\nimport json\n\n# Creamos el cliente de S3 Vectors\ns3vectors = boto3.client(\"s3vectors\", region_name=\"us-west-2\")\n\ntexts = &#091;\n    \"El cloud computing es una tecnolog\u00eda que permite el acceso a recursos inform\u00e1ticos a trav\u00e9s de Internet.\",\n    \"Aprendo cloud computing con la C\u00e1tedra Cloud de la URV.\",\n    \"Desarrollar aplicaciones en la nube es una habilidad valiosa en el mercado laboral.\"\n]\n\n# Generamos los embeddings (vectores)\nembeddings = &#091;]\nfor text in texts:\n    embeddings.append(generate_embedding(text))\n\n# Escribimos los embeddings en el vector index con metadatos.\ns3vectors.put_vectors(\n    vectorBucketName=\"media-embeddings\",   \n    indexName=\"frases\",   \n    vectors=&#091;\n        {\n            \"key\": \"frase_1\",\n            \"data\": {\"float32\": embeddings&#091;0]},\n            \"metadata\": {\"source_text\": texts&#091;0], \"genre\": \"tecnologia\"}\n        },\n        {\n            \"key\": \"frase_2\",\n            \"data\": {\"float32\": embeddings&#091;1]},\n            \"metadata\": {\"source_text\": texts&#091;1], \"genre\": \"feedback\"}\n        },\n        {\n            \"key\": \"frase_3\",\n            \"data\": {\"float32\": embeddings&#091;2]},\n            \"metadata\": {\"source_text\": texts&#091;2], \"genre\": \"tecnologia\"}\n        }\n    ]\n)\n\n# Generamos un vector de consulta para buscar frases similares.\ninput_text = \"\u00bfQue es el cloud computing?\"\n\nembedding = generate_embedding(input_text)\n\n# Query al vector index.\nresponse = s3vectors.query_vectors(\n    vectorBucketName=\"media-embeddings\",\n    indexName=\"frases\",\n    queryVector={\"float32\": embedding}, \n    topK=3, \n    returnDistance=True,\n    returnMetadata=True\n)\n# Mostramos los resultados de la consulta.\nprint(json.dumps(response&#091;\"vectors\"], indent=2))<\/code><\/pre>\n\n\n\n<p>En este ejemplo, primero creamos un cliente de S3 Vectors y generamos embeddings para una lista de textos. Luego, utilizamos el m\u00e9todo <code>put_vectors<\/code> para almacenar estos vectores en un vector index, junto con metadatos relevantes. Finalmente, generamos un vector de consulta a partir de un texto de entrada y realizamos una b\u00fasqueda en el vector index utilizando el m\u00e9todo <code>query_vectors<\/code>, obteniendo los vectores m\u00e1s similares junto con sus metadatos.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Conclusi\u00f3n<\/h2>\n\n\n\n<p>S3 Vectors es una herramienta poderosa que permite a los desarrolladores gestionar y buscar vectores de manera eficiente en la nube. Con su capacidad para manejar grandes vol\u00famenes de datos vectoriales y realizar b\u00fasquedas avanzadas.<\/p>\n\n\n\n<p>Esta herramienta abre nuevas posibilidades para aplicaciones de IA y machine learning, facilitando el trabajo con datos complejos y mejorando la eficiencia en el procesamiento de informaci\u00f3n.<\/p>\n\n\n\n<p>Si est\u00e1s interesado en explorar m\u00e1s sobre S3 Vectors, puedes consultar la <a href=\"https:\/\/docs.aws.amazon.com\/AmazonS3\/latest\/userguide\/s3-vectors.html\">documentaci\u00f3n oficial de AWS<\/a> para obtener m\u00e1s detalles sobre su funcionamiento y caracter\u00edsticas.<\/p>\n\n\n\n<p>\u00bfY t\u00fa, has probado S3 Vectors en tus proyectos? \u00bfQu\u00e9 opinas sobre su utilidad para el manejo de vectores? \u00a1D\u00e9janos tu opini\u00f3n en los comentarios!<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ya comentamos en un post anterior que los vectores ten\u00edan valor. Parece que la industria del cloud lo ha visto claro, y quieren abrirse a nuevas oportunidades de negocio, despu\u00e9s de esta escalada de la IA. AWS ha lanzado una nueva herramienta llamada S3 Vectors, que permite a los usuarios almacenar y gestionar vectores de [&hellip;]<\/p>\n","protected":false},"author":9,"featured_media":1382,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_uag_custom_page_level_css":"","_swt_meta_header_display":false,"_swt_meta_footer_display":false,"_swt_meta_site_title_display":false,"_swt_meta_sticky_header":false,"_swt_meta_transparent_header":false,"footnotes":""},"categories":[37,39],"tags":[4,97,88,124,86],"class_list":["post-1381","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-aws","category-ia","tag-aws","tag-cloud","tag-ia","tag-s3","tag-vector-db"],"jetpack_featured_media_url":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min.png","uagb_featured_image_src":{"full":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min.png",1536,1024,false],"thumbnail":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min-150x150.png",150,150,true],"medium":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min-300x200.png",300,200,true],"medium_large":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min-768x512.png",768,512,true],"large":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min-1024x683.png",1024,683,true],"1536x1536":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min.png",1536,1024,false],"2048x2048":["https:\/\/cloudlab.urv.cat\/catedracloud\/wp-content\/uploads\/2025\/07\/s3_vectors-min.png",1536,1024,false]},"uagb_author_info":{"display_name":"Gerard Finol Pe\u00f1alver","author_link":"https:\/\/cloudlab.urv.cat\/catedracloud\/author\/gfinol\/"},"uagb_comment_info":2,"uagb_excerpt":"Ya comentamos en un post anterior que los vectores ten\u00edan valor. Parece que la industria del cloud lo ha visto claro, y quieren abrirse a nuevas oportunidades de negocio, despu\u00e9s de esta escalada de la IA. AWS ha lanzado una nueva herramienta llamada S3 Vectors, que permite a los usuarios almacenar y gestionar vectores de&hellip;","_links":{"self":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1381","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/users\/9"}],"replies":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/comments?post=1381"}],"version-history":[{"count":2,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1381\/revisions"}],"predecessor-version":[{"id":1384,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/posts\/1381\/revisions\/1384"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/media\/1382"}],"wp:attachment":[{"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/media?parent=1381"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/categories?post=1381"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/cloudlab.urv.cat\/catedracloud\/wp-json\/wp\/v2\/tags?post=1381"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}