{"id":92968,"date":"2022-09-20T09:00:00","date_gmt":"2022-09-20T16:00:00","guid":{"rendered":""},"modified":"2024-06-19T10:51:46","modified_gmt":"2024-06-19T17:51:46","slug":"hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime","status":"publish","type":"post","link":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/","title":{"rendered":"Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime"},"content":{"rendered":"\n<div class=\"wp-block-group is-layout-flow wp-block-group-is-layout-flow\"><figure class=\"wp-block-image aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-1024x595.webp\" alt=\"Logos for ONNX Runtime and Apache OpenNLP joined with a plus sign.\" class=\"wp-image-92971 webp-format\" width=\"512\" height=\"298\" srcset=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-1024x595.png 1024w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-300x174.png 300w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-768x447.png 768w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-800x465.png 800w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-400x233.png 400w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-450x262.png 450w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-650x378.webp 650w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image.webp 1032w\" data-orig-src=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-1024x595.png\" data-orig-srcset=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-1024x595.png 1024w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-300x174.png 300w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-768x447.png 768w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-800x465.png 800w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-400x233.png 400w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-450x262.png 450w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image-650x378.png 650w, https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2022\/09\/image.png 1032w\"><\/figure>\n<\/div>\n\n\n\n<p>We\u2019re excited to share the recent integration of <a href=\"https:\/\/onnxruntime.ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">ONNX Runtime<\/a> in <a href=\"https:\/\/opennlp.apache.org\/\" target=\"_blank\" rel=\"noreferrer noopener\">Apache OpenNLP<\/a>! Apache OpenNLP is a Java machine learning library for natural language processing (NLP) tasks. Java is a popular production environment for deploying machine learning workloads, and this integration introduces the ability to run state-of-the-art transformer models directly through OpenNLP. This expands upon the existing classic machine learning algorithms that have powered Java NLP solutions in the past.&nbsp;&nbsp;<\/p>\n\n\n\n<p>OpenNLP is used by prominent open source projects such as Apache Solr, Apache UIMA, and Apache Lucene, as well as in academia and research. ONNX Runtime is a cross-platform accelerator for machine learning models that provides high performance and compatibility with diverse hardware and development environments. This integration combines the best of both worlds to provide accelerated NLP inferencing to Java-based services and applications.&nbsp;<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Tutorial: see the feature in action&nbsp;<\/h2>\n\n\n\n<p>Hugging Face transformer models are amongst the most popular advanced solutions for natural language processing in the industry today, so to showcase this new capability, Jeff Zemerick shares a thorough tutorial on accelerating these models through OpenNLP with ONNX Runtime. Jeff Zemerick is the chair of the Apache OpenNLP project and a search relevance engineer at OpenSource Connections, LLC. <\/p>\n\n\n\n<p><strong><a href=\"https:\/\/blogs.apache.org\/opennlp\/entry\/accelerate-hugging-face-transformer-models\" target=\"_blank\" rel=\"noreferrer noopener\">Check out the tutorial<\/a> to learn more about this exciting new feature made possible through our open source community engagement!<\/strong><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Learn more about ONNX Runtime<\/h2>\n\n\n\n<p>ONNX Runtime optimizes performance for machine learning models trained from PyTorch and TensorFlow, with special focus on Hugging Face transformer model architectures. ONNX Runtime offers APIs for most development languages (Java, Python, C#, C++, C, Javascript), and is compatible with a variety of deployment targets ranging from Linux servers, Windows, macOS, ARM-based edge devices, Android and iOS mobile devices, web browsers, and more. This versatility makes ONNX Runtime a practical option for standardizing machine learning deployment workloads. ONNX Runtime is production-validated and serves over a trillion daily inferences through popular products and services at Microsoft including Office, Azure, Windows, Bing, and Dynamics.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Further reading<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li><a href=\"https:\/\/onnxruntime.ai\/\" target=\"_blank\" rel=\"noreferrer noopener\">ONNX Runtime website and documentation<\/a><\/li><li><a href=\"https:\/\/github.com\/microsoft\/onnxruntime\" target=\"_blank\" rel=\"noreferrer noopener\">Github: microsoft\/onnxruntime<\/a><\/li><li><a href=\"https:\/\/opensource.microsoft.com\">Open Source at Microsoft<\/a><\/li><\/ul>\n","protected":false},"excerpt":{"rendered":"<p>We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP! Apache OpenNLP is a Java machine learning library for natural language processing (NLP) tasks.<\/p>\n","protected":false},"author":5562,"featured_media":95473,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"msxcm_post_with_no_image":false,"ep_exclude_from_search":false,"_classifai_error":"","_classifai_text_to_speech_error":"","footnotes":""},"post_tag":[89,1824],"content-type":[340],"topic":[2252],"programming-languages":[2259],"coauthors":[657],"class_list":["post-92968","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","tag-apache","tag-onnx-runtime","content-type-tutorials-and-demos","topic-tools","programming-languages-java","review-flag-1593580428-734","review-flag-1593580419-521","review-flag-new-1593580248-669"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.2 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog<\/title>\n<meta name=\"description\" content=\"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog\" \/>\n<meta property=\"og:description\" content=\"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\" \/>\n<meta property=\"og:site_name\" content=\"Microsoft Open Source Blog\" \/>\n<meta property=\"article:published_time\" content=\"2022-09-20T16:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-06-19T17:51:46+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1170\" \/>\n\t<meta property=\"og:image:height\" content=\"640\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Faith Xu\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:site\" content=\"@OpenAtMicrosoft\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Faith Xu\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 min read\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\"},\"author\":[{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/author\/faith-xu\/\",\"@type\":\"Person\",\"@name\":\"Faith Xu\"}],\"headline\":\"Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime\",\"datePublished\":\"2022-09-20T16:00:00+00:00\",\"dateModified\":\"2024-06-19T17:51:46+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\"},\"wordCount\":356,\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp\",\"keywords\":[\"Apache\",\"ONNX Runtime\"],\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\",\"name\":\"Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog\",\"isPartOf\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp\",\"datePublished\":\"2022-09-20T16:00:00+00:00\",\"dateModified\":\"2024-06-19T17:51:46+00:00\",\"description\":\"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.\",\"breadcrumb\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp\",\"width\":1170,\"height\":640},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/opensource.microsoft.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#website\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"name\":\"Microsoft Open Source Blog\",\"description\":\"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability\",\"publisher\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#organization\",\"name\":\"Microsoft Open Source Blog\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"contentUrl\":\"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png\",\"width\":259,\"height\":194,\"caption\":\"Microsoft Open Source Blog\"},\"image\":{\"@id\":\"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/x.com\/OpenAtMicrosoft\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog","description":"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/","og_locale":"en_US","og_type":"article","og_title":"Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog","og_description":"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.","og_url":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/","og_site_name":"Microsoft Open Source Blog","article_published_time":"2022-09-20T16:00:00+00:00","article_modified_time":"2024-06-19T17:51:46+00:00","og_image":[{"width":1170,"height":640,"url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.png","type":"image\/png"}],"author":"Faith Xu","twitter_card":"summary_large_image","twitter_creator":"@OpenAtMicrosoft","twitter_site":"@OpenAtMicrosoft","twitter_misc":{"Written by":"Faith Xu","Est. reading time":"1 min read"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#article","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/"},"author":[{"@id":"https:\/\/opensource.microsoft.com\/blog\/author\/faith-xu\/","@type":"Person","@name":"Faith Xu"}],"headline":"Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime","datePublished":"2022-09-20T16:00:00+00:00","dateModified":"2024-06-19T17:51:46+00:00","mainEntityOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/"},"wordCount":356,"publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp","keywords":["Apache","ONNX Runtime"],"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/","url":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/","name":"Hugging Face Transformers enabled in Apache OpenNLP by ONNX Runtime | Microsoft Open Source Blog","isPartOf":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage"},"thumbnailUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp","datePublished":"2022-09-20T16:00:00+00:00","dateModified":"2024-06-19T17:51:46+00:00","description":"We\u2019re excited to share the recent integration of ONNX Runtime in Apache OpenNLP. Apache OpenNLP is a Java machine learning library for NLP tasks.","breadcrumb":{"@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#primaryimage","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2024\/06\/CLO24-Azure-Fintech-006.webp","width":1170,"height":640},{"@type":"BreadcrumbList","@id":"https:\/\/opensource.microsoft.com\/blog\/2022\/09\/20\/hugging-face-transformers-now-enabled-in-apache-opennlp-by-onnx-runtime\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/opensource.microsoft.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Hugging Face Transformers now enabled in Apache OpenNLP by ONNX Runtime"}]},{"@type":"WebSite","@id":"https:\/\/opensource.microsoft.com\/blog\/#website","url":"https:\/\/opensource.microsoft.com\/blog\/","name":"Microsoft Open Source Blog","description":"Open dialogue about openness at Microsoft \u2013 open source, standards, interoperability","publisher":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/opensource.microsoft.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/opensource.microsoft.com\/blog\/#organization","name":"Microsoft Open Source Blog","url":"https:\/\/opensource.microsoft.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","contentUrl":"https:\/\/opensource.microsoft.com\/blog\/wp-content\/uploads\/2019\/08\/Microsoft-Logo.png","width":259,"height":194,"caption":"Microsoft Open Source Blog"},"image":{"@id":"https:\/\/opensource.microsoft.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/x.com\/OpenAtMicrosoft"]}]}},"msxcm_display_generated_audio":false,"msxcm_animated_featured_image":null,"distributor_meta":false,"distributor_terms":false,"distributor_media":false,"distributor_original_site_name":"Microsoft Open Source Blog","distributor_original_site_url":"https:\/\/opensource.microsoft.com\/blog","push-errors":false,"_links":{"self":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/92968","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/users\/5562"}],"replies":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/comments?post=92968"}],"version-history":[{"count":1,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/92968\/revisions"}],"predecessor-version":[{"id":95808,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/posts\/92968\/revisions\/95808"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media\/95473"}],"wp:attachment":[{"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/media?parent=92968"}],"wp:term":[{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/post_tag?post=92968"},{"taxonomy":"content-type","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/content-type?post=92968"},{"taxonomy":"topic","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/topic?post=92968"},{"taxonomy":"programming-languages","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/programming-languages?post=92968"},{"taxonomy":"author","embeddable":true,"href":"https:\/\/opensource.microsoft.com\/blog\/wp-json\/wp\/v2\/coauthors?post=92968"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}