French startup Emersio, which is developing an entirely new, innovative platform for producing financial forecasts for SMEs/small businesses, was in search of a solution that was capable of speeding up the running of their complex models and custom pipelines with parallelism and conditional logic.
On the UbiOps platform, with its easy-to-use pipeline functionality for models, Emersio was able to run their custom workflows containing various complex models much faster, compared to their original setup on their own infrastructure.
Emersio clients can now view financial calculations and forecasts on their dashboards within 15 to 30 minutes, instead of the original 6 to 8 hours. Emersio’s new solution will become available to customers three to four months sooner than if they had built the solution in-house.
In September 2023, Emersio launched an AI-driven platform that businesses could use to better forecast their financial development, run on the UbiOps platform. Co-founders Adrien Raynal (CEO) and Jean-Etienne Molle (COO) spoke about how UbiOps made their unique product possible as well as how it accelerated their introduction to the market.
Adrien Raynal and Jean-Etienne Molle are financial experts. The idea for their business came about when some friends of theirs wanted to open a bar and needed to create a business plan and a long-term budget. With this idea, the pair realized they could fill a gap in the market and they became entrepreneurs.
‘We create financial forecasts based on relevant accounting data from a business’ history. To do that, we built a SaaS platform, a management information system which owners and directors can use to manage, simulate and predict the finances of their small- and medium-sized businesses’ – Jean-Etienne.
A promising startup
Emersio became a promising startup, finding a home in Paris at France’s largest incubator. By applying advanced AI models on company data, Emersio enables businesses to predict and interpret their financial developments. Emersio’s platform generates practical information about financial metrics such as cash flows, profits and returns on investments. Clients can use this information to better inform their decisions in areas such as strategy, investments, new markets and products.
Emersio’s services are available to businesses via a subscription. The first wave of clients has already arrived, consisting mainly of entrepreneurs and accountancy firms.
A seamless transition
Emersio offers options such as financial reports, simulations and business scenario analysis . The results are displayed in an easy-to-read format on smart dashboards. Emersio uses the UbiOps platform to perform the calculations and run and manage the models.
Adrien and Jean-Etienne first came across UbiOps in the spring of 2023, during an AI conference in Cannes, France
Emersio developed their platform with just a small team: in addition to the two founders, one Emersio employee and two freelancers. That meant that there weren’t any software engineers available to build an entire system. Since their models were written in Python, they were easily uploaded to UbiOps, sidestepping the need for a DevOps team.
Shifting to the desired scale
Before Emersio began using UbiOps, their models had all been running on a standard PC, which was not a scalable solution. The UbiOps platform enabled Emersio to transform their setup into a fully live application which automatically scales up as user numbers increase.
Jean-Etienne: ‘There is a big difference between the SaaS platform that we manage and host ourselves, which is where clients are presented with the data on their dashboard, and the underlying UbiOps platform that runs the technology and performs the calculations.
‘We had a codebase that worked locally, which we created ourselves. But it took hours before a model was ready with the calculations. So that wasn’t really suitable for our clients, especially not when many users were using our platform at the same time.’
Structure and control
There was extensive communication between Emersio and UbiOps. ‘The Emersio team were familiar with Python and the domain, and they were very good in those areas,’ noted Kees van Bezouw, Product Specialist and Emersio’s primary contact at UbiOps. ‘We helped them by making sure that they didn’t have to worry about many software engineering aspects, and that everything ran reliably and scalably in the cloud.’
‘Thanks to UbiOps, our code has much more structure to it now,’ says Adrien Raynal. ‘It’s also a better structure for us. So it was nice to develop like that. It did help. We didn’t have to come up with everything ourselves. Kees was always there if I had any questions. I’d send him an email describing the problem I had run into, and he’d respond with the solution the next day. Then we could quickly continue working. UbiOps client support is really great.’
‘Thanks to UbiOps, we also have full control of the code architecture,’ Adrien Raynal continues. ‘Because now I know how I am meant to use the software. I know my code, I know the pipeline — I know how everything works. So if there’s a problem, I can solve it myself.’
The Emersio application requires a sizable pipeline due to a large number of algorithms and a large volume of data. UbiOps’ latest pipeline functionalities are used to their full potential, allowing parallelism — running many AI models simultaneously — to be applied in various ways. This results in calculations that require less time.
Kees: ‘for example, if you want to process a data set with five machine learning models, running them in parallel means they can run simultaneously, instead of sequentially. That’s much faster, of course.’
Adrien explains: ‘if a user uploads accounting data, we have to divide the data into clusters, as forecasts always need to be created for small clusters of data. This has to be done in parallel. Depending on the business, this can be anywhere from 50 to 200 clusters.
‘When we were still working with the code locally, we forecast each cluster sequentially. That’s why it took so long. For example, we can now send 50 clusters to the next stage and process them in parallel thanks to the pipeline parallelism functionality that UbiOps offers.’
Ultimately, a processing time of 6 to 8 hours was reduced to 15-30 minutes
It was important for Emersio that models be able to interact with other models in other pipelines and, in turn, affect them. Adrien and Jean-Etienne asked for this feature request to be expedited, and UbiOps promptly handled the task. Kees: ‘we wanted to work with that sooner, because we felt that it could also be useful for other clients. Then you could use one solution within a different one – using subpipelines. That option to merge multiple pipelines didn’t exist yet. Just as we’d thought, the combination is already being used by other UbiOps clients.’
Emersio works with different categories of data: revenues, supplies, expenses, payroll etc. and each category needs a different processing.
Thanks to UbiOps they created a separate subpipeline for each category – and now they send each cluster in the right subpipeline according to its category. No additional setup is needed.
Emersio uses many of the options offered by UbiOps. ‘For example, they also use many of the API functionalities in their front-end coding too,’ says Kees. ‘That allows them to obtain and send runtime status information to their end users.’
Three to four months of time saved
A successful beta test was conducted over the summer of 2023. Jean-Etienne: ‘we wanted to be certain that our platform was truly ready for clients at launch, meaning no bugs at all. During the summer, we extensively tested the solutions against our content. The businesses that we’d asked to test it out told us which functions they would need from the start and which ones we could put off for a bit. That was very useful for us. We’re off to a good start.’
He estimates that they can launch three to four months sooner thanks to the use of UbiOps. The MLOps functionalities of the UbiOps platform, the increased calculation speed and the parallel processing capabilities of pipelines made the difference.