{"id":1961,"date":"2024-09-26T19:57:38","date_gmt":"2024-09-26T19:57:38","guid":{"rendered":"https:\/\/www.ricardovillalobos.com\/?p=1961"},"modified":"2024-09-30T13:27:24","modified_gmt":"2024-09-30T13:27:24","slug":"microsoft-hackathon-2024","status":"publish","type":"post","link":"https:\/\/www.ricardovillalobos.com\/?p=1961","title":{"rendered":"Microsoft Hackathon 2024"},"content":{"rendered":"\n<p>I&nbsp;had the opportunity to join a great group of people from my organization (ISE) during the Microsoft Hackathon 2024, where I learned a lot about using GraphDBs for RAG (Retrieval Augmented Generation) purposes with AI. Combining knowledge about relationships between multiple elements and LLMs resulted in informative outputs from our own data that we had not seen before.<br><br>Using the GraphRAG project (<a href=\"https:\/\/github.com\/microsoft\/graphrag\">https:\/\/github.com\/microsoft\/graphrag<\/a>) and regular prompts, we were able to discover insights about how engineers in our organization are using different technologies, as well as commonalities across customer projects that we can leverage in future engagements.<br><br>One additional benefit of using GraphRAG is that it generates the Graph DB elements, including nodes and edges, based on the content provided during the indexing process. This is usually a time-consuming effort when designing Graph DBs, and even when it&#8217;s not perfect, I was very impressed with the results. In one of the images, I\u00b4m showing the generated graph from feeding the project with the &#8220;A Christmas Carol&#8221; book.<br><br>My contribution to the hackathon was to write a utility in Python to project the GraphRAG .parquet files to the Azure CosmosDB implementation of Apache Gremlin, being able to visualize the Graph and run queries against it. A future effort is to augment GraphRAG to support Apache Gremlin natively, as an alternative to the current pysparrow \/ .parquet files combo.<br><br>Big thanks to <a href=\"https:\/\/www.linkedin.com\/in\/ACoAABPf2vEBGVXnIECh82uIh6cT27t3j1Go1d4\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/amy-jiamei-huang\/\">Amy Huang<\/a> <a href=\"https:\/\/www.linkedin.com\/in\/ACoAABsD5okBJ0xK3v5mqxAk6Iif4JzUKSJ1IfM\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/caroline-quigg-b21957107\/\">Caroline Quigg<\/a> <a href=\"https:\/\/www.linkedin.com\/in\/ACoAAAYRwYEBiBUr1XML0_rdcHdfAc9H0MOtqfU\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/laurent-bananier\/\">Laurent Bananier<\/a> <a href=\"https:\/\/www.linkedin.com\/in\/ACoAACJ1kFUBhcPSRqZcMXNq2fv9zL5-dRySuWc\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/abigail-pham\/\">Abigail Pham<\/a> <a href=\"https:\/\/www.linkedin.com\/in\/ACoAAAqm3NEBuLRFy6qqS7pdWk5qtIAiH8OJ7l8\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/dylan-freeland\/\">Dylan Freeland<\/a> and <a href=\"https:\/\/www.linkedin.com\/in\/ACoAABL_8awBt2d4rjUGOCCTTRzqlKLo2oRa-es\"><\/a><a href=\"https:\/\/www.linkedin.com\/in\/jeff-stoker-6b89058a\/\">Jeff Stoker<\/a> for the great collaboration on this project.<\/p>\n\n\n\n<figure class=\"wp-block-gallery has-nested-images columns-default is-cropped wp-block-gallery-1 is-layout-flex wp-block-gallery-is-layout-flex\">\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6a04630ef2e8c&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6a04630ef2e8c\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"605\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" data-id=\"1963\" src=\"https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo-1024x605.png\" alt=\"\" class=\"wp-image-1963\" srcset=\"https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo-1024x605.png 1024w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo-300x177.png 300w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo-768x454.png 768w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo-1536x908.png 1536w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/Hackathon-photo.png 1799w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n\n\n\n<figure data-wp-context=\"{&quot;imageId&quot;:&quot;6a04630ef314e&quot;}\" data-wp-interactive=\"core\/image\" data-wp-key=\"6a04630ef314e\" class=\"wp-block-image size-large wp-lightbox-container\"><img loading=\"lazy\" decoding=\"async\" width=\"829\" height=\"464\" data-wp-class--hide=\"state.isContentHidden\" data-wp-class--show=\"state.isContentVisible\" data-wp-init=\"callbacks.setButtonStyles\" data-wp-on--click=\"actions.showLightbox\" data-wp-on--load=\"callbacks.setButtonStyles\" data-wp-on-window--resize=\"callbacks.setButtonStyles\" data-id=\"1962\" src=\"https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/GraphRAGDB.jpg\" alt=\"\" class=\"wp-image-1962\" srcset=\"https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/GraphRAGDB.jpg 829w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/GraphRAGDB-300x168.jpg 300w, https:\/\/www.ricardovillalobos.com\/wp-content\/uploads\/2024\/09\/GraphRAGDB-768x430.jpg 768w\" sizes=\"auto, (max-width: 829px) 100vw, 829px\" \/><button\n\t\t\tclass=\"lightbox-trigger\"\n\t\t\ttype=\"button\"\n\t\t\taria-haspopup=\"dialog\"\n\t\t\taria-label=\"Enlarge\"\n\t\t\tdata-wp-init=\"callbacks.initTriggerButton\"\n\t\t\tdata-wp-on--click=\"actions.showLightbox\"\n\t\t\tdata-wp-style--right=\"state.imageButtonRight\"\n\t\t\tdata-wp-style--top=\"state.imageButtonTop\"\n\t\t>\n\t\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"12\" height=\"12\" fill=\"none\" viewBox=\"0 0 12 12\">\n\t\t\t\t<path fill=\"#fff\" d=\"M2 0a2 2 0 0 0-2 2v2h1.5V2a.5.5 0 0 1 .5-.5h2V0H2Zm2 10.5H2a.5.5 0 0 1-.5-.5V8H0v2a2 2 0 0 0 2 2h2v-1.5ZM8 12v-1.5h2a.5.5 0 0 0 .5-.5V8H12v2a2 2 0 0 1-2 2H8Zm2-12a2 2 0 0 1 2 2v2h-1.5V2a.5.5 0 0 0-.5-.5H8V0h2Z\" \/>\n\t\t\t<\/svg>\n\t\t<\/button><\/figure>\n<\/figure>\n","protected":false},"excerpt":{"rendered":"<p>I&nbsp;had the opportunity to join a great group of people from my organization (ISE) during the Microsoft Hackathon 2024, where I learned a lot about using GraphDBs for RAG (Retrieval Augmented Generation) purposes with AI. Combining knowledge about relationships between multiple elements and LLMs resulted in informative outputs from our own data that we had&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_kad_post_transparent":"","_kad_post_title":"","_kad_post_layout":"","_kad_post_sidebar_id":"","_kad_post_content_style":"","_kad_post_vertical_padding":"","_kad_post_feature":"","_kad_post_feature_position":"","_kad_post_header":false,"_kad_post_footer":false,"footnotes":""},"categories":[145,143],"tags":[178,176,177,175],"class_list":["post-1961","post","type-post","status-publish","format-standard","hentry","category-development","category-events-2","tag-azureai","tag-cosmosdb","tag-graphdbs","tag-graphrag"],"_links":{"self":[{"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/posts\/1961","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1961"}],"version-history":[{"count":2,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/posts\/1961\/revisions"}],"predecessor-version":[{"id":1965,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=\/wp\/v2\/posts\/1961\/revisions\/1965"}],"wp:attachment":[{"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1961"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=1961"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.ricardovillalobos.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=1961"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}