{"id":15211,"date":"2025-02-11T18:03:36","date_gmt":"2025-02-11T16:03:36","guid":{"rendered":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/?p=15211"},"modified":"2025-02-12T14:37:26","modified_gmt":"2025-02-12T12:37:26","slug":"meet-milton-proeksperts-ai-tool","status":"publish","type":"post","link":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/blog\/proekspert-news\/meet-milton-proeksperts-ai-tool\/","title":{"rendered":"Meet Milton: Proekspert\u2019s AI tool"},"content":{"rendered":"\n<p class=\"article-lead\"> In today\u2019s world of AI, ready-made tools like ChatGPT have taken over workspaces. But as effective as they are, they often fail to meet the strict privacy and data security needs of businesses like ours. That&#8217;s why we decided to create Milton\u2014a custom AI tool designed specifically for our work environment.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1600\" height=\"840\" data-src=\"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton.jpg\" alt=\"\" class=\"wp-image-15218 lazyload\" data-srcset=\"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton.jpg 1600w, https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton-300x158.jpg 300w, https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton-768x403.jpg 768w, https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton-1536x806.jpg 1536w, https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-content\/uploads\/2025\/02\/Blog-Milton-1200x630.jpg 1200w\" data-sizes=\"(max-width: 1600px) 100vw, 1600px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1600px; --smush-placeholder-aspect-ratio: 1600\/840;\" \/><\/figure>\n\n\n\n<p>Milton was built to be secure, efficient, and tailored to our needs, allowing us to enjoy the benefits of AI while meeting our strict customer agreements. But building Milton wasn\u2019t without its challenges or creativity.&nbsp;<\/p>\n\n\n\n<p>To better understand Milton&#8217;s creation, we sat down with the key minds behind its development: Raido Lepp, IoT-Cloud Integration and Applications Delivery Lead, and Kristjan Pille, Software Engineer.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">The inspiration behind Milton<\/h2>\n\n\n\n<p><strong>Tell us about the initial idea and inspiration behind creating Milton<\/strong><\/p>\n\n\n\n<p>\u201d<strong>RL: <\/strong>&#8220;My feeling at that time was as follows: ChatGPT suddenly appeared and captured everyone&#8217;s attention. However, it came with significant criticism\u2014primarily due to its data management issues, which didn\u2019t align with our customer agreements. And rightly so\u2014the risks of data leakage and uncontrolled use were too high.<\/p>\n\n\n\n<p>Still, it was clear that AI was here to stay, and trying to ignore it or block its use would have been both foolish and counterproductive. Somewhere along the way, Kristjan discovered Azure AI in its beta stage, combined with open-source web solutions. From there, it became a passion project for Kristjan. With a small, selected group, we quickly began using it internally.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>Using ChatGPT for coding made me think how great it would be to have our own work-friendly chatbot. Privacy concerns with existing tools led me to Raido Lepp, and that&#8217;s when I said, \u201cHey, what if\u2026,\u201d but in the Estonian language of course!\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Milton\u2019s evolution over the years<\/h2>\n\n\n\n<p><strong>How long did it take you to build Milton?<\/strong><\/p>\n\n\n\n<p>\u201d<strong>RL: <\/strong>Back in 2016, we toyed with a Slack bot called Milton Tormi Kana, employing a GitHub machine learning algorithm based on neural networks. It trained for about two weeks on powerful hardware, producing amusingly sporadic results. T\u00f5nu Jaansoo treated neural networks as a hobby, and I facilitated its integration into Slack. Though modern Milton shares the name, the 2016 project didn&#8217;t directly influence today&#8217;s version, but the underlying concept continues to inspire.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>While Milton&#8217;s name has been around for years, its origins warrant a separate blog post\u2014a story best told by Raido, Milton&#8217;s godfather. The chatbot has evolved significantly over time, and I&#8217;ve merely been part of its ongoing journey. I hope future contributors will continue to elevate Milton to new heights.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Goals and the development process<\/h2>\n\n\n\n<p><strong>What were Milton&#8217;s main goals, and how was it developed?<\/strong><\/p>\n\n\n\n<p>\u201d<strong>RL: <\/strong>The main goal was simple\u2014have fun and see what happens. At the same time, the potential need for such a tool was evident from the start. I didn\u2019t personally contribute much. Kristjan likely spent a few weekends bringing Milton to life.\u201d<br><br>\u201d<strong>KP: <\/strong>The focus was to get Milton up and running quickly and efficiently, using open-source solutions wherever possible. The actual development was minimal\u2014just enough to securely handle sensitive workplace data.\u201d<\/p>\n\n\n\n<p><strong>What programming languages and technologies were used?<\/strong><\/p>\n\n\n\n<p>\u201d<strong>RL: <\/strong>.NET and Azure ecosystem knowledge formed the foundation.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>We utilized TypeScript, Bicep, and React, hosted on various Azure services. Together, these made Milton efficient and scalable.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Challenges<\/h2>\n\n\n\n<p><strong>What were the biggest challenges you faced during the development?<\/strong><\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>One of the biggest challenges was fixing bugs in how conversations were displayed, which took far more effort than expected. Setting up authorization for Milton was also far from enjoyable.\u201d<\/p>\n\n\n\n<p><strong>Can you share any interesting or unexpected problems you faced and how you solved them?<\/strong><\/p>\n\n\n\n<p>\u201d<strong>RL: <\/strong>There weren\u2019t major issues during development, but launching Milton brought its own challenges. We had to consider how to communicate its introduction\u2014both internally and with clients\u2014as well as perform some cost predictions to estimate monthly expenses.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>There were some strange bugs, as I mentioned earlier, though I don\u2019t recall the details anymore.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Ensuring reliability<\/h2>\n\n\n\n<p><strong>How do you ensure that Milton provides accurate and relevant responses to users?<\/strong><strong><br><\/strong><strong><br><\/strong>\u201d<strong>RL: <\/strong>Pure magic!\u201d<strong><br><\/strong><strong><br><\/strong>\u201d<strong>KP: <\/strong>Milton uses the Azure OpenAI ChatGPT model, which comes with various adjustable parameters like temperature, Top P, and frequency penalty. I experimented with these settings and calibrated them to what seemed the most promising configuration for Milton.\u201d<\/p>\n\n\n\n<p><strong>What kind of testing and validation processes did you use to ensure Milton&#8217;s reliability?<br><br><\/strong>\u201d<strong>RL: <\/strong>At first, we tested in a narrower inner circle, then we expanded the test group until we released it to the entire company.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>Most of the testing and validation has happened\u2014and continues to happen\u2014through user feedback.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Language preference<\/h2>\n\n\n\n<p><strong>Does it matter which language Milton responds in? Is one language preferred?<\/strong><strong><br><\/strong><strong><br><\/strong>\u201d<strong>RL: <\/strong>It depends on the quality of the global input materials. Estonian seems to be well represented online, but naturally there\u2019s far more content available in English.\u201d<br><strong><br><\/strong>\u201d<strong>KP: <\/strong>Languages that are commonly used, such as English, Spanish, French, and German, work well. However, English is the preferred language since Azure Open AI ChatGPT\u2019s training data includes a vast amount of English content, leading to more detailed and accurate responses in English.\u201d<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Updates and the future<\/h2>\n\n\n\n<p><strong>Do you need to update Milton regularly, and are there any upcoming features?<\/strong><strong><br><\/strong><strong><br><\/strong>\u201d<strong>RL: <\/strong>Regular updates of dependencies and upgrades to the solution and models are necessary.\u201d<br><strong><br><\/strong>\u201d<strong>KP: <\/strong>Occasionally, the Azure Open AI ChatGPT model is updated as OpenAI releases new versions. Otherwise, the solution requires little to no maintenance.\u201d<br><br>\u201d<strong>RL: <\/strong>MS Teams integration initially seemed interesting, but it doesn\u2019t offer the same flexibility as the web solution. It would be amazing to enable AI-powered searches through personal data sources via Milton. However, AI is becoming omnipresent anyway\u2014it\u2019s only a matter of time, perhaps a few years, before every service includes an \u201cAI agent,\u201d and the focus shifts to aggregating results at a higher level.\u201d<br><br>\u201d<strong>KP: <\/strong>In the near future, probably not. There are a couple of ideas I\u2019d like to see implemented, but hopefully next year brings more free time to work on them.\u201d<\/p>\n\n\n\n<p><strong>What features or capabilities are you most proud of?<\/strong><strong><br><\/strong><strong><br><\/strong>\u201d<strong>RL: <\/strong>I\u2019m proud that it\u2019s being used and that both I and everyone around me can be more skilled, efficient, and effective in their work because of it.\u201d<br><strong><br><\/strong>\u201d<strong>KP: <\/strong>Since the solution is open source, I can\u2019t take credit for any specific features in Milton.\u201d<\/p>\n\n\n\n<p><strong>How do you see the future of AI chatbots evolving?<\/strong><strong><br><\/strong><strong><br><\/strong>\u201d<strong>RL: <\/strong>I see chatbots evolving from current generic personas to more task-specific roles, with more integrations across platforms. We might also witness a new wave of innovations, such as Microsoft Office offering AI across all data sources with seamless integrations into Office, Jira, and Confluence ecosystems. AI agents could become deeply embedded into larger comprehensive solutions. Just as quickly as Milton appeared, it could just as quickly fade into history\u2014and that\u2019s likely how it will go.\u201d<\/p>\n\n\n\n<p>\u201d<strong>KP: <\/strong>In the near future, chatbots will gain more powerful language models and expanded functionalities. In the distant future, who knows? Perhaps people will opt for brain chips, integrating directly with LLMs or whatever advanced models exist at that time.\u201d<\/p>\n\n\n\n<p>That said, I believe the current reliance on large powerhouse LLMs is just the first iteration. The real breakthrough will come when someone figures out how to make LLMs run as efficiently as the human brain\u2014or somewhere in that ballpark. That\u2019s when true innovation begins.<\/p>\n\n\n\n<p><\/p>\n\n\n\n<p><strong>Milton is already impacting our day-to-day operations, and we\u2019re excited about its potential for growth. If this story has inspired you and you\u2019re interested in exploring custom AI solutions for your organization, don\u2019t hesitate to reach out! <\/strong><strong><br><\/strong><strong><br><\/strong><strong>Read more about Custom AI solutions here:<\/strong><\/p>\n\n\n<div class=\"vlp-link-container vlp-template-default\">\n\t\t\t<a href=\"https:\/\/proekspert.com\/custom-ai-solutions-for-your-business-needs\/\" class=\"vlp-link\" title=\"Custom AI solutions tailored for your business needs | Proekspert\" rel=\"nofollow\" target=\"_blank\"><\/a>\n\t\t\t<div class=\"vlp-link-image-container\">\n\t\t\t\t\t\t<div class=\"vlp-link-image\"><img decoding=\"async\" data-src=\"https:\/\/proekspert.com\/wp-content\/uploads\/2024\/02\/iec-62443-compliance-analysis-service-hero.jpg\" style=\"max-width: 1200px; max-height: 1200px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" \/><\/div>\n\t\t\t<\/div>\n\t\t<div class=\"vlp-link-text-container\">\n\t\t\t\t<div class=\"vlp-link-title\">\n\t\t\tCustom AI solutions tailored for your business needs | Proekspert\t\t<\/div>\n\t\t\t\t\t\t<div class=\"vlp-link-summary\">\n\t\t\t\t\t\tDiscover Proekspert\u2019s custom AI solutions designed for your unique business challenges. Optimize efficiency and decision-making &#8230;\n\t\t<\/div>\n\t\t\t\t\t\t<div class=\"vlp-post-link\">\n\t\t\t<a href=\"https:\/\/proekspert.com\/custom-ai-solutions-for-your-business-needs\/\" title=\"Custom AI solutions tailored for your business needs | Proekspert\" rel=\"nofollow\" target=\"_blank\">https:\/\/proekspert.com\/custom-ai-solutions-for-your-business-needs\/<\/a>\n\t\t<\/div>\n\t\t\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>How our AI tool came to shape our work<\/p>\n","protected":false},"author":5,"featured_media":15218,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"footnotes":""},"categories":[6],"tags":[],"class_list":["post-15211","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-proekspert-news"],"acf":[],"_links":{"self":[{"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/posts\/15211","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/users\/5"}],"replies":[{"embeddable":true,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/comments?post=15211"}],"version-history":[{"count":3,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/posts\/15211\/revisions"}],"predecessor-version":[{"id":15223,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/posts\/15211\/revisions\/15223"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/media\/15218"}],"wp:attachment":[{"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/media?parent=15211"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/categories?post=15211"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/clients.triloogia.ee\/proekspert\/wp-new\/wp-json\/wp\/v2\/tags?post=15211"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}