Setting Up Multimodal Pipelines and Vector Databases for Production Scale
As data complexity continues to rise, enterprises find it crucial to establish multimodal pipelines and manage vector databases at a production scale. In a recent discussion with AIM, Chetan Dixit, Client Partner, Cloud and Data Tech at Fractal, delved into the essential processes, the hurdles encountered, and the strategies to optimize performance and scalability. The advent of LLMs and generative AI has opened new possibilities. Earlier, processing different data types—video, audio, and text—was done in silos. “There used to be video data processing, audio data processing, and document processing,” Chetan noted. However, with the rise of LLMs, organisations can now generate insights by combining multiple data modalities. This is where the concept of multimodal pipelines comes into play. “A multimodal pipeline allows you to process different types of data, such as video and audio, and generate vector embeddings from each,” explained Chetan. These embeddings are then stored in a vector database. For instance, in a contact centre scenario, a customer might first engage with a support representative via chat and later follow up with a call. “You are processing different forms of data (audio from the call and chat transcripts) and generating vector embeddings, which are stored in the database,” he elaborated. By unifying different data streams, these pipelines ensure that the customer’s full history is available to the support agent, regardless of the communication medium. “So, when an agent talks to the customer, they have the full context, whether it is audio, video, or chat—all accessible at one go,” he said. The Challenges in Setting Up Multimodal Pipelines Chetan acknowledged that setting up multimodal pipelines comes with its own set of challenges. One significant hurdle is managing multiple data formats. Enterprises need multiple models to process different data types. For example, video and audio data each require specialised models, whether out-of-the-box or custom-built deep learning models. Performance is another key concern. “How performant your model is in processing that data is critical,” said Chetan. Furthermore, once the data is processed, it must be brought into a “standard normal form” before storing it in the database. This requires creating a unified data model to accommodate all data types. Chetan also pointed out that the process doesn’t end after the initial setup. The models need to be continuously monitored and tuned because the data changes over time. This requires a continuous cycle of optimisation, unlike typical data engineering pipelines. Vector Database Complexity Another layer of complexity arises with vector databases, which store the vector embeddings generated by these models. According to Chetan, vector databases are often distributed, which can lead to issues with data consistency. “In most vector databases, the data is eventually consistent, which means there could be a delay in the data being written from cache to disk,” he said. Maintaining data consistency is crucial for applications that rely on real-time information, such as customer service platforms. “You need to build integrity checks into your pipelines to ensure that data is being processed consistently across all modalities,” he emphasised. This consistency is particularly important when handling tasks such as generating vector embeddings, as discrepancies can cause significant issues in downstream applications. Handling Latency and Bottlenecks Latency is one of the biggest challenges when working with multimodal pipelines. “Latency can be a big factor, especially if you’re dealing with near real-time applications,” said Chetan. He recommends addressing this through a combination of model tuning, infrastructure optimisation, and data chunking. “In a 10-minute video, you should chunk it into smaller segments and process them in parallel,” Dixit suggested, which helps reduce latency. He also advises using GPUs to accelerate compute-intensive tasks and parallelising the data processing to ensure smoother operations. Handling real-time data adds an extra layer of complexity. In real-time applications, there is no room for errors or bottlenecks. “Your pipelines must have fault tolerance built in,” he noted, especially when dealing with real-time customer interactions. Failover mechanisms, such as exponential backoffs, can help mitigate these risks by retrying API calls that fail during the process. Optimising for Resource Allocation and Cost Efficiency As organisations move from proof-of-concept (POC) to production environments, the cost and infrastructure requirements scale significantly. Dixit recommends adopting a phased approach when deploying multimodal pipelines for production-scale generative AI applications. “Instead of exposing the app to 5,000 users at one go, start with 1,000 users and scale up gradually,” he advised. This approach allows companies to focus on optimising the application without overburdening their infrastructure. A critical part of this process is understanding the infrastructure requirements of deep learning models and vector databases. Enterprises need to plan for how much workload your deep learning models can handle and then ensure your vector database can scale horizontally based on that workload. Monitoring and Observability According to Chetan, monitoring and observability are the most important factors in ensuring smooth operations, as they allow for proactive issue detection and resolution. Chetan emphasised that it’s vital for businesses to catch problems before end-users notice them. “Your end-user should not be the one telling you that your application is broken,” he noted. Monitoring systems help identify bottlenecks and failures in the pipeline by tracking key metrics. This proactive approach enables organisations to fix issues before they impact user experience. To achieve this, Chetan outlines a three-step process: logging, building metrics, and setting up monitoring tools. “You have to log the information first, then build metrics for both infrastructure and functionality,” he explained. By tracking these metrics, organisations can receive alerts when certain thresholds, such as high CPU or memory usage, or a spike in errors, are reached. Effective logging and monitoring also provide traceability, making it easier for site reliability engineers and support teams to diagnose and fix issues. Traceability allows engineers to locate where failures occurred and what caused them, reducing the overall time to fix them. Without proper logging and observability, organizations risk wasting significant time debugging issues, especially in real-time data processing. A robust monitoring framework is essential for ensuring optimal performance and quick recovery from any issues in production-scale applications. As Chetan aptly put it, “It’s all about continuously tuning and optimizing your models, pipelines, and infrastructure to meet the demands of real-world applications.” This proactive approach is key to maintaining efficiency and resilience in today’s data-driven landscape.
One significant hurdle is managing multiple data formats.
The advent of LLMs and gen AI has opened new possibilities. Earlier, processing different data types was done in silos.
["AI (Artificial Intelligence)"]
["Go", "API", "AI", "Scala", "vector databases", "Aim", "deep learning", "data engineering", "generative AI", "R", "AI (Artificial Intelligence)"]
["AI", "deep learning", "generative AI", "Aim", "vector databases", "R", "Go", "Scala", "API", "data engineering"]
Mohit writes about AI in simple, explainable, and often funny words. He's especially passionate about chatting with those building AI for Bharat, with the occasional detour into AGI.