In today’s corporate world, streamlining and automating internal processes is more than a necessity; it’s imperative for staying competitive. At Perficient, we are always looking for innovative ways to improve our efficiency and meet constantly evolving demands. That’s why since 2018, we’ve been working on various versions of an internal chatbot, Scarlett, designed to facilitate numerous tasks within our organization.
From answering questions about HR (Human Resources), technology, and expediting various workflows, Scarlett has become an invaluable tool with proactive messages every morning, informing managers of relevant topics.
Currently, over 2,500 employees use Scarlett for their daily tasks, and we aim to reach 5,000 by the end of the year. In this article, we will explore how Generative Artificial Intelligence is taking Scarlett and Perficient to the next level in automation and efficiency.
What is Scarlett?
Scarlett is not just a chatbot; it’s a function ecosystem designed to simplify and speed up multiple facets of our work environment at Perficient. We use Azure Functions to handle proactive messages and a core developed in Python to process user messages and execute specific workflows. This makes Scarlett an extremely modular and independent tool.
Modularity and Flexibility
Each “intent” or function of the chatbot is a separate entity, allowing easy integration with various information sources. This includes databases and APIs, all without compromising data privacy. For example, letting a user know how many Paid Time Off (PTO) days they have left is simply creating a function that accesses the API, extracts the information for the user, and returns the text to respond with.
To address questions in natural language, we implement Elasticsearch where we store “tensors” (which allow us to encode text into numerical vectors for efficient comparison and analysis) of questions and answers. This enables fluid and accurate searching, regardless of the complexity of the words used by the user.
This robust and adaptable structure makes Scarlett a key piece in our digitalization and process optimization strategy.
Generative Artificial Intelligence in Scarlett
Generative Artificial Intelligence (Generative AI) has become one of the most exciting technologies now. But at Perficient, we take a balanced approach to integrating it into our Scarlett chatbot. Although Generative AI could, in theory, handle the entire interaction process, we have focused on applying it specifically at the start and end of each conversation.
Strategic Use of Generative AI
- Start of Interaction: We use generative language models, like LLM (Large Language Models), to convert non-relational data (e.g., natural language text or information from different non-homogeneous sources) into rational data that serves as input for our functions.
- Business Logic: After gathering and rationalizing the data, we rely on classic methods of logic or statistics for the actual processing and decision-making. This is crucial for ensuring transparency and traceability in our processes, especially when it comes to audits or problem identification.
- End of Interaction: The output from our business logic, in some cases, feeds back into an LLM model. This model generates natural language responses to explain or show the user the data or decisions in a conversational manner.
This trifecta of Generative AI, business logic, and generative models for final communication provides a balanced and transparent approach that meets our business needs without sacrificing user experience.
Integration with Scarlett: A Practical Example
Scarlett excels at connecting employees from different departments, fostering cross-departmental collaboration within the company. To illustrate how we integrate Generative AI with traditional business logic methods, let’s look at the example of “Cross-Employee Connector.”
- Start of Interaction: User asks Scarlett for someone who can clear up questions about setting up a web server on Windows. Generative AI interprets the request, transforms, generates, and extracts relevant keywords like “DevOps”, “IIS (Internet Information Services)” and “Windows”
- Business Logic: These keywords are searched in our internal resume database to find employees with the required skills. Time Zone and preferred language of the user are added, and the top 3 candidates are selected based on these skills.
- End of Interaction: Names and basic descriptions of these candidates are processed through an LLM model to generate a conversational response. Scarlett might say: “Sure, I think John could help you, or if you prefer you can also talk to Tom or Ann. Would you like me to schedule a brief meeting with John to discuss your needs?”
This hybrid approach allows Scarlett to offer highly customized solutions while adhering to transparent and auditable business logic methods. It’s a perfect blend of efficiency, customization, and transparency.
Integration with Chat Platforms and Security
In an era where privacy and security are paramount, at Perficient we take extra measures to ensure that Scarlett is not only efficient but also secure.
- User Permissions: By integrating Scarlett with (in our case) MS (Microsoft) Teams, each chatbot request is automatically associated with the permissions of the user who made the request. This ensures that access to information is restricted according to the company’s security policies.
- Modularity and Access Policies: Since each “intent” or module of Scarlett is independent, we can integrate different systems that have different access policies. This allows us to maintain a secure structure and adapt each function according to specific security needs.
This approach lets us have varying access policies and types of responses based on the user, their role, the area of the company, and even the country from which the request is made.
Scarlett, an Ally in Efficiency and Planning
Scarlett goes beyond being just a tool for executing tasks; it’s a true ally for every employee in our organization. This proactive approach to delivering information allows everyone to be more efficient and better prepared for challenges that may arise.
- Timely Information: Scarlett is programmed to send relevant information at critical moments. For example, if a team member has approved leave, Scarlett will send you a reminder message in the days leading up to and on the day itself, even noting how long they will be absent.
- Improved Planning: With timely information, each manager can better plan resources and tasks, optimizing team efficiency and reducing the risk of setbacks.
- Informed Decisions: The delivery of precise and timely information allows everyone in the organization to make more informed decisions, ultimately benefiting the entire company.
- Benefits for the End User: Scarlett also offers direct advantages for the end user. Employees can request certificates, documents, and get answers to their questions much more quickly, thus improving their work experience and satisfaction.
In summary, Scarlett is more than just a chatbot that automates tasks; it’s an intelligent extension of our team that helps maximize efficiency and preparedness across the entire organization. Moreover, the use of Generative Artificial Intelligence in our daily operations illustrates the power and flexibility of integrating cutting-edge technologies to deliver real, tangible benefits.
If you’re interested in learning more about how Scarlett and Generative Artificial Intelligence are transforming the way we work at Perficient, feel free to contact us. Together, we can discuss how these technologies could also benefit your organization.