Close Menu
    DevStackTipsDevStackTips
    • Home
    • News & Updates
      1. Tech & Work
      2. View All

      Sunshine And March Vibes (2025 Wallpapers Edition)

      June 1, 2025

      The Case For Minimal WordPress Setups: A Contrarian View On Theme Frameworks

      June 1, 2025

      How To Fix Largest Contentful Paint Issues With Subpart Analysis

      June 1, 2025

      How To Prevent WordPress SQL Injection Attacks

      June 1, 2025

      My top 5 must-play PC games for the second half of 2025 — Will they live up to the hype?

      June 1, 2025

      A week of hell with my Windows 11 PC really makes me appreciate the simplicity of Google’s Chromebook laptops

      June 1, 2025

      Elden Ring Nightreign Night Aspect: How to beat Heolstor the Nightlord, the final boss

      June 1, 2025

      New Xbox games launching this week, from June 2 through June 8 — Zenless Zone Zero finally comes to Xbox

      June 1, 2025
    • Development
      1. Algorithms & Data Structures
      2. Artificial Intelligence
      3. Back-End Development
      4. Databases
      5. Front-End Development
      6. Libraries & Frameworks
      7. Machine Learning
      8. Security
      9. Software Engineering
      10. Tools & IDEs
      11. Web Design
      12. Web Development
      13. Web Security
      14. Programming Languages
        • PHP
        • JavaScript
      Featured

      Student Record Android App using SQLite

      June 1, 2025
      Recent

      Student Record Android App using SQLite

      June 1, 2025

      When Array uses less memory than Uint8Array (in V8)

      June 1, 2025

      Laravel 12 Starter Kits: Definite Guide Which to Choose

      June 1, 2025
    • Operating Systems
      1. Windows
      2. Linux
      3. macOS
      Featured

      My top 5 must-play PC games for the second half of 2025 — Will they live up to the hype?

      June 1, 2025
      Recent

      My top 5 must-play PC games for the second half of 2025 — Will they live up to the hype?

      June 1, 2025

      A week of hell with my Windows 11 PC really makes me appreciate the simplicity of Google’s Chromebook laptops

      June 1, 2025

      Elden Ring Nightreign Night Aspect: How to beat Heolstor the Nightlord, the final boss

      June 1, 2025
    • Learning Resources
      • Books
      • Cheatsheets
      • Tutorials & Guides
    Home»Development»Agentforce and Unstructured Data = Yes!

    Agentforce and Unstructured Data = Yes!

    February 21, 2025

    Leveraging data that is ‘trapped’ within unstructured data files like PDFs is a powerful capability within Agentforce.  With an Agentforce Data Library this ability to surface PDF content through an Agent is now available in a ‘No Code’ fashion to all Salesforce Admins.

    So what is our Agentforce unstructured data use case?

    Let’s say we have a variety of PDFs about the warranty coverage for vehicles.  We have a customer Experience Cloud site where the customer will log in and see their current warranty information. We also want these customers to be able to ask questions about the warranty program.   At this point all of that warranty information is ‘trapped’ inside of these PDFs.  We could surface the actual PDFs or try to work with Knowledge within Service Cloud.  But we can do better: Let’s actually surface the data within the PDFs in a very effective way through a chat interface to these customers.  Let’s let Agentforce work effectively with this unstructured data.

    First a demo of how this works.

    1. Here is our Agent who is ready to answer our questions.
      Agentforce Agent Ready

      Agentforce Agent Ready

    2. Here is our question: For a 2024 Ford F150 how do I make a warranty claim? 
    3. Here is the answer from our Agent
      Agentforce Agent Answer

      Agentforce Agent Answer

    4. It worked!  How do I know that?  Because the answer came word for word from the PDF content that I had uploaded earlier.
    5. Here is a piece of that FAQ document that exists as a PDF.
      FAQ Content

      FAQ Content

    How was this solution built?

    1. An Agentforce Data Library was built.
    2. Go to Setup, Search for Agentforce Data Library
    3. Click on ‘New Library’
      Create new Agentforce Data Library

      Create new Agentforce Data Library

    4. Give it a Name, API Name and Description and click on Save.
    5. Once you have your Agentforce Data Library you have to choose between leveraging Knowledge or File Uploads.  You cannot do both in the same Library.  In our example we are doing File Uploads.
    6. We then upload whatever PDF files we want so the content can be used by your Agent. In this example I uploaded a couple of FAQ documents about vehicle warranty information.
      Upload Files to Library

      Upload Files to Library

    7. At this point when the file uploads occur there is a lot happening for us automatically in the background in Data Cloud.  Salesforce has ingested that PDF, chunked it out and placed the content in some Data Cloud objects so it can be indexed and easily retrieved.
    8. The base object showing that the file has been uploaded goes in the ‘DMO’ called ‘RagFileUDMO’.  You can view it in the ‘Data Explorer’ in Data Cloud.
      File level DMO in Data Cloud

      File level DMO in Data Cloud

    9. There are two other objects where the ‘Chunks’ of data live.  When we did the File Upload into the Agentforce Data Library, Data Cloud automatically pulled the content out of the PDF, broke the text/content into ‘chunks’ and then put those ‘chunks’ of text/content into a DMO where it is indexed and made to be searchable.   There is a ‘SI_chunk’ and a ‘SI_index’ DMO.  Here is the ‘SI_chunk’ one…
      Search DMO in Data Cloud

      Search DMO in Data Cloud

    10. There will be use cases where doing a manual load into an Agentforce Data Library would not be manageable or scalable, so there are integration options where files (Unstructured Data) could be loaded into Amazon S3, Azure Blog or GCP and then automatically pushed to Data Cloud.  We will save those steps for another blog post. 🙂
    11. Now that the PDF content is ready to be used, we need to tell our Agent to use this specific Agentforce Data Library.  An Agent can only point at one Agentforce Data Library so it knows specifically where to look.
    12. Open up your Agent by going to ‘Agents’ in Setup and then using the drop-down to the right of your Agent to choose ‘Open in Builder’.
    13. Now select the Agentforce Data Library you have created after you select the Library ‘Book’ icon on the left.
      Agentforce Data Library

      Agentforce Data Library

    14. We now want to make sure that our Agent will use the ‘Answer Questions with Knowledge’ Action when the user prompts the Agent with questions about warranty.
    15. In order to do this I created a new ‘Warranty FAQ’ Topic and gave it instructions and examples.
      Topic Configurations and Instructions

      Topic Configurations and Instructions

    16. Then I made sure it has only one Action, which is the ‘Answer Questions with Knowledge’.  This out of the box Action will use the Library that is associated with this Agent.
      Topic Actions

      Topic Actions

    17. Note that if I did not create this custom ‘Warranty FAQ’ Topic the Agent might default over to the ‘MigrationDefaultTopic’ Topic and not use the proper Action.
    18. Building proper and detailed Instructions is very important within an Agent.
    19. Remember that you can do a lot of great testing and see which Topics are Actions are being selected and executed within the Agent Builder.

    That is it!

    We have an Agent that can leverage PDF content that was created with ‘No Code’.  This solution is fully within the Trust architecture that Salesforce has in place for Agentforce. We needed the Agentforce Data Library, our PDFs, and a new Topic.  That is really it!

    If you are brainstorming about use cases for Agentforce, please read on with this blog post from my colleague Darshan Kukde!

    Here is another blog post where I discussed returning structured data instead of the unstructured data we talked about in this blog post.

    If you want a demo of this in action or want to go deeper please reach out and connect!

    Source: Read More 

    Facebook Twitter Reddit Email Copy Link
    Previous ArticleManaging Multi-Device Sessions with Laravel’s Device Logout Feature
    Next Article Lifecycle of Agile Backlog Items: Understanding Their Journey from Creation to Completion

    Related Posts

    Security

    New Linux Flaws Allow Password Hash Theft via Core Dumps in Ubuntu, RHEL, Fedora

    June 1, 2025
    Security

    DevSecOps Phase 4B: Manual Penetration Testing

    June 1, 2025
    Leave A Reply Cancel Reply

    Continue Reading

    Valve denies massive Steam leak; says systems “NOT breached”

    Operating Systems

    ansi-colors – add ANSI colors to terminal text

    Development

    Amazon launches serverless distributed SQL database, Aurora DSQL

    Tech & Work

    CVE-2025-1625 – Qi Blocks WordPress Stored Cross-Site Scripting Vulnerability

    Common Vulnerabilities and Exposures (CVEs)

    Highlights

    Exploring the Diverse Roles in UX Design

    June 21, 2024

    Many job openings in UX assume very specific roles with very specific skills. Product designers should…

    Researchers at the University of Glasgow Propose Shallow Cross-Encoders as an AI-based Solution for Low-Latency Information Retrieval

    April 3, 2024

    How to Integrate Discord Webhooks with Next.js 15 – Example Project

    January 21, 2025

    Why Pixel phone’s enhanced Astrophotography mode is perfect for snapping the night sky

    August 21, 2024
    © DevStackTips 2025. All rights reserved.
    • Contact
    • Privacy Policy

    Type above and press Enter to search. Press Esc to cancel.