Extending Copilot in Dynamics 365 Finance and Operations Apps6 min read

The world is undergoing significant changes, particularly in how we interact with applications. Large language models such as GPTs are revolutionizing this interaction, with artificial intelligence playing an increasingly pivotal role in enhancing both the quality and efficiency of our work processes.

From the vantage point of Dynamics 365, Copilot emerges as a crucial tool for professionals. It serves multiple functions:

  • Facilitating Idea Generation and Content Creation: Copilot accelerates the generation of ideas and content, allowing professionals to brainstorm and produce material at a faster pace.
  • Task Automation: It streamlines tasks and automates processes, thereby enabling users to execute operations swiftly and efficiently.
  • Insight Generation: Copilot provides valuable insights and suggests optimal actions for users, aiding in decision-making processes.

These functions are seamlessly integrated with natural language capabilities, empowering users to communicate effortlessly with the application.

Several key differentiators distinguish our approach within the Dynamics 365 ecosystem:

  • GPT-Powered Copilot: Leveraging the capabilities of GPTs, our Copilot is powered by the Azure OpenAI service, fortified by the robust security measures inherent in the Microsoft stack. This integration allows organizations to harness the potential of GPT-powered Copilots across various roles within the company.
  • Embedded Copilot Experience: The integration of Copilot into the Dynamics 365 environment enhances the overall user experience, simplifying tasks and facilitating smoother workflows tailored to specific job roles.

By harnessing the power of Copilot within Dynamics 365, organizations can unlock new levels of efficiency and productivity across their operations.

Copilot in Finance and Operations

When discussing Copilot in Finance and Operations, it’s important to recognize its presence across various platforms within Dynamics. Copilot manifests itself in three primary surfaces within Dynamics:

App Sidecar Chat: One of the surfaces where Copilot is prominently featured is the app sidecar chat. Here, users engage in natural language conversations with Copilot through a panel integrated into the sidecar interface. This panel facilitates seamless communication, allowing users to interact with Copilot while carrying out tasks within the application.

Embedded AI: Another significant aspect of Copilot is its integration as embedded AI within the application. This integration is evident in various features such as the collection summary page and the confirmed purchase orders with changes page. In these instances, AI functionalities are directly incorporated into the application, enhancing user experiences and streamlining processes.

M365 Chat Integration: Additionally, users can leverage Copilot to ask questions about their data directly from the Microsoft 365 (M365) chat interface, even outside the Finance and Operations application. This integration allows for seamless communication with Finance and Operations data, providing users with access to valuable insights and information.

Enhancing Application Contextual Experiences

One of the primary advantages of integrating the sidecar chat experience directly into the application is the enhancement of rich, contextual experiences. The Copilot panel serves as a guiding companion within the application, offering users valuable insights and assistance tailored to their needs.

The overarching vision for Copilot is to evolve into a comprehensive guide for users, encompassing app functionality, features, and data inquiries. With an innate understanding of the application’s capabilities, Copilot aims to address a myriad of user queries, ranging from troubleshooting to instructional guidance on navigating through various tasks within the application.

Moreover, Copilot is envisioned to provide seamless access to data-related inquiries, eliminating the need for users to navigate to specific forms or desks to seek information. By leveraging natural language processing, Copilot can swiftly interpret and respond to user inquiries, thereby streamlining the overall user experience.

Additionally, Copilot is expected to offer recommendations and execute client actions autonomously. Through automation capabilities driven by natural language commands, Copilot can expedite operations and enhance user efficiency within the application.

While the current capabilities of the Copilot panel provide a foundation, the journey towards realizing this vision is ongoing. The Microsoft team continues to work towards expanding Copilot’s functionalities to align more closely with this comprehensive guide concept. As such, future iterations of Copilot are anticipated to offer a fully functional and intuitive guide for users, further enriching the application experience.

Copilot Architecture

Before discussing how to extend Copilot, it’s essential to comprehend the underlying architecture of its operation.

The architecture revolves around two main components:

  1. AI Control Embedded in Finance and Operations Application: This component is represented by the Copilot control, which serves as the chat panel within the Finance and Operations application. Acting as the executor of client actions, this panel manages communication between the Finance and Operations client and Microsoft Copilot Studio.
  2. Microsoft Copilot Studio: Serving as a central component of the Copilot experience, Copilot Studio functions as an AI orchestration hub. It serves as the point of extensibility, where core components are added to facilitate intelligent orchestration based on user prompts entered into the client chat panel.

Microsoft Copilot Studio performs several key functions:

  • Conversation History Management: It tracks and manages the history of conversations, ensuring continuity and context in interactions.
  • Intent Understanding: Copilot Studio interprets the user’s intent as expressed in their chat inputs, allowing it to determine the appropriate actions to take.
  • Execution of Actions: Based on user inputs, Copilot Studio executes actions and processes requests, orchestrating the necessary operations to fulfill user needs.
  • Response Management: It ensures that correct responses are generated and relayed back to the user through the Copilot chat panel, facilitating smooth and effective communication.

In addition to managing interactions within the application, Microsoft Copilot Studio also handles the execution of plugins, capabilities, and skills. It may also engage with external sources and data repositories, such as Dataverse, to access information or run AI models. This communication is orchestrated seamlessly from within Copilot Studio, ensuring that relevant data and responses are obtained and delivered to the user in the chat panel.

Plugins

When we use the term plugins, when we are talking about Copilot Studio, our primary mechanism for adding capabilities to our Copilot is by adding plugins in Microsoft Copilot Studio. That’s the central orchestration. As we add capabilities, as we teach Copilot how to do new things, we are adding plugins into Copilot Studio that understand how to do those things.

A plugin, just by definition, is a reusable piece of code that can perform a specific task or functionality. So when we think about plugins, we are thinking about things that we want Copilot to be able to do. We would add a plugin specific to those capabilities that understand how to perform that task and send that data back to the user in the natural language.

So if we are answering natural language queries, executing workflows, executing some other action, connecting to data, providing guidance, or any of these functions that we want Copilot to be able to do – we add a plugin in Copilot Studio that can perform that action and understand the intent of the user as they enter a prompt.