<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>mlops on AI Logs</title><link>https://drafts.ragv.in/tags/mlops/</link><description>Recent content in mlops on AI Logs</description><generator>Hugo</generator><language>en-us</language><copyright>2025 Raghava Dhanya · License</copyright><lastBuildDate>Wed, 21 Feb 2024 12:25:03 +0530</lastBuildDate><atom:link href="https://drafts.ragv.in/tags/mlops/index.xml" rel="self" type="application/rss+xml"/><item><title>A Tale of a Suicidal Container</title><link>https://drafts.ragv.in/posts/a-tale-of-suicidal-container/</link><pubDate>Wed, 21 Feb 2024 12:25:03 +0530</pubDate><guid>https://drafts.ragv.in/posts/a-tale-of-suicidal-container/</guid><description>&lt;p&gt;One fine day, I sat down to optimize the size of a Docker image. Like many times before, I opted for &lt;a href="https://github.com/GoogleContainerTools/distroless"&gt;distroless&lt;/a&gt; images as my base, a choice I had made countless times before without a hitch.&lt;/p&gt;
&lt;p&gt;Distroless images, for the uninitiated, are peak minimalism, containing only the essential libraries and binaries required to run the application. Not only do they trim the fat off the image size, but they also mitigate the risk of &lt;a href="https://www.cve.org/About/Overview"&gt;CVEs&lt;/a&gt; lurking within.&lt;/p&gt;</description></item><item><title>Designing Machine Learning Systems for High Velocity Trading</title><link>https://drafts.ragv.in/posts/high-velocity-trading-ml-systems/</link><pubDate>Tue, 20 Jun 2023 21:31:48 +0530</pubDate><guid>https://drafts.ragv.in/posts/high-velocity-trading-ml-systems/</guid><description>&lt;p&gt;As one of my works at &lt;a href="https://www.mu-sigma.com/labs"&gt;Mu Sigma Labs&lt;/a&gt;, I was part of a research project on the High Velocity Time Series on early 2019. One of the goals was to create a high velocity trading app using Pair Trading.&lt;/p&gt;
&lt;h2 id="the-requisite-terms"&gt;The Requisite terms&lt;/h2&gt;
&lt;h3 id="long-and-short-trades"&gt;Long and Short trades&lt;/h3&gt;
&lt;p&gt;Long trades are buying a &lt;a href="https://en.wikipedia.org/wiki/Security_(finance)"&gt;security&lt;/a&gt;. Short is selling a security even when you don&amp;rsquo;t own it. It generally means that you are borrowing someone&amp;rsquo;s securities and selling them in the hopes of buying it back for lower cost later and returning it and hence, making a profit. You don&amp;rsquo;t really have to do it though; exchanges take care of it and let you sell when you don&amp;rsquo;t own a security.&lt;/p&gt;</description></item><item><title>Python with a Dash of C++: Optimizing Recommendation Serving</title><link>https://drafts.ragv.in/posts/python-with-a-dash-of-cpp-optimizing/</link><pubDate>Thu, 30 Jun 2022 16:54:09 +0530</pubDate><guid>https://drafts.ragv.in/posts/python-with-a-dash-of-cpp-optimizing/</guid><description>&lt;p&gt;Serving recommendation to 200+ millions of users for thousands of candidates with less than 100ms is &lt;strong&gt;hard&lt;/strong&gt; but doing that in Python is &lt;strong&gt;harder&lt;/strong&gt;. Why not add some compiled spice to it to make it faster? Using Cython you can add C++ components to your Python code. Isn&amp;rsquo;t all machine learning and statistics libraries already written in C and Cython to make them super fast? Yes. But there&amp;rsquo;s still some optimizations left on the table. I&amp;rsquo;ll go through how I optimized some of our sampling methods in the recommendation system using C++.&lt;/p&gt;</description></item><item><title>Go faster with Go: Golang for ML Serving</title><link>https://drafts.ragv.in/posts/golang-for-machine-learning-serving/</link><pubDate>Mon, 20 Jun 2022 21:36:00 +0530</pubDate><guid>https://drafts.ragv.in/posts/golang-for-machine-learning-serving/</guid><description>&lt;p&gt;So the ask is to do &lt;strong&gt;3 Million Predictions per second&lt;/strong&gt; with as little resources as possible. Thankfully its one of the simpler model of Recommendation systems, Multi Armed Bandit(MAB).
Multi Armed bandit usually involves sampling from distribution like &lt;a href="https://en.wikipedia.org/wiki/Beta_distribution"&gt;Beta Distribution&lt;/a&gt;. That&amp;rsquo;s where the most time is spent. If we can concurrently do as many sampling as we can, we&amp;rsquo;ll use the resources well. Maximizing Resource utilization is the key to reducing overall resources needed for the model.&lt;/p&gt;</description></item><item><title>Showcase: BPMN Pipeline Platform</title><link>https://drafts.ragv.in/posts/bpmn-pipeline-platform/</link><pubDate>Mon, 20 Jun 2022 20:54:07 +0530</pubDate><guid>https://drafts.ragv.in/posts/bpmn-pipeline-platform/</guid><description>&lt;p&gt;&lt;a href="https://en.wikipedia.org/wiki/Business_Process_Model_and_Notation"&gt;Business Process Model and Notation (BPMN)&lt;/a&gt; is a graphical notation standard for business processes. Think of it as a flowchart for business processes. It is widely used in the industry for modeling business processes.
Now, why would you use BPMN for automating / pipelining? We don&amp;rsquo;t use &lt;a href="https://en.wikipedia.org/wiki/Unified_Modeling_Language"&gt;UML&lt;/a&gt; for writing software right? Yes, but BPMN&amp;rsquo;s adoption for automation and pipelining stemmed from its ability to cater to both technical and non-technical users. Whether orchestrating simple data flows or complex machine learning pipelines, BPMN empowered users to architect automated workflows with ease and flexibility.
Moreover, platforms&amp;rsquo;s support for human-in-the-loop processes addressed a critical gap in conventional pipelining systems, offering robust mechanisms for human validation and approval—a necessity in the realm of machine learning and MLOps where human intervention is often required.&lt;/p&gt;</description></item></channel></rss>