<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0" xmlns:itunes="http://www.itunes.com/dtds/podcast-1.0.dtd" xmlns:googleplay="http://www.google.com/schemas/play-podcasts/1.0"><channel><title><![CDATA[RadAI’s Substack]]></title><description><![CDATA[Rad AI's Engineering Blog]]></description><link>https://eng.radai.com</link><image><url>https://substackcdn.com/image/fetch/$s_!w0uz!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d15cbd-38b9-45c9-8ac9-08319162f803_144x144.png</url><title>RadAI’s Substack</title><link>https://eng.radai.com</link></image><generator>Substack</generator><lastBuildDate>Sat, 11 Apr 2026 12:56:44 GMT</lastBuildDate><atom:link href="https://eng.radai.com/feed" rel="self" type="application/rss+xml"/><copyright><![CDATA[RadAI INC.]]></copyright><language><![CDATA[en]]></language><webMaster><![CDATA[radai@substack.com]]></webMaster><itunes:owner><itunes:email><![CDATA[radai@substack.com]]></itunes:email><itunes:name><![CDATA[Rad AI Engineering]]></itunes:name></itunes:owner><itunes:author><![CDATA[Rad AI Engineering]]></itunes:author><googleplay:owner><![CDATA[radai@substack.com]]></googleplay:owner><googleplay:email><![CDATA[radai@substack.com]]></googleplay:email><googleplay:author><![CDATA[Rad AI Engineering]]></googleplay:author><itunes:block><![CDATA[Yes]]></itunes:block><item><title><![CDATA[The Evolution of Radiology Reporting: Embracing FHIRcast for Seamless Integration]]></title><description><![CDATA[Author: Fletcher Easton]]></description><link>https://eng.radai.com/p/the-evolution-of-radiology-reporting</link><guid isPermaLink="false">https://eng.radai.com/p/the-evolution-of-radiology-reporting</guid><dc:creator><![CDATA[Rad AI Engineering]]></dc:creator><pubDate>Thu, 18 Jul 2024 19:25:35 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!JtEJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h1>Overview</h1><p>Interoperability is at the heart of our vision for the future of radiology. Rad AI Reporting leverages standards like <a href="https://www.hl7.org/implement/standards/index.cfm">HL7</a>, <a href="https://hl7.org/fhir/R4B/index.html">FHIR</a>, and <a href="https://fhircast.org/specification/STU2/">FHIRcast</a> to enhance radiology workflows.</p><p>HL7 (Health Level Seven International) is a set of international standards for the transfer of clinical and administrative data between software applications used by various healthcare providers.</p><p>Within HL7, FHIR (Fast Healthcare Interoperability Resources) is a standard describing data formats and elements (known as "resources") and an application programming interface (API) for exchanging electronic health records. FHIR aims to simplify implementation without sacrificing information integrity, providing a modern, web-based approach to healthcare interoperability.</p><p>FHIRcast builds on FHIR's foundational principles of interoperability and modern web technologies. FHIRcast is an open standard for synchronizing healthcare applications in real-time. It allows applications to communicate and share context, enabling them to stay in sync while the user works across multiple applications.</p><p>While many vendors have worked with HL7 and FHIR, not many have worked with FHIRcast just yet. We&#8217;ll go over what FHIRcast is, what problems it solves, and how Rad AI uses FHIRcast to push the boundaries of what&#8217;s possible in radiology reporting.</p><p>To start, let&#8217;s take a look at the strengths and weaknesses of FHIR.</p><h1>What problems are solved by FHIR?</h1><h2>Common Data Model</h2><p>FHIR provides a standardized and consistent data model known as "resources". Each resource represents a specific aspect of healthcare, such as patients, observations, imaging studies, and procedures. By using these standardized resources, FHIR ensures that different systems can understand and use the data in the same way. FHIR resources are format-agnostic, but commonly implemented using JSON.</p><p>Resources used by Rad AI Reporting include <code>DiagnosticReport</code>, <code>Patient</code>, <code>ImagingStudy</code>, <code>ServiceRequest</code>, and <code>Observation</code>.</p><h2>Common Access Patterns</h2><p>FHIR defines a RESTful API as part of its specification. Implementations of this RESTful API specification are often referred to as &#8220;FHIR servers&#8221;. These FHIR servers provide well-defined endpoints for retrieving FHIR resources, publishing updates to FHIR resources, etc.</p><h2>Improvements Over HL7</h2><p>The complexity of HL7 can be a barrier to adoption and effective implementation. The HL7 standards have steep learning curves and often require extensive customization, which can be time-consuming and expensive. FHIR is designed to be simpler and more intuitive. Its modular structure allows developers to use only the parts they need, reducing complexity and making it easier to implement.</p><p>Furthermore, conceptual differences from HL7 make FHIR easier to work with. HL7 messages are transactional in nature. To get the up-to-date content for a set of resources, a system needs to read the HL7 resources in order and apply those transactions one at a time to the underlying resources. This essentially forces systems to re-implement their own data store to get the full resource content.</p><p>FHIR breaks those constraints by providing a stateful interface instead of a transactional interface. When you request an <code>ImagingStudy</code> resource, you get the full up-to-date state of that resource. Underlying transactions (i.e. creating resources, updating resources, deleting resources) are handled by the FHIR server.</p><h1>What problems are NOT solved by FHIR?</h1><p>While FHIR addresses many challenges in healthcare data interoperability, there are certain problems that it does not fully solve, particularly related to real-time data sharing and synchronization across multiple systems.</p><h2>Real-Time Sharing of Resources</h2><p>FHIR does not inherently provide mechanisms for real-time notifications or updates when a resource changes in one system. This means that changes to a resource in one system are not automatically propagated to other systems.</p><p>Without a built-in method for real-time notifications, systems need to implement their own mechanisms to share updates, which can lead to inconsistencies and delays in data synchronization.</p><h2>Real-Time Sharing of Context</h2><p>FHIR does not provide native support for maintaining shared context across different systems. For example, if I open an <code>ImagingStudy</code> in my PACS, my Reporting app should open to the same <code>ImagingStudy</code>.</p><p>This lack of shared context can lead to workflow inefficiencies and discrepancies, as different systems may not be synchronized. In scenarios where multiple applications need to work together seamlessly, this can be a significant limitation.</p><h1>Existing Solutions that FHIRcast Replaces</h1><p>For real-time sharing of resources and context, healthcare systems often resort to bespoke data-sharing processes. One common approach is the "file-drop" method, which involves writing files to disk and monitoring those files for updates.</p><p>Let&#8217;s take a look at an example. We&#8217;ll assume a Radiologist is using a PACS and the Rad AI Reporting app, with their PACS acting as the &#8220;driver&#8221; application.</p><ol><li><p>A user initiates an action in their PACS, such as opening an imaging study.</p></li><li><p>The PACS pulls the accession number from the imaging study and writes this information to an XML file.</p><ul><li><p>This XML file is saved in a pre-defined directory that other systems have access to.</p></li><li><p>That XML file may look like:</p></li></ul></li></ol><pre><code><code>&lt;ImagingStudy&gt;
    &lt;AccessionNumber&gt;123456&lt;/AccessionNumber&gt;
&lt;/ImagingStudy&gt;
</code></code></pre><ol><li><p>The Rad AI Reporting app watches for changes to that XML file. When a file change occurs, Rad AI Reporting reads the XML file, extracts the accession number, and fetches the corresponding <code>ImagingStudy</code> resource from the FHIR server.</p></li></ol><h2>Problems with the File-Drop Method</h2><ul><li><p><strong>Latency</strong>: There can be delays between when the PACS writes the XML file and when other systems detect and process the change.</p></li><li><p><strong>Scalability</strong>: This method does not scale well, especially in environments with multiple systems needing to stay in sync.</p></li><li><p><strong>Standardization</strong>: This method lacks standardization, leading to inconsistencies in how different systems implement and interpret the XML files.</p></li><li><p><strong>File-system access</strong>: All applications must have file-system access to watch and read from files. This introduces complexities for healthcare applications that are built as web apps, as web apps don&#8217;t have access to the file-system.</p></li></ul><h1>What is FHIRcast?</h1><p>FHIRcast is a standard developed to provide real-time synchronization and context sharing between healthcare applications. It builds on the foundations of FHIR resources, but focuses specifically on ensuring that multiple applications remain synchronized in real-time as users interact with them.</p><p>FHIRcast requires a centralized system to manage real-time synchronization and context sharing. This system is referred to as a &#8220;FHIRcast hub&#8221;.</p><p>Here&#8217;s how FHIRcast works:</p><ol><li><p><strong>Subscription setup</strong>: Applications subscribe to a FHIRcast hub for specific events. This is typically done during application startup.</p></li><li><p><strong>Event triggering</strong>: When a user interacts with an application (e.g., opens a patient record or an imaging study), the application sends an event to the FHIRcast hub.</p></li><li><p><strong>Real-time notification</strong>: The FHIRcast hub immediately broadcasts this event to all subscribed applications via WebSockets, ensuring they are notified in real-time.</p></li><li><p><strong>Context synchronization</strong>: Subscribed applications receive the event notification and adjust their context accordingly. For example, if an imaging study is opened in one application, other applications might display related patient information or open the same study.</p></li></ol><h2>Example Use Case - Imaging Study Synchronization</h2><ol><li><p>A radiologist opens an imaging study in their PACS.</p></li><li><p>The PACS sends an event to the FHIRcast hub, indicating that the <code>ImagingStudy</code> FHIR resource has been opened.</p></li><li><p>The FHIRcast hub broadcasts this event to all subscribed applications, including the Rad AI Reporting application.</p></li><li><p>The Rad AI Reporting application receives the notification and automatically opens the same <code>ImagingStudy</code>, ready for the radiologist to dictate their findings into a new report.</p></li></ol><h2>Benefits of FHIRcast</h2><ul><li><p><strong>Standards based</strong>: By providing a standard interface, all applications can share data and context seamlessly.</p></li><li><p><strong>Centralized access control</strong>: FHIRcast provides built-in mechanisms for authentication and authorization, ensuring that only authorized applications can subscribe to and receive updates.</p></li><li><p><strong>Robust error handling</strong>: FHIRcast offers robust mechanisms for error handling and retry logic within the WebSocket protocol, ensuring reliable communication. If an application falls out-of-sync, FHIRcast provides mechanisms to get back in-sync with the current context.</p></li></ul><h2>Potential Drawbacks of FHIRcast</h2><ul><li><p><strong>Complexity of implementation</strong>: Implementing FHIRcast requires integrating with a FHIRcast hub and ensuring that all participating applications can communicate with it. While third-party libraries may perform some of the heavy-lifting here, integrating older or legacy systems that do not support modern web technologies like WebSockets or do not adhere to FHIR standards can be difficult.</p></li><li><p><strong>Single point of failure</strong>: The FHIRcast hub acts as a central point for managing events and notifications. If the hub experiences downtime or failures, the entire real-time synchronization mechanism can be disrupted.</p></li></ul><p>Furthermore, the FHIRcast specification is relatively young. The initial 1.0 release only came out in 2019, and the specification is still evolving alongside the FHIR specification.</p><p>Despite these potential drawbacks, Rad AI Reporting has embraced FHIRcast as the go-to mechanism to integrate with other healthcare applications.</p><h1>How Rad AI Reporting Uses FHIRcast for Integrations</h1><p>Rad AI Reporting is one application among many that serve radiologists in their day-to-day workflows. We need the ability to integrate with PACS, EMRs, and any other healthcare applications radiologists use.</p><p>To solve this problem, Rad AI Reporting leans heavily on FHIRcast for vendor integrations. There are a wide-range of events we listen for and publish, and <a href="https://app.radai.com/docs/fhircast/setup/">we have thorough documentation on these events and the workflows they relate to within the Rad AI Reporting application</a>.</p><p>There&#8217;s a bit of a &#8220;chicken and egg&#8221; problem with FHIRcast. Because it&#8217;s relatively new, not many vendors have committed to integrating it into their products yet. Because there aren&#8217;t many vendors with FHIRcast enabled, it&#8217;s hard to justify building it into an existing product. Rad AI Reporting is pushing the healthcare ecosystem forward here. We&#8217;re actively building out our FHIRcast system and working with vendors to build out their FHIRcast integrations as we roll out to new customers.</p><p>We&#8217;ve also seen a lot of interest from new tools in the healthcare ecosystem. These are newer applications that want to integrate with vendors but don&#8217;t necessarily have the resources or experience to build custom integrations. For these applications, FHIRcast is a modern, low-barrier way to start integrating with other applications.</p><p>Another way Rad AI Reporting has built out FHIRcast integrations is through &#8220;hackathons&#8221;. These are events many individuals and companies attend to push the industry forward in regards to healthcare application interoperability. Recently, Rad AI Reporting has participated in two of these events.</p><h2>IHE Connectathon - Trieste, 2024</h2><blockquote><p><a href="https://www.ihe-connectathon.com/">IHE Connectathons</a>&nbsp;provide a detailed implementation and testing process to enable the adoption of standards-based interoperability by vendors and users of healthcare information systems. During a Connectathon systems exchange information with corresponding systems in&nbsp;a structured and supervised peer-to-peer testing environment, performing transactions required for the roles (IHE actors)&nbsp;they have selected to perform in carefully defined interoperability use cases (IHE profiles).</p></blockquote><p></p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!JtEJ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!JtEJ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 424w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 848w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 1272w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!JtEJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png" width="526" height="517.8607350096712" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1018,&quot;width&quot;:1034,&quot;resizeWidth&quot;:526,&quot;bytes&quot;:86319,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!JtEJ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 424w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 848w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 1272w, https://substackcdn.com/image/fetch/$s_!JtEJ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F84dfad80-41ec-42c4-b861-ad6f528db163_1034x1018.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Rad AI Reporting passes all tests at the IHE Connectathon</figcaption></figure></div><p>Rad AI partnered with Agfa for this IHE Connectathon. We tested Rad AI Reporting&#8217;s FHIRcast capabilities with <a href="https://www.agfahealthcare.com/universal-viewer/">Agfa&#8217;s HealthCare Enterprise Imaging</a>.</p><p>For our integration, Agfa would have the &#8220;driver&#8221; application, and Rad AI would have the &#8220;driven&#8221; application. This meant that Agfa would set the current context via FHIRcast events like <code>DiagnosticReport-open</code>, and Rad AI Reporting would update resources via FHIRcast events like <code>DiagnosticReport-update</code>.</p><p>Partnering with Agfa at the IHE Connectathon was a massive success. Both teams were able to pass all tests, becoming the first vendors to pass all Integrated Reporting Application tests.</p><p>Some of the workflows we were able to demonstrate include <strong>Interruptions Without Losing Progress</strong> and <strong>Sharing Measurements from PACS</strong>.</p><p>By using FHIRcast, these types of integrations are now open to all other vendors, making integration with Rad AI Reporting seamless and simple.</p><div><hr></div><h3>Interrupted Without Losing Progress</h3><p>This demo shows how a radiologist could:</p><ol><li><p>Start working on a report (the &#8220;original report&#8221;).</p></li><li><p>Get interrupted and start on another report (the &#8220;interrupting report&#8221;).</p></li><li><p>Sign and send off the interrupting report.</p></li><li><p>Switch back to the original report without losing progress.</p></li></ol><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;94ee46cb-16b6-45a2-9679-5f50154e18de&quot;,&quot;duration&quot;:null}"></div><p>Afga demonstrating the &#8220;Suspend/Resume&#8221; IRA Profile</p><div><hr></div><h3>Sharing Measurements from PACS</h3><p>This demo shows how a radiologist could:</p><ol><li><p>Make structured measurements in their PACS.</p></li><li><p>Use those structured measurements in the report.</p></li></ol><p>Note that FHIR resources inserted into the report as &#8220;measurements&#8221; are stored as-is. You can see this in the image on the right, we&#8217;re storing <code>ObservationComponent</code> and <code>ImagingSelection</code> resources.</p><div class="native-video-embed" data-component-name="VideoPlaceholder" data-attrs="{&quot;mediaUploadId&quot;:&quot;8c0f52ae-f754-4f3e-9b71-1478082ba056&quot;,&quot;duration&quot;:null}"></div><p>Agfa demonstrating the &#8220;Content Creator&#8221; IRA Profile by sending measurements from their PACS to Reporting</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!vwiZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!vwiZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 424w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 848w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 1272w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!vwiZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png" width="1132" height="1350" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1350,&quot;width&quot;:1132,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:295918,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!vwiZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 424w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 848w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 1272w, https://substackcdn.com/image/fetch/$s_!vwiZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feb26e5d4-48b5-4982-8e0a-8cd0c26b8338_1132x1350.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a><figcaption class="image-caption">Even though it looks like text in the Report Editor, we&#8217;re storing FHIR resources in the report. The text in the Report Editor is just a textual-representation of that data</figcaption></figure></div><div><hr></div><h2>SIIM Hackathon - 2024</h2><blockquote><p>The Society for Imaging Informatics in Medicine (SIIM) is a global advisor and thought leader in imaging informatics, focusing on enterprise imaging, artificial intelligence, cybersecurity, infrastructure, and standards.</p></blockquote><p><a href="https://www.youtube.com/watch?v=Je5GMelw1-Q">SIIM Hackathon Project Showcase. Martin&#8217;s project, &#8220;Integrated Reporting and Conferencing with FHIRcast&#8221; is the first project in the showcase</a></p><p>Rad AI Reporting did not officially participate in the event; however, we played a supportive role by assisting one of the participants, Martin Bellehumeur, with the integration of FHIRcast into his hackathon project.</p><p>This collaborative effort highlights our commitment to advancing interoperability and supporting the broader healthcare community, even outside of direct event participation.</p><p>Martin&#8217;s project was an integration between <a href="https://ohif.org/">Open Health Imaging Foundation</a> (OHIF) and Rad AI Reporting. The idea was to enable &#8220;FHIRcast Conferencing&#8221;, allowing conference leaders to share context and drive the applications for conference attendees through the use of FHIRcast.</p><p>The project showcases some of the deep integrations Rad AI Reporting can have with other vendors. Some of the workflows enabled by this integration include:</p><ul><li><p>Opening an imaging study in OHIF will create or open that report in Rad AI Reporting.</p></li><li><p>Sending measurements taken from OHIF to Rad AI Reporting, and adding those measurements into the report.</p></li><li><p>Selecting a measurement in Rad AI Reporting sharing that selection with OHIF, bringing that measurement into context.</p></li></ul><p>Congratulations to Martin for his project&#8217;s 5th place win in the SIIM Hackathon!</p><div><hr></div><h1>Why Standards Matter</h1><p>Modern healthcare technology standards like FHIR and FHIRcast are crucial for enhancing interoperability and communication between disparate healthcare systems. By providing a common framework for data exchange and real-time synchronization, these standards enable seamless sharing of patient information across various applications and platforms. This connectivity ensures that healthcare providers have timely access to comprehensive patient data, which facilitates more informed decision-making, reduces the risk of errors, and streamlines workflows. Ultimately, the adoption of standards like FHIR and FHIRcast leads to more coordinated and efficient patient care.</p>]]></content:encoded></item><item><title><![CDATA[Unlocking Precision: Abstractive Summarization and the Power of Retrieval-Augmented Generation (RAG)]]></title><description><![CDATA[Written by Anjali Balagopal]]></description><link>https://eng.radai.com/p/unlocking-precision-abstractive-summarization</link><guid isPermaLink="false">https://eng.radai.com/p/unlocking-precision-abstractive-summarization</guid><dc:creator><![CDATA[Rad AI Engineering]]></dc:creator><pubDate>Thu, 20 Jun 2024 18:00:18 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>In the realm of natural language processing (NLP), summarizing text effectively is a key challenge. Two primary techniques are used: extractive summarization and abstractive summarization. While extractive summarization pulls direct sentences from the original text, abstractive summarization goes a step further, generating entirely new sentences that encapsulate the main ideas of the source material. Unlike extractive summarization, which selects and combines sentences directly from the original text, abstractive summarization generates new sentences that capture the essence of the original document[1,2].</p><p><strong>Key Features of Abstractive Summarization:</strong></p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading RadAI&#8217;s Substack! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><ol><li><p><strong>Condensation of Information</strong>: It aims to reduce the length of the original text while retaining the key points and essential information.</p></li><li><p><strong>Generation of New Text</strong>: Instead of directly copying sentences from the source, it creates new sentences that convey the same meaning.</p></li><li><p><strong>Paraphrasing</strong>: It often involves rephrasing the original content to make the summary more readable and succinct.</p></li><li><p><strong>Synthesis</strong>: It integrates and combines information from different parts of the text to provide a coherent and unified summary.</p></li></ol><p>Traditional methods in abstractive summarization, such as word frequency and discourse semantics, are based on relatively simple algorithms. Word frequency methods determine the importance of words or phrases by counting their occurrences in the text[3]. This approach assumes that words appearing more frequently are more important to the overall meaning of the text. Discourse semantics[4], on the other hand, focuses on the structure and meaning of the text at a higher level, aiming to produce summaries that reflect the underlying discourse.Recent advances in abstractive summarization have been driven by the development of sophisticated models and techniques. Pre-trained encoders, such as BERT (Bidirectional Encoder Representations from Transformers), have significantly improved the quality of summaries by leveraging large amounts of pre-trained data to better understand and represent the input text. These models can capture complex relationships between words and phrases, leading to more coherent and contextually accurate summaries.Sequence-to-sequence models[6,7,8], like BART (Bidirectional and Auto-Regressive Transformers) and Pegasus, have also revolutionized abstractive summarization. These models use transformer architectures to generate summaries, allowing them to consider the entire input text and produce more coherent and contextually relevant summaries. By learning to generate text one token at a time, these models can produce summaries that are more fluent and natural-sounding.Furthermore, the advent of Large Language Models (LLMs) such as GPT-3 (Generative Pre-trained Transformer 3) has further advanced the field of abstractive summarization[9,10,11]. LLMs are trained on massive amounts of text data and are capable of understanding and generating human-like text. This makes them particularly well-suited for summarization tasks, as they can generate summaries that are not only accurate but also stylistically similar to human-written summaries.The field of abstractive summarization has seen significant advancements in recent years, driven by the development of pre-trained encoders, sequence-to-sequence models, and Large Language Models. These advancements have led to substantial improvements in the quality and effectiveness of abstractive summarization systems, showcasing the rapid progress in the field of natural language processing.</p><p><strong>Why Do We Need RAG with language models?</strong></p><p>Even though LLMs are trained on a vast amount of data, they sometimes fall short due to:</p><ul><li><p><strong>Outdated Data</strong>: The information they are trained on can become outdated.</p><ul><li><p><strong>Costly Retraining</strong>: Updating the model with new data requires expensive and time-consuming retraining.</p></li></ul></li><li><p><strong>Limited Context</strong>: LLMs may lack in-depth industry- or organization-specific context.</p></li><li><p><strong>Inaccuracies</strong>: LLMs may generate responses that are incorrect, some as grave as hallucinations.</p></li><li><p><strong>Lack of Explainability</strong>: LLMs can&#8217;t verify, trace, or cite sources.</p></li></ul><h2>Introducing Retrieval-Augmented Generation (RAG)</h2><p>RAG is a technique to ground your LLMs to generate responses to your queries based on a custom knowledge-base that you provide. RAG enhances LLMs by allowing them to access up-to-date information from specific sources or an organization&#8217;s own knowledge base. This keeps the model's responses accurate and relevant without needing to retrain the whole model.RAG can greatly benefit abstractive summarization with LLMs. The main benefits from RAG can be broadly classified into two categories - factual accuracy and personalization.</p><p><strong>Factual accuracy</strong></p><p>Retrieval-Augmented Generation (RAG) can boost the factual accuracy of large language models (LLMs) by integrating external, up-to-date information into their outputs. This process ensures that responses are derived from the most current and reliable data, enhancing their trustworthiness and precision.Sometimes, summarizing documents requires additional knowledge that isn't present in the original source document or query. Rather than depending solely on the LLM to utilize the extensive data it was trained on to infer this extra information, we can employ Retrieval-Augmented Generation (RAG) to supply the necessary context. By retrieving relevant information from external databases, RAG greatly diminishes the occurrence of hallucinations[12] or factually incorrect generations, thus enhancing the reliability of the content [13]. This combination of retrieval and generation capabilities allows for responses that are both contextually appropriate and informed by the latest and most accurate information. Consequently, RAG represents a significant advancement in the development of more intelligent and versatile language models. [13,14].</p><p><strong>Personalization</strong></p><p>Personalizing a Large Language Model (LLM) involves adapting its behavior to better suit the preferences and needs of individual users[15]. As Large Language Models (LLMs) have become more prevalent, there is a growing interest in how to utilize these models to improve personalization. In the context of summarization, tailoring a summary to user preferences is highly desired. One common approach is to incorporate all of historical user data into the model's input. However, this can lead to lengthy inputs that exceed system limits, resulting in delays and increased costs [16]. A no-brainer option is finetuning on user data but this usually ends up being time consuming and, usually causes over-specialization to the fine-tuning tasks, and harm the model&#8217;s pre-existing generalization ability on unseen tasks via in-context learning[32]. As a middle ground, current techniques focus on selectively retrieving relevant user data to generate prompts for specific tasks[17]. Recent work has shown promise in combining retrieval approaches with LLMs to improve personalized performance in recommender systems [18, 19, 20], as well as general NLP tasks [21, 22, 23].</p><h2><strong>RAG framework</strong></h2><p>The Retrieval-Augmented Generation (RAG) framework encompasses several essential steps. Initially, text inputs, such as documents or queries, undergo an embedding phase where they are converted into numerical representations called embeddings. These embeddings capture the semantic meaning of the text and facilitate efficient storage and retrieval. Subsequently, the embeddings are stored in a database, serving as the foundation for the RAG system's knowledge base. During the indexing phase, the embeddings are organized to enable rapid retrieval, creating an index that maps embeddings to their respective documents or passages. When a user query is presented, the RAG system searches the index to locate the most relevant embeddings. The system then retrieves the corresponding documents or passages from the database, which serve as context for generating a response. In some instances, the retrieved documents may be ranked based on their relevance to the query. Finally, using the retrieved documents and the input query, the RAG system generates a response, often employing pre-trained language models to produce text that aligns with the query's intent. Through these steps, the RAG framework enhances the accuracy and relevance of responses in natural language processing tasks. Let&#8217;s go through the three most researched areas here : Embedding creation, retrieval methods and generation.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!fEsQ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!fEsQ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 424w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 848w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 1272w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!fEsQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png" width="1456" height="601" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:601,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:278179,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!fEsQ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 424w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 848w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 1272w, https://substackcdn.com/image/fetch/$s_!fEsQ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F002a91ae-f58d-41a5-ae78-67600060ae88_1789x738.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><p>Retrieval framework</p><ol><li><p><strong>Embedding creation</strong></p><p>Embeddings are numerical representations of objects or concepts. In NLP, embeddings are often used to represent words or phrases. These embeddings are generated by algorithms that analyze the context in which words appear in a large corpus of text. The goal is to capture semantic relationships between words, such that similar words have similar embeddings. This allows algorithms to understand the meaning of words based on their context and enables tasks like sentiment analysis, machine translation, and text summarization. For clarity, see the image below for a simple depiction of a high-dimensional vector space:</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!lVwZ!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!lVwZ!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 424w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 848w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 1272w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!lVwZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png" width="597" height="495" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/f49d613b-480d-452d-8845-9c55172e1ffe_597x495.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:495,&quot;width&quot;:597,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:34606,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/png&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!lVwZ!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 424w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 848w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 1272w, https://substackcdn.com/image/fetch/$s_!lVwZ!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Ff49d613b-480d-452d-8845-9c55172e1ffe_597x495.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Embedding models are algorithms specifically created to learn and produce embeddings for a given piece of information. There are different ways of creating embeddings. <strong>Sparse methods,</strong> like BM25 and TF-IDF, count how many times each word appears in a piece of text to create these representations. However, these representations are very sparse, meaning they are mostly zeros and can be as long as the number of unique words in a language. Sparse methods are easy to understand and use, but they might not be great at capturing the meaning of words. On the other hand, <strong>dense methods</strong> use more complex models, like neural networks, to create more compact and meaningful representations. These methods, such as REALM, DPR, and Sentence-Transformers, can understand the context and relationships between words better. However, they require more computational power and training time. Luckily, there are many pre-trained models available now, so you don't always have to train them from scratch. For a task like summarization, context has high importance and hence dense methods would produce significantly better embeddings for RAG. With numerous excellent models available, choosing the right embedding model for your RAG application can be challenging. A helpful starting point is the MTEB Leaderboard on Hugging Face [<a href="https://huggingface.co/spaces/mteb/leaderboard">https://huggingface.co/spaces/mteb/leaderboard</a>], which offers a current list of proprietary and open-source text embedding models. This leaderboard provides insights into each model's performance on various embedding tasks such as retrieval and summarization. However, be aware that these results are self-reported and may have been benchmarked on different datasets. Additionally, some models might include the MTEB datasets in their training, so it's advisable to evaluate the model's performance on your specific dataset before making a final decision.</p></li><li><p><strong>Retrieval</strong></p><p><strong>In the retrieval phase,</strong> the retriever searches through the vast knowledge base in the database to identify relevant information. The goal is to extract contextually relevant information that can enrich the generated content.The retrieval component aims to extract relevant information from a vast array of external knowledge sources. When the user enters a query or a prompt, it is this system (Retriever) that is responsible for accurately fetching the correct snippet of information that is used in responding to the user query. It involves two main phases, indexing and searching.</p><ul><li><p>Indexing organizes documents to facilitate efficient retrieval, using either inverted indexes for sparse retrieval or dense vector encoding for dense retrieval [24,25,26].</p></li><li><p>The searching utilizes these indexes to fetch relevant documents on the user&#8217;s query, often incorporating the optional rerankers [26,27,28] to refine the ranking of the retrieved documents.</p><p>According to LangChain&#8217;s 2023 State of AI survey, amongst the 6 most used retrieval searching strategies were Self Query, Contextual Compression, Multi-query and time weighted.</p></li></ul></li></ol><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!AwFH!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!AwFH!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 424w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 848w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 1272w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!AwFH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png" width="700" height="341" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/eff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:341,&quot;width&quot;:700,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:null,&quot;alt&quot;:&quot;Source :&nbsp;LangChain State of AI 2023&quot;,&quot;title&quot;:null,&quot;type&quot;:null,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="Source :&nbsp;LangChain State of AI 2023" title="Source :&nbsp;LangChain State of AI 2023" srcset="https://substackcdn.com/image/fetch/$s_!AwFH!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 424w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 848w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 1272w, https://substackcdn.com/image/fetch/$s_!AwFH!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Feff1217a-3e00-42fc-9605-57b7f5afaefe_700x341.png 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p>Source :&nbsp;<a href="https://blog.langchain.dev/langchain-state-of-ai-2023/">LangChain State of AI 2023</a></p><ul><li><p><strong>Similarity Search</strong>: Calculates distance between input and document embeddings for retrieval.</p></li><li><p><strong>Maximum Marginal Relevance (MMR)</strong>: Reduces redundancy in retrieval, considering new information given previous results.</p></li><li><p><strong>Multi-query Retrieval</strong>: Uses language model to generate diverse queries for user input, retrieving relevant documents from each query and combining them for comprehensive results.</p></li><li><p><strong>Contextual Compression</strong>: Squeezes long documents to retain only important parts matching the search.</p></li><li><p><strong>Multi Vector Retrieval</strong>: Stores multiple vectors in a document for more efficient retrieval, matching with different types of information.</p></li><li><p><strong>Parent Document Retrieval</strong>: Stores small document chunks for better embeddings, retrieving larger documents using parent IDs during search.</p></li><li><p><strong>Self Query</strong>: System can ask itself questions, converting them into structured queries for more efficient and accurate searches.</p></li><li><p><strong>Time-weighted Retrieval</strong>: Supplements semantic similarity search with time delay, giving more weight to fresher or more used documents.</p></li><li><p><strong>Ensemble Techniques</strong>: Uses multiple retrieval methods in conjunction for improved results, with implementation depending on use cases.</p></li></ul><p>The most optimal method to use will be task, data and domain dependent.</p><ol start="3"><li><p><strong>Generation</strong></p><p>The generation component utilizes the retrieved content to formulate coherent and contextually relevant responses with the prompting and inferencing phases. The input for language models is formulated through prompting, integrating the query from the retrieval phase. Methods like Chain of Thought (CoT) [29] or Rephrase and Respond (RaR) [30] guide better generation results. In the inferencing step, Large Language Models (LLMs) interpret the prompted input to generate accurate and in-depth responses that align with the query&#8217;s intent and integrate the extracted information [31].</p></li></ol><p>Advancements in NLP have led to substantial improvements in the quality and effectiveness of text summarization systems, paving the way for more accurate and contextually relevant summaries. While abstractive summarization techniques continue to evolve, driven by sophisticated models and techniques, RAG further enhances summarization by incorporating external, up-to-date information. By fusing the precision of retrieval and the creativity of generation, we unlock a new paradigm in summarization. As this model navigates context with precision, crafts summaries with creative finesse, and proves its mettle across diverse datasets, it heralds a future where summarization is not merely a task but an art form &#8212; a nuanced and intelligent expression of content understanding in the digital age.</p><h2>References</h2><ol><li><p><em>Yen-Chun Chen and Mohit Bansal. Fast abstractive summarization with reinforce-selected sentence rewriting. arXiv preprint arXiv:1805.11080, 2018.</em></p></li><li><p><em>Ani Nenkova, Lucy Vanderwende, and Kathleen McKeown. A compositional context sensitive multidocument summarizer: Exploring the factors that influence summarization. In Proceedings of the 29th Annual International ACM SIGIR Conference on Research and Development in Information Retrieval, pp. 573&#8211;580, 2006.</em></p></li><li><p><em>Ani Nenkova, Kathleen McKeown, et al. Automatic summarization. Foundations and Trends in Information Retrieval, 5(2&#8211;3):103&#8211;233, 2011.</em></p></li><li><p><em>Josef Steinberger, Massimo Poesio, Mijail A Kabadjov, and Karel Je&#382;ek. Two uses of anaphora resolution in summarization. Information Processing &amp; Management, 43(6):1663&#8211;1680, 2007.</em></p></li><li><p><em>Yang Liu and Mirella Lapata. Text summarization with pretrained encoders. arXiv preprint arXiv:1908.08345, 2019.</em></p></li><li><p><em>Mike Lewis, Yinhan Liu, Naman Goyal, Marjan Ghazvininejad, Abdelrahman Mohamed, Omer Levy, Ves Stoyanov, and Luke Zettlemoyer. Bart: Denoising sequence-to-sequence pre-training for natural language generation, translation, and comprehension. arXiv preprint arXiv:1910.13461,2019.</em></p></li><li><p><em>Jingqing Zhang, Yao Zhao, Mohammad Saleh, and Peter Liu. Pegasus: Pre-training with extracted gap-sentences for abstractive summarization. In International Conference on Machine Learning, pp. 11328&#8211;11339. PMLR, 2020a.</em></p></li><li><p><em>Yixin Liu, Pengfei Liu, Dragomir Radev, and Graham Neubig. BRIO: Bringing order to abstractive summarization. arXiv preprint arXiv:2203.16804, 2022b.</em></p></li><li><p><em>Tianyi Zhang, Faisal Ladhak, Esin Durmus, Percy Liang, Kathleen McKeown, and Tatsunori B Hashimoto. Benchmarking large language models for news summarization. Transactions of the Association for Computational Linguistics, 12:39&#8211;57, 2024.</em></p></li><li><p><em>Liyan Tang, Zhaoyi Sun, Betina Idnay, Jordan G Nestor, Ali Soroush, Pierre A Elias, Ziyang Xu, Ying Ding, Greg Durrett, Justin F Rousseau, et al. Evaluating large language models on medical evidence summarization. NPJ Digital Medicine, 6(1):158, 2023.</em></p></li><li><p><em>Dave Van Veen, Cara Van Uden, Louis Blankemeier, Jean-Benoit Delbrouck, Asad Aali, Christian Bluethgen, Anuj Pareek, Malgorzata Polacin, Eduardo Pontes Reis, Anna Seehofnerova, et al. Clinical text summarization: Adapting large language models can outperform human experts. Research Square, 2023.</em></p></li><li><p>*Huang, L., Yu, W., Ma, W., Zhong, W., Feng, Z., Wang, H., Chen, Q., Peng, W., Feng, X.,Qin, B., Liu, T.: A survey on hallucination in large language models: Principles, taxonomy,challenges, and open questions (Nov 2023). <a href="https://doi.org/10.48550/ARXIV.2311.05232*">https://doi.org/10.48550/ARXIV.2311.05232*</a></p></li><li><p><em>Zhang, Y., Khalifa, M., Logeswaran, L., Lee, M., Lee, H., Wang, L.: Merging Generated and Retrieved Knowledge for Open-Domain QA. In: Bouamor, H., Pino, J., Bali, K.(eds.) Proceedings of the 2023 Conference on Empirical Methods in Natural LanguageProcessing. pp. 4710&#8211;4728. Association for Computational Linguistics, Singapore (Dec 2023). <a href="https://doi.org/10.18653/v1/2023.emnlp-main.286">https://doi.org/10.18653/v1/2023.emnlp-main.286</a>, https://<a href="http://aclanthology.org/2023.emnlp-main.286">aclanthology.org/2023.emnlp-main.286</a></em></p></li><li><p><em>Yao, J.Y., Ning, K.P., Liu, Z.H., Ning, M.N., Yuan, L.: Llm lies: Hallucinations are not bugs,but features as adversarial examples. arXiv preprint arXiv:2310.01469 (2023)</em></p></li><li><p><a href="https://arxiv.org/pdf/2310.20081v1">*</a><a href="https://arxiv.org/pdf/2310.20081v1*">https://arxiv.org/pdf/2310.20081v1*</a></p></li><li><p><em>Jiuhai Chen, Lichang Chen, Chen Zhu, and Tianyi Zhou. 2023. How Many Demonstrations Do You Need for In-context Learning? arXiv:2303.08119 [<a href="http://cs.ai/">cs.AI</a>]</em></p></li><li><p><em>Alireza Salemi, Sheshera Mysore, Michael Bendersky, and Hamed Zamani. 2023.LaMP: When Large Language Models Meet Personalization. arXiv preprint arXiv:2304.11406 (2023).</em></p></li><li><p><em>Zheng Chen. 2023. PALR: Personalization Aware LLMs for Recommendation. arXiv preprint arXiv:2305.07622 (2023).</em></p></li><li><p><em>Jinming Li, Wentao Zhang, Tian Wang, Guanglei Xiong, Alan Lu, and Gerard Medioni. 2023. GPT4Rec: A generative framework for personalized recommendation and user interests interpretation. arXiv preprint arXiv:2304.03879 (2023).</em></p></li><li><p><em>Jiajing Xu, Andrew Zhai, and Charles Rosenberg. 2022. Rethinking personalized ranking at Pinterest: An end-to-end approach. In Proceedings of the 16th ACM Conference on Recommender Systems. 502&#8211;505.Shiran Dudy. 2022. Personalization and Relevance in NLG. In Companion Proceedings of the Web Conference 2022. 1178&#8211;1178.</em></p></li><li><p><em>Lucie Flek. 2020. Returning the N to NLP: Towards contextually personalized classification models. In Proceedings of the 58th annual meeting of the association for computational linguistics. 7828&#8211;7838.</em></p></li><li><p><em>Hongjin Qian, Xiaohe Li, Hanxun Zhong, Yu Guo, Yueyuan Ma, Yutao Zhu, Zhanliang Liu, Zhicheng Dou, and Ji-Rong Wen. 2021. Pchatbot: a large-scale dataset for personalized chatbot. In Proceedings of the 44th international ACM SIGIR conference on research and development in information retrieval. 2470&#8211;2477.</em></p></li><li><p><em>Omid Rafieian and Hema Yoganarasimhan. 2022. AI and Personalization. Available at SSRN 4123356 (2022).</em></p></li><li><p>*Blagojevic, V.: Enhancing RAG Pipelines in Haystack: Introducing DiversityRanker and LostInTheMiddleRanker (Aug 2023), <a href="https://towardsdatascience.com/enhancing-rag-pipelines-in-haystack-45f14e2bc9f5*">https://towardsdatascience.com/enhancing-rag-pipelines-in-haystack-45f14e2bc9f5*</a></p></li><li><p><em>Douze, M., Guzhva, A., Deng, C., Johnson, J., Szilvasy, G., Mazar&#233;, P.E., Lomeli, M., Hosseini, L., J&#233;gou, H.: The faiss library (2024)</em></p></li><li><p><em>Khattab, O., Zaharia, M.: Colbert: Efficient and effective passage search via contextualized late interaction over bert (Apr 2020). <a href="https://doi.org/10.48550/ARXIV.2004">https://doi.org/10.48550/ARXIV.2004</a>. 12832</em></p></li><li><p><em>Lyu, Y., Li, Z., Niu, S., Xiong, F., Tang, B., Wang, W., Wu, H., Liu, H., Xu, T., Chen, E., Luo, Y., Cheng, P., Deng, H., Wang, Z., Lu, Z.: Crud-rag: A comprehensive chinese benchmark for retrieval-augmented generation of large language models (Jan 2024). </em></p></li></ol><p>https://doi</p><ol><li><p><em>. org/10.48550/ARXIV.2401.17043</em></p></li><li><p>*Tang, Y., Yang, Y.: Multihop-rag: Benchmarking retrieval-augmented generation for multihop queries (Jan 2024). <a href="https://doi.org/10.48550/ARXIV.2401.15391*">https://doi.org/10.48550/ARXIV.2401.15391*</a></p></li><li><p>Wei, J., Wang, X., Schuurmans, D., Bosma, M., Ichter, B., Xia, F., Chi, E., Le, Q., Zhou, D.: Chain-of-thought prompting elicits reasoning in large language models (Jan 2022). https:<a href="https://doi.org/10.48550/ARXIV.2201.11903">//doi.org/10.48550/ARXIV.2201.11903</a></p></li><li><p>Deng, Y., Zhang, W., Chen, Z., Gu, Q.: Rephrase and respond: Let large language models ask better questions for themselves (Nov 2023). <a href="https://doi.org/10.48550/ARXIV.2311.04205">https://doi.org/10.48550/ARXIV.2311.04205</a></p></li><li><p>Lewis, P., Perez, E., Piktus, A., Petroni, F., Karpukhin, V., Goyal, N., K&#252;ttler, H., Lewis,M., Yih, W.t., Rockt&#228;schel, T., Riedel, S., Kiela, D.: Retrieval-Augmented Generation for Knowledge-Intensive NLP Tasks. Tech. rep. (Apr 2021), <a href="http://arxiv.org/abs/">http://arxiv.org/abs/</a> 2005.11401, arXiv:2005.11401 [cs] type: article</p></li><li><p><a href="https://arxiv.org/html/2211.00635v3#:~:text=The">https://arxiv.org/html/2211.00635v3#:~:text=The</a> most common practice to,tasks via in-context learning.</p></li></ol><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading RadAI&#8217;s Substack! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[Reimagining the Standup]]></title><description><![CDATA[Written by Andy Isaacson]]></description><link>https://eng.radai.com/p/reimagining-the-standup</link><guid isPermaLink="false">https://eng.radai.com/p/reimagining-the-standup</guid><dc:creator><![CDATA[Rad AI Engineering]]></dc:creator><pubDate>Wed, 22 May 2024 16:35:35 GMT</pubDate><enclosure url="https://substack-post-media.s3.amazonaws.com/public/images/8ec97ff3-955d-4a9b-a830-a906585f6813_1200x1200.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<h1>Standups</h1><p>It seems like every team that I&#8217;ve been on holds some flavor of daily &#8220;stand-up&#8221; meeting. Especially once hybrid and remote work became necessarily <em>en vogue,</em> a daily <em>standing</em> meeting seemed a panacea to a whole host of modern organizational ailments. Thus a new breed of meeting was born, justified with all the original big-meeting killing rationale of Agile&#8482;&#65039;&nbsp;processes, but often missing the forest for the trees, driving teams back into the daily slump of boring meetings. It&#8217;s worth raising the question of whether your own well-meaning daily exercise has decayed into something that no longer serves its intended purpose - it happens easily!</p><h2>Stand by me!</h2><p>As my engineering dinosaur feathers grow in, I recall a distant time when my team would gather around our lead&#8217;s desk in a tight circle every day in the morning. Each of my teammates had straggled in, oriented themselves to what was on their plate for the day, and came ready to talk. We exchanged information with tight, cross-talking fluidity - and the name wasn&#8217;t a coincidence! It was an actual &#8220;standing&#8221; meeting, in that we would be on our feet, giving us all a little more pressure to keep the meeting quick, functional, and effective.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading RadAI&#8217;s Substack! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div><p>Fast forward a few years, and though most of the team was still in the same office, technology allowed teams to become vastly distributed across time and space. Remote communication made the distributed standup possible for the first time, but it became much trickier to pull off effectively. For one thing, there simply <em>was</em> no &#8220;first thing in the morning&#8221; that worked for everyone, so while SF engineers were just starting their day, folks on the East Coast were already finished with lunch. For a hybrid team, if part of the team WAS in-person, it meant the remote folks needed to be represented by a laptop or situated far against the wall on a screen. And for the remote callers on the other side of that screen, the daily ritual became entirely detached, with A/V issues often making their compatriots seem even further away. I remember being the guy on the screen when I first transitioned into a remote role - couldn&#8217;t help but feel like the kid standing just <em>outside</em> the circle on the playground.</p><p>Eventually, fully remote teams became far more the norm for me, and customary stand-ups followed, though by this point they had become something pretty far removed from the rose-tinted desk huddles of my distant memory. The daily video call was seen as an exercise <em>de rigeur</em>, even as its effectiveness dwindled.</p><p>So why are we still imposing this small daily burden? Well, it does have its good points&#8230;</p><h2>When it&#8217;s good</h2><ul><li><p>Team members can effectively communicate important status updates, speaking to a tight circle of relevant, interested, people. Information transfer happens fast, eliminating the need for folks to chase each other down later.</p></li><li><p>Managers can predict team demands, paying attention to who needs to be unblocked, and arranging exceptional support, just in time.</p></li><li><p>By virtue of sharing every morning together, remote teams can build rapport, making the other informal communication that teams thrive on happen naturally.</p></li></ul><h2>When it&#8217;s bad</h2><ul><li><p>The audience in the room has grown so large and generalized, that many people just aren&#8217;t concerned with a large portion of the others&#8217; day-to-day work, and can&#8217;t even really remember what <em>everyone</em> has said even if they wanted to. Peripheral players get included just for the sake of inclusion and team building, even if their work is not relevant to others on a day-to-day basis. Meetings drag on endlessly so everyone gets their turn.</p></li><li><p>Team members start viewing their &#8220;share&#8221; as less of a way to exchange vital information others need, and more as a laundry list of boxes that have been, or will be checked.</p></li><li><p>Most of the communication devolves into people speaking directly to their manager, with an inherent (usually false) assumption that every other team member is listening intently and effectively, absorbing each cumulative update.</p></li></ul><h2>When it&#8217;s ugly</h2><ul><li><p>The standup is considered the one and only time during the day that the team gets together, and so starts filling the place of other, more casual and focused small group decision meetings. As the duration stretches out longer, participants&#8217; attention wanders to the myriad distractions lying in other windows. Everyone looks effectively busy, while important decisions get lost in the chaos.</p></li><li><p>Managers view the standup as an opportunity to re-prioritize an IC&#8217;s work on a day-to-day basis, eroding their pillar of autonomy before the first cup of coffee.</p></li><li><p>Status exchange effectiveness grinds to near zero, with team members having to chase each other down for followup conversations, despite holding a daily, expensive meeting</p></li></ul><h2>What to do?</h2><p>Knowing that these meetings can quickly lose their effectiveness once a distributed team grows, what can be done to retain a stand-up meeting&#8217;s value?</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!KfBA!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!KfBA!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!KfBA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg" width="1200" height="1200" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/d0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:123499,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!KfBA!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!KfBA!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fd0aae986-93cb-45ea-9811-94913de925dc_1200x1200.jpeg 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h3>Keep the guest list tight</h3><p>Once there are about 7 people in the circle, the group starts to reach the limits of attention and memory. One of our Engineering Managers, Catherine Fleres, likes to abide by the &#8220;Two-Pizza Rule&#8221; - if it takes more than that to adequately feed everyone in a meeting, there are too many people at the table! Strive to keep standup groups to just relevant stakeholders in a focused topic. Organize into squads, and split meetings ruthlessly. If there are other, larger team-wide broadcasts that need to be made, consider alternate channels or meeting formats.</p><h3>Consider actually standing</h3><p>Teammates think I&#8217;m crazy when I suggest this, because it involves an extremely awkward coordinated dance of adjusting cameras, changing desk heights, and just generally looking silly in a room alone. Strange as it seems, the physiological pressure of being in a less-than-leisurely body pose can help keep shares nice and short - direct and to the point.</p><h3>Take discussions offline&#8230; ruthlessly &#8230;</h3><p>It starts innocently enough: a status update sparks a question, and the answer is detailed and complex, which sparks a follow-up from the original speaker. Before they even realize it, the two participants have taken the meeting off the rails, and everybody else&#8217;s eyes are slowly glazing over as they hash out the finer points. Develop a team culture for tabling those important conversations compassionately, and following up after the group has dispersed. It can feel rude to have to police this, so it&#8217;s especially important that everybody is bought in and held accountable, and understands a shared signal to move it along. Encourage followups to happen in a separate &#8220;space&#8221;, so that there is a clear signal that uninterested parties are not obligated to attend.</p><h3>Optimize for broadband communication</h3><p>Standing meetings can sometimes grow large to accommodate the schedule of a single individual who has become the hub from which all others are spokes. The entire meeting degrades from <em>n to n</em> communication to serial bursts of 1:1 exchanges with that single person. This is often indicative of larger organizational chokepoints, and a good hint it&#8217;s time to delegate responsibility more broadly and spread the load.</p><h3>Make space for other group collaboration</h3><p>Is the daily standup the only place where group communication happens on your team? Do decisions get rushed, because they have to be made while a roomful of disinterested folks wait for their turn? Do important announcements get forgotten, buried in a laundry list of mundane updates? Make room for the longer discussions, note their importance, and encourage them to happen in a properly framed meeting venue with strictly the interested parties.</p><h3>Double down on autonomy</h3><p>It&#8217;s common to justify a daily gathering as a way of tracking team accountability. Tickets closed, code merged, charts burnt down. Around the table, the ICs get the message that they need to justify their existence (perhaps to their manager?), and so their shares become a list of yesterday&#8217;s accomplishments. The meetings transform into a status dump for a theoretically rapt listener than effective team communication. Think about this - in your own daily meetings, to what audience is the speaker framing their share? Do participants seem like they&#8217;re collaborating and engaging with each other, or mostly to the manager? If your meeting culture expects every detail to be reported up the chain on a daily cadence, it can easily undermine an IC&#8217;s sense of work autonomy. It leaves the door open for unwelcome scrutiny, micro-management, and ultimately starts to wear on motivation and engagement.</p><p>While managerial demands for daily status checks seem reasonable, they are often unnecessary, and reinforce the notion that work <em>could</em> deviate wildly from sprint plans at any time. I like the analogy to a cruise ship; you can make course corrections on the scale of sprint cycles, but the ship, like your dev&#8217;s psyches, may be too big to turn on a dime. Escaping the notion of &#8220;stand-up as status report&#8221; can help managers plan more realistically, and workers feel safe in predictable work expectations. Consider incorporating automated status tracking into organization tooling, so that a developer&#8217;s normal workflow triggers updates in a board or charts visible to managers. This can help alleviate the concern that work isn&#8217;t happening, even over the distances that remote teams require.</p><h3>If all else fails, Slack up!</h3><p>A common solution to the woes of unfortunate stand-ups is to switch to an &#8220;async&#8221; model, where team members leave their updates in a Slack channel or other team collaboration tool, as they come online for the day. This format alleviates a lot of the pains of having to convey status to others without making awkward time demands, so is a favorite of the meeting-averse. However, this is hardly a suitable replacement. In theory, each team member is consuming everyone else&#8217;s updates, but in practice that rarely holds. The features that defined the format get lost - psychological pressure keeping updates brief and effective has vanished, the laundry list mentality gets exacerbated, and it&#8217;s way too easy to let the audience in the channel grow too large. This is often the last iteration of the meeting format before the whole exercise is scrapped as unhelpful.</p><h2>Standing together as a team</h2><p>Whether you&#8217;re analyzing user experience or plotting out team processes, success or failure depends greatly on how your stakeholders <em>feel.</em> When engineers report &#8220;feeling&#8221; burnout, often the first thing they call out is energy-sapping meetings - being held captive on camera while other people talk about irrelevant distractions. On the other hand, some teams will point to a daily meeting as the time they feel most like a single, sleek operating unit, and this carries through the rest of their day. A well-run standup can go a long way towards maintaining sanity in your schedule, realistic expectations of your peers, and predictable synergy on your team. Invest in doing it right.</p><div class="subscription-widget-wrap-editor" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe&quot;,&quot;language&quot;:&quot;en&quot;}" data-component-name="SubscribeWidgetToDOM"><div class="subscription-widget show-subscribe"><div class="preamble"><p class="cta-caption">Thanks for reading RadAI&#8217;s Substack! Subscribe for free to receive new posts and support my work.</p></div><form class="subscription-widget-subscribe"><input type="email" class="email-input" name="email" placeholder="Type your email&#8230;" tabindex="-1"><input type="submit" class="button primary" value="Subscribe"><div class="fake-input-wrapper"><div class="fake-input"></div><div class="fake-button"></div></div></form></div></div>]]></content:encoded></item><item><title><![CDATA[AI in Healthcare: Bridging Ideas to Implementation]]></title><description><![CDATA[Authors: Zack Allen, MD, MBA and Jeff Chang MD, MBA]]></description><link>https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to</link><guid isPermaLink="false">https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to</guid><dc:creator><![CDATA[Rad AI Engineering]]></dc:creator><pubDate>Thu, 11 Apr 2024 23:03:50 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!na1Q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>The journey of machine learning, from its nascent stages in the 1940s with the likes of Alan Turing pondering the possibilities of machines thinking, has been nothing short of revolutionary. However, technological integration into the healthcare sector has not been without its pitfalls&#8212;for instance, the cumbersome electronic health record (EHR) systems. This post aims to provide general advice on navigating the complex landscape of developing AI applications in healthcare, offering insights for achieving seamless integration and impactful outcomes. Depending on your project, the specifics will vary greatly, but following some or all of the below will make for much smoother sailing.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://eng.radai.com/subscribe?"><span>Subscribe now</span></a></p><h2>Identifying the problem and having a clear end result.</h2><p>The first step in creating a meaningful application is identifying a concrete problem. This might seem straightforward, but it's where many teams need to improve. The importance of this foundational step cannot be overstated. Successful ML applications are not just about leveraging advanced algorithms or having access to vast datasets; it's about applying these tools to solve a specific, well-defined problem that has real-world implications for patients and providers.</p><p>A practical example of this concept is <a href="https://www.radai.com/omni-impressions">Rad AI Omni</a> Impressions, a tool designed to assist radiologists by generating high-precision summaries of their reports known as &#8216;Impressions&#8217;. The creation of these &#8216;Impressions&#8217; is normally repetitive and time consuming for radiologists. Impressions specifically aims to alleviate the burden during this phase of the workflow, focusing on tangible goals such as reducing fatigue and enhancing efficiency.</p><p>Similarly, while ML has tremendous transformative potential, it is worth cautioning against the allure of technology for technology's sake (Topol, 2020). The key is not just to innovate but to innovate with purpose and, as discussed later, with a strong proposed Return on Investment (ROI) over the status quo. The development of ML applications must be driven by a clear understanding of the challenges they aim to address and the tangible benefits they seek to deliver.</p><p>The process of problem identification involves not only understanding the clinical need but also engaging with stakeholders, including healthcare professionals, patients, and policymakers. This engagement ensures that the ML solution is not only technologically advanced but also practical, usable, and aligned with the needs of those it aims to serve. Furthermore, setting clear, achievable goals is essential. These goals should be specific, measurable, attainable, relevant, and time-bound (SMART), providing a roadmap for the project's development and implementation.</p><p>A real-world example of this approach can be seen in the development of ML applications for diagnosing diabetic retinopathy. The problem is clear and well-defined: early detection of this condition can prevent severe visual impairment. The goal, therefore, is to develop a tool that can accurately and efficiently screen patients for early signs of diabetic retinopathy, facilitating timely intervention. This example underscores the importance of beginning with a concrete problem and having a clear end result in mind.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!na1Q!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!na1Q!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!na1Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg" width="534" height="534" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:1200,&quot;width&quot;:1200,&quot;resizeWidth&quot;:534,&quot;bytes&quot;:235196,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/jpeg&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:false,&quot;topImage&quot;:true,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!na1Q!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 424w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 848w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 1272w, https://substackcdn.com/image/fetch/$s_!na1Q!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F36c01848-9dc4-4f9e-b69c-5dd078f42cf1_1200x1200.jpeg 1456w" sizes="100vw" fetchpriority="high"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p></p><h2>Ensuring data represents real-world situations.</h2><p>Data is undoubtedly the lifeblood of any AI application, but it's a whole different ball game when it comes to healthcare. Here, sheer volume of data isn't the only game in town. It's the diversity and quality of that data that truly makes a difference, ensuring it accurately reflects the myriad complexities and nuances of real-world medical scenarios.</p><p>For LLMs and other contemporary model architectures to truly excel, they need more than just a large amount of data. They need the correct data. Just like in any educational setting where the quality of materials determines the quality of learning, LLMs require high-quality, well-curated data to thrive. This isn't just about feeding them information; it's about educating them with data that's as close to the real deal as possible.</p><p>Drawing from the insights provided in the paper "Exploring the Impact of Data Quality on Large Language Models" (<a href="https://arxiv.org/abs/2306.11644">arXiv:2306.11644</a>) it becomes evident that the 'nutrition' we provide to these AI models through data significantly impacts their performance across the board. The paper eloquently discusses how nuanced, high-quality datasets serve as the optimal nourishment that enables LLMs, particularly in the healthcare domain, to achieve better performance. It's akin to the difference between fast food and a balanced diet for humans; the quality of the input directly affects the output.</p><p>In practice, this involves using targeted datasets created in real-world workflows, and applying domain knowledge to highlight the most meaningful parts of this data. At <a href="https://www.radai.com/">Rad AI</a>, we have access to hundreds of millions of radiology reports. However, effectively utilizing them is more complex than simply feeding them into a model training pipeline. To focus the data in a way that reflects what you want your model to learn, you must first understand the data you're starting with.</p><p>Imagine teaching a medical student with outdated textbooks and then expecting them to perform complex surgeries. The outcome likely wouldn't be great. The same goes for models. If we're aiming for AI applications that not only support but enhance healthcare delivery, we must prioritize the impeccable quality and variety of data we provide. This ensures that these models can handle the complexities of healthcare, offering data-efficient approaches that significantly surpass their predecessors.</p><h2>Have an ROI pitch.</h2><p>The theoretical promise of AI in healthcare is potentially enormous. However, the tangible results are often elusive. This is one of many reasons why ROI is a core component of anything worth building. To be clear, we are not advocating ROI in purely financial terms. In fact, the best clinical-facing offerings tend to start with non-financial ROI and then supply financial benefits as an additional consideration.</p><p>It is crucial that you not only have a solid idea of your ROI proposition but also work on how you will communicate this to the stakeholders in the healthcare institutions you will need to work with. It will not matter if your model is 99% accurate if you cannot or do not convey how this moves the needle in practical terms.</p><p>For instance, when we converse with medical providers and administrators, we don't discuss vague outcomes or intangible benefits, even though these areas hold considerable potential. Instead, we focus on concrete results. For Omni Impressions, we highlight quantifiable reductions in fatigue and increased accuracy in reporting. For <a href="https://www.radai.com/continuity">Rad AI Continuity</a>, we emphasize measurable patient follow-up rates and real-world patient outcome statistics where Continuity played a key role.</p><p>Developing ML models for healthcare is a multifaceted endeavor that goes beyond technical achievement and requires a highly multidisciplinary team. Your ROI pitch should be grounded in tangible benefits like improved patient outcomes, operational efficiency, and financial savings. Further, the more you are able to tie this to quantifiable outcomes and existing industry KPIs, the more straightforward your conversations will be. A significant caveat to this, though, is that you should not feel limited to these metrics; there are, of course, a multitude of benefits that will be just as, if not more, impactful but difficult to quantify.</p><h2>Build with innovation partners.</h2><p>Once you are at the point of having end users engage with some version of your product, you want to start looking for and building with individuals and teams that are not just end users of your product but are willing to innovate alongside your team. The part that makes all the difference in the world here is engagement&#8212;the vision of the potential benefits of what your project could be and not necessarily what it currently is.</p><p>The building of these applications tends to be a very iterative process. Therefore, you will want people who will not only have some patience for the inevitable pitfalls as biases and edge cases are worked through. The trade of here is you are asking for additional help from your end users who can not only point out things you have not thought of but also provide ample amounts of constructive feedback to help hammer your product from a dented piece of metal to a smooth and shiny offering that provides many more upside benefits than the original prototype.</p><p>This process is exemplified by several radiology groups that have been partners of Rad AI for a long time, some since the company's earliest days. The radiologists we collaborate with not only act as end users but also help us tailor our tools to be as effective and purposeful as possible. We actively engage with our users and value their feedback, striving to make the development process beneficial for both parties.</p><p>While this refinement process can occur without such engagement, and you should only offload some of the debugging process onto your end users, a more collaborative approach in the iterative process can accelerate progress on core issues and result in a superior end product.</p><h2>Test and monitor thoroughly.</h2><p>Thorough testing and validation are non-negotiable. This process begins with offline validation and should ideally include human validation to assess the application's real-world efficacy. The advent of generative AI (GenAI) introduces the need for innovative performance monitoring metrics, necessitating creative approaches to assessment.</p><p>In our deployments, we utilize a wide range of both offline and online metrics to maintain quality and consistency. Besides traditional text-based metrics like <a href="https://en.wikipedia.org/wiki/BLEU">BLEU</a> and <a href="https://en.wikipedia.org/wiki/ROUGE_(metric)">ROUGE</a>, we've also implemented our own custom metrics. These focus on the content and meaning of the text generated by our models, rather than just token-level accuracy. Creating custom metrics is a domain-specific and time-consuming process, but it can be a worthwhile investment. This is especially true for generative models, where more traditional metrics may fall short.</p><p>Deployment is just the beginning. The real test comes when the application faces production data. Monitoring performance necessitates a blend of qualitative feedback and quantitative metrics, focusing on the solution&#8217;s performance and the synergy between the AI and its human users. Adjusting to feedback and data drift is an ongoing process essential for the application's evolution.</p><h2>Embrace Human-in-the-Loop systems.</h2><p>While the allure of full automation is strong, the reality of healthcare demands a much more grounded approach. Human-in-the-loop systems represent a balanced integration of AI and human expertise, capitalizing on the strengths of each. These systems have proven to be the most effective in scenarios requiring complex reasoning or nuanced judgment. From both ethical and practical considerations, clinicians are still ultimately responsible for how they choose to use AI-powered tools. As powerful as they are becoming, these new features are still just that: tools. These systems should be looked at as additional tools used as input to the overall decision-making process, not something that is meant to supplant it.</p><p>We've deployed numerous ML driven applications and features. However, most still incorporate human input within the workflow. Despite their capabilities, modern language models aren't yet ready to operate independently. For instance, in Omni Imressions, a radiologist still reviews and signs off on the impression. In Continuity, a medical professional ensures the validity of patient follow-ups. While some argue that this approach limits the potential of ML augmented workflows, the success of Rad AI and many others in the industry proves otherwise. These ML-augmented workflows continue to offer significant benefits relative to baseline.</p><p>Expanding on this, we also establish systems that interpret human interaction with our model outputs, which can then be used as direct human feedback. Beyond just analytics, this approach enables you to feed production data back into your models. This allows for ongoing improvement, ensures data remains current, and minimizes issues with data drift and models becoming outdated.</p><p>There are many additional considerations such as appropriate transparency on limitations, training on how to use, and the potential limitations that should also be considerations in the deployment of AI-powered technologies both in and outside of the healthcare domain.</p><p>The responsibility for appropriate and responsible implementation of these powerful tools does not rest on any one party, as with so many other areas of society. This burden is a shared commodity. The people involved at all stages of the process, ranging from developers, clinicians, regulators, and, in some instances, the patients, should all be vigilant to how these autonomous systems are changing how we approach healthcare (<a href="https://jnm.snmjournals.org/content/64/10/1509.long">Herrington, 2023</a>).</p><h2>Conclusion</h2><p>Returning to the example of a screening solution for diabetic retinopathy, the solution needs to be introduced at the right steps in the patient journey (at times where retinal images are being acquired, or being made available in retrospect). Deployment and training needs to be done with specific clinical stakeholders (potentially optometrists, ophthalmic technicians, nurses, primary care physicians or Physician Assistants (PAs), depending on the complexity of product training and use, and the route of introduction into the clinical workflow). Product and data security and privacy need to be ensured, alongside any necessary clearances for that specific geographic market.</p><p>The production data used for the screening solution needs to be readily available in a consistent format effectively represented by the ML models&#8217; training data, or acquired specifically for the purpose of screening. Clinical stakeholders and executive leadership at optometry offices, primary care offices and/or health systems need to buy into the necessity and benefit of adoption&#8212;and will likely need to see specific measurable ROI beyond the improvements to patient care.</p><p>Incorporating artificial intelligence into the healthcare sector comes with its set of difficulties, but it also offers significant opportunities for important changes. While developers must overcome these hurdles, which might involve acquiring new knowledge and adopting novel approaches, successful outcomes generally justify the additional effort involved.</p><div class="captioned-image-container"><figure><a class="image-link image2 is-viewable-img" target="_blank" href="https://substackcdn.com/image/fetch/$s_!ukV1!,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp" data-component-name="Image2ToDOM"><div class="image2-inset"><picture><source type="image/webp" srcset="https://substackcdn.com/image/fetch/$s_!ukV1!,w_424,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_848,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_1272,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_1456,c_limit,f_webp,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 1456w" sizes="100vw"><img src="https://substackcdn.com/image/fetch/$s_!ukV1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp" width="1456" height="832" data-attrs="{&quot;src&quot;:&quot;https://substack-post-media.s3.amazonaws.com/public/images/48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp&quot;,&quot;srcNoWatermark&quot;:null,&quot;fullscreen&quot;:null,&quot;imageSize&quot;:null,&quot;height&quot;:832,&quot;width&quot;:1456,&quot;resizeWidth&quot;:null,&quot;bytes&quot;:644558,&quot;alt&quot;:null,&quot;title&quot;:null,&quot;type&quot;:&quot;image/webp&quot;,&quot;href&quot;:null,&quot;belowTheFold&quot;:true,&quot;topImage&quot;:false,&quot;internalRedirect&quot;:null,&quot;isProcessing&quot;:false,&quot;align&quot;:null,&quot;offset&quot;:false}" class="sizing-normal" alt="" srcset="https://substackcdn.com/image/fetch/$s_!ukV1!,w_424,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 424w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_848,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 848w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_1272,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 1272w, https://substackcdn.com/image/fetch/$s_!ukV1!,w_1456,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2F48647fbd-a01e-4ad3-b5cd-8803cf96206a_1792x1024.webp 1456w" sizes="100vw" loading="lazy"></picture><div class="image-link-expand"><div class="pencraft pc-display-flex pc-gap-8 pc-reset"><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container restack-image"><svg role="img" width="20" height="20" viewBox="0 0 20 20" fill="none" stroke-width="1.5" stroke="var(--color-fg-primary)" stroke-linecap="round" stroke-linejoin="round" xmlns="http://www.w3.org/2000/svg"><g><title></title><path d="M2.53001 7.81595C3.49179 4.73911 6.43281 2.5 9.91173 2.5C13.1684 2.5 15.9537 4.46214 17.0852 7.23684L17.6179 8.67647M17.6179 8.67647L18.5002 4.26471M17.6179 8.67647L13.6473 6.91176M17.4995 12.1841C16.5378 15.2609 13.5967 17.5 10.1178 17.5C6.86118 17.5 4.07589 15.5379 2.94432 12.7632L2.41165 11.3235M2.41165 11.3235L1.5293 15.7353M2.41165 11.3235L6.38224 13.0882"></path></g></svg></button><button tabindex="0" type="button" class="pencraft pc-reset pencraft icon-container view-image"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-maximize2 lucide-maximize-2"><polyline points="15 3 21 3 21 9"></polyline><polyline points="9 21 3 21 3 15"></polyline><line x1="21" x2="14" y1="3" y2="10"></line><line x1="3" x2="10" y1="21" y2="14"></line></svg></button></div></div></div></a></figure></div><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://eng.radai.com/subscribe?"><span>Subscribe now</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to?utm_source=substack&utm_medium=email&utm_content=share&action=share&quot;,&quot;text&quot;:&quot;Share&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to?utm_source=substack&utm_medium=email&utm_content=share&action=share"><span>Share</span></a></p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to/comments&quot;,&quot;text&quot;:&quot;Leave a comment&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://eng.radai.com/p/ai-in-healthcare-bridging-ideas-to/comments"><span>Leave a comment</span></a></p><p></p>]]></content:encoded></item><item><title><![CDATA[Coming soon]]></title><description><![CDATA[This is RadAI&#8217;s Substack.]]></description><link>https://eng.radai.com/p/coming-soon</link><guid isPermaLink="false">https://eng.radai.com/p/coming-soon</guid><dc:creator><![CDATA[Rad AI Engineering]]></dc:creator><pubDate>Wed, 21 Feb 2024 21:31:47 GMT</pubDate><enclosure url="https://substackcdn.com/image/fetch/$s_!w0uz!,w_256,c_limit,f_auto,q_auto:good,fl_progressive:steep/https%3A%2F%2Fsubstack-post-media.s3.amazonaws.com%2Fpublic%2Fimages%2Fe7d15cbd-38b9-45c9-8ac9-08319162f803_144x144.png" length="0" type="image/jpeg"/><content:encoded><![CDATA[<p>This is RadAI&#8217;s Substack.</p><p class="button-wrapper" data-attrs="{&quot;url&quot;:&quot;https://eng.radai.com/subscribe?&quot;,&quot;text&quot;:&quot;Subscribe now&quot;,&quot;action&quot;:null,&quot;class&quot;:null}" data-component-name="ButtonCreateButton"><a class="button primary" href="https://eng.radai.com/subscribe?"><span>Subscribe now</span></a></p>]]></content:encoded></item></channel></rss>