Search

Clear filter
Announcement
Anastasia Dyubaylo · Jul 1, 2022

[Video] Using .NET to Connect to InterSystems IRIS

Hey Developers, See how you can develop a .NET application and connect to InterSystems IRIS® data platform using one or more APIs: ⏯ Using NET to Connect to InterSystems IRIS Subscribe to the InterSystems Developers YouTube channel and stay tuned!
Announcement
Anastasia Dyubaylo · Jul 17, 2022

[Video] Using Java to Connect to InterSystems IRIS

Hey Developers, Develop a Java application that connects to InterSystems IRIS® data platform relationally, natively, or with objects: ⏯ Using Java to Connect to InterSystems IRIS Enjoy watching on the InterSystems Developers YouTube channel and stay tuned!
Announcement
Anastasia Dyubaylo · Mar 23, 2022

[Video] Flexible Data Modeling with InterSystems Globals

Hey Coommunity, Learn about InterSystems globals, the data model native to InterSystems IRIS® data platform that makes data storing efficient and provides the flexibility your data needs: ⏯ Flexible Data Modeling with InterSystems Globals Don't miss the latest videos for InterSystems developers on DC YouTube!
Announcement
Anastasia Dyubaylo · Aug 20, 2022

[Video] Transforming Healthcare Messages in InterSystems Integrations

Hey Community, In this video, you will learn how to use the Data Transformation Wizard in the Management Portal of InterSystems IRIS® data platform to convert messages to other formats: ⏯ Transforming Healthcare Messages in InterSystems Integrations Subscribe to the InterSystems Developers YouTube channel and stay tuned!
Announcement
Bob Kuszewski · Mar 15, 2022

InterSystems Kubernetes Operator 3.3 is published

The InterSystems Kubernetes Operation (IKO) version 3.3 is now available via the WRC download page and the InterSystems Container Registry. IKO simplifies working with InterSystems IRIS or InterSystems IRIS for Health in Kubernetes by providing an easy-to-use irisCluster resource definition. See the documentation for a full list of features, including easy sharding, mirroring, and configuration of ECP. IKO 3.3 Highlights: Support for 2021.2 and 2022.1 editions of InterSystems IRIS & IRIS for Health Support for Kuberentes 1.21 Deploy common System Alerting and Monitoring (SAM) configurations as part of your irisCluster InterSystems API Manager (IAM) can now also be deployed and managed as part of the irisCluster Automatic tagging of mirror pair active side, so a service can always point to the active mirror member.
Announcement
Anastasia Dyubaylo · Jun 15, 2022

InterSystems Tech Article Contest: Python Edition

Hello and welcome to the next InterSystems technical article writing competition! 🐍 InterSystems Tech Article Contest: Python Edition 🐍 Write an article on any topic related to the usage of Python with InterSystems technologies from June 20 to July 20 July 31– extended! 🎁 Prizes for everyone: A special prize pack for each author who takes part in the competition! 🏆 Main Prizes: AirPods Max; Apple Watch SE; Apple HomePod mini / Apple Pencil Prizes 1. Everyone is a winner in InterSystems Tech Article Contest! Any user who writes an article during the competition period will receive special prizes: 🎁 InterSystems Branded Apple AirTag 🎁 InterSystems Branded Rubik's 9-Panel Cube 2. Expert Awards – articles will be judged by InterSystems experts: 🥇 1st place: Apple AirPods Max 🥈 2nd place: Apple Watch SE 🥉 3rd place: Apple HomePod mini / Apple Pencil Or as an alternative: Alternatively, any winner can choose a prize from a lower prize tier than his own. 3. Developer Community Award – article with the most likes. The winner will have an option to choose one of the following prizes: 🎁 Apple Pencil 🎁 Apple HomePod mini Note: The author can only be awarded once per category (in total the author will win 2 prizes: one for Expert and one for the Community) In the event of a tie, the number of votes of the experts for the tied articles will be considered as a tie-breaking criterion. Who can participate? Any Developer Community member, except for InterSystems employees. Create an account! Contest period 📝 June 20 - July 20: Publication of articles and voting time. Publish an article(s) throughout this period. DC members can vote for published articles with Likes – votes in the Community award. Note: The sooner you publish an article(s), the more time you will have to collect both Experts & Community votes. What are the requirements? ❗️ Any article written during the contest period and satisfying the requirements below will automatically enter the competition: The article must be related to the usage of Python with InterSystems technologies (Embedded Python or Python API). The article must be in English. The article must be 100% new (it can be a continuation of an existing article). The article cannot be a translation of an article already published in other communities. The article must contain DC tag(s): Python or Embedded Python tags (depending on your topic). Article size: 750 words (links and code are not counted towards the word limit). Multiple entries from the same author are allowed. Articles on the same topic from different authors are allowed. 🎯 [NEW] EXTRA BONUSES This time we decided to add additional bonuses that will help you to win the prize! Please welcome: Bonus Nominal Details Topic bonus 5 If your article is on the topic from the list of the proposed topics (listed below), you will receive a bonus of 5 Expert votes (vs 1st place selected by an Expert = 3 votes). Video bonus 3 Format of the presentation of the content of the article: besides publishing the article make an explanatory video. Discussion bonus 1 Article with the most useful discussion, as decided by InterSystems experts. Only 1 article will get this bonus. Translation bonus 1 Publish a translation of your article on any of the regional Communities. Learn more. Note: Only 1 vote per article. New member bonus 3 If you haven't participated in the previous contests, your article will get 3 Expert votes. Proposed topics Here's a list of proposed topics that will give your article extra bonuses for topic: # Topic Details 1 Useful Python libraries for InterSystems Data Platforms Describe which libraries you have used to produce applications on InterSystems platforms. 2 Embedded Python from Interoperability Explore how Embedded Python can be leveraged from an Interoperability production. 3 Embedded Python: Translating by Language Constructs While we aim for seamless Embedded Python integration there are some tips & tricks to smooth things over. Underscore methods, dictionaries, lists, and others. What are the best ways of calling Python features from ObjectScript? 4 PEX for Python Examples Describe a Python-centric approach to leveraging the power of InterSystems IRIS. Data models in Native Python architecting. 5 Native API for Python Examples Describe which libraries you have used to produce applications on InterSystems platforms. Note: Articles on the same topic from different authors are allowed. ➡️ Join InterSystems Discord to chat about the rules, topics & bonuses. So, It's time to show your writing skills! Good luck ✨ Important note: Prizes cannot be delivered to residents of Crimea, Russia, Belarus, Iran, North Korea, Syria, or other US embargoed countries. I joined with an article and a video.Might be an inspiration for other writers. The first article has been added to the competition: Working with Globals in Embedded Python by @Robert.Cemper1003 Check it out :) Mr. Cemper is always an inspiration for us Hey everyone, We've prepared a quick guide on how to make a translation on DC: 👉 How to translate and publish post on any regional Developer Community It's time to practice another language! Post a translation of your article to get our Translation bonus 😉 Hey Developers! Check out one more article that has been added to the contest! Accessing Management Portal System Dashboard information and display cache table data on the web page with the help of jquery datatable by using embedded python by @Muhammad.Waseem What great work by Muhammad! Hi Devs! Half of the registration period has passed! Do not miss your opportunity to participate and publish your excellent article! Have a great weekend! Hello,i've added an article for using embedded python with ASB (Azure service bus) https://community.intersystems.com/post/iris-embedded-python-azure-service-bus-asb-use-case Hey Community, You asked – we did it! ❗️ We extend the contest period until July 31 More time to write your article! Don't miss your chance to win 😉 Devs! Two more articles have been uploaded to the contest! IRIS Embedded Python with Azure Service Bus (ASB) use case by @Yaron.Munz8173 Time zone conversion utility using embedded python by @Veerarajan.Karunanithi9493 Don't forget about the new Extra Bonuses that can help you get more expert points! Check it in the post! Developers! Another article has been added to the contest! Create Stored Procedures using Embedded Python by @Yuri.Gomes Thanks! Python inside IRIS works like a charm! Developers! A new article has been written for the contest: Getting known with Django by @Dmitry.Maslennikov 🚨 Last week of the 3rd Tech Article Contest 🚨 You can still join at >> community.intersystems.com/contests/current << And don't forget to support our participants with your likes = votes in the Community nomination ;) Hi All, One more article in the Contest! Getting known with Django part 2 by @Dmitry.Maslennikov Great! Hey Devs! Another article has joined the Contest😉 Introduction to Web Scraping with Python - Let’s Extract python job’s by @Rizmaan.Marikar2583 Support our members with your votes! There are only a few days left before the end of the contest. Your vote is very important! Thanks to all! Community! @Renato.Banzai have joined the competition! Check out his article:Dealing with large content in Python Native API Devs, only three days left to the end of the contest! Don't miss your chance to take participation!
Announcement
Anastasia Dyubaylo · Jul 18, 2022

InterSystems Full Stack Contest 2022: Winners!

Hey Community, We are super excited to announce the winners of the InterSystems Full Stack Contest 2022! Thank you all for participating in our coding competition! And the winners are... Experts Nomination 🥇 1st place and $4,000 go to the Kozo app by @Sean.Connelly 🥈 2nd place and $2,000 go to the iris-climate-change app by @Muhammad.Waseem 🥉 3rd place and $1,000 go to the Carbon Footprint Counter app by @Yuri.Gomes More winners: 🏅 $100 go to the interoperability-manager app by @Oliver.Wilms 🏅 $100 go to the Arctic sea ice viewer app by @Oleh.Dontsov 🏅 $100 go to the iris-for-money app by @Oliver.Wilms Community Nomination 🥇 1st place and $1,000 go to the Kozo app by @Sean.Connelly 🥈 2nd place and $750 go to the iris-climate-change app by @Muhammad.Waseem 🥉 3rd place and $500 go to the Carbon Footprint Counter app by @Yuri.Gomes Our BIG congrats to all the participants and winners! See you in the next contest. 😎 Hi Community and Experts, Many thanks for all the votes!I have big plans for Kozo Pages, lots of work still do to, as well as integration with CloudStudio. Not sure I will have time for any more competitions for some while :) I also have an exciting second part to the Kozo Pages solution that I have not revealed yet, so lots more to come! Thanks to the experts and community for your votes. Congratulations to all 👏 and thanks to DC
Announcement
Anastasia Dyubaylo · Feb 1, 2022

InterSystems Python Contest Kick-off Webinar

Hi Community, We are pleased to invite all the developers to the upcoming InterSystems Python Contest Kick-off Webinar! The topic of this webinar is dedicated to the Python contest. In this webinar, we’ll present two templates to start working with Embedded Python : What is Embedded Python and Jupyter; Embedded Python with Interoperability (PEX hacked to use Embedded Python). As always, our experts will answer the questions on how to develop, build, and deploy Python solutions using InterSystems IRIS. Date & Time: Monday, February 7 – 12:00 PM EDT Speakers:🗣 @Guillaume.Rongier7183, InterSystems Sales Engineer 🗣 @Robert.Kuszewski, InterSystems Product Manager🗣 @Evgeny.Shvarov, InterSystems Developer Ecosystem Manager We will be happy to talk to you at our webinar in Zoom. ✅ Register for the kick-off today! Hey Developers, The recording of this webinar is available on InterSystems Developers YouTube! Please welcome: ⏯ InterSystems Python Contest Kick-off Webinar
Announcement
Anastasia Dyubaylo · Jan 21, 2022

InterSystems Developer Community Annual Survey 2021

Hey Developers, Thank you so much for being with InterSystems Developer Community for yet another year! Day by day our team is trying to make it better and more useful for InterSystems developers. More than 10K+ members are already registered in our Community! We'd like to know how helpful the Developer Community is for you today. Please take a few questions to let us know what do you think and what could be improved. 👉🏼 InterSystems Developer Community Annual Survey 2021 👈🏼 Note: The survey will take less than 5 minutes to complete. Please take part in our survey. Any of your feedback is also welcome in the comments on this post. Enjoy! 😉 Hey Developers, Please tell us what you think about the Developer Community! Your thoughts and ideas are very important for us. 🙏 Dear DC Members, We're waiting for your feedback! Please take part in our annual 5-min survey: https://www.surveymonkey.co.uk/r/PYHC3GD Hey guys, If you haven't taken our survey yet, now is the time! We definitely need your feedback on our Dev Community: 👉 https://www.surveymonkey.co.uk/r/PYHC3GD Enjoy! Only a few days left! Hurry up to tell us your thoughts and ideas. Let's make our Community better together! 👉 https://www.surveymonkey.co.uk/r/PYHC3GD
Announcement
Anastasia Dyubaylo · Mar 18, 2022

InterSystems Globals Contest Kick-off Webinar

Hi Community, We are pleased to invite all the developers to the upcoming InterSystems Globals Contest Kick-off Webinar! The topic of this webinar is dedicated to the Globals contest. In this webinar, we’ll show you how to deal with Globals to implement different data models and sophisticated indexes. As always, our experts will answer the questions on how to develop, build, and deploy Globals solutions using InterSystems IRIS. Date & Time: Monday, March 21 – 11:00 AM EDT Speakers: 🗣 ​​​@Daniel.Kutac, Senior Sales Engineer🗣 @Joel.Solon, Senior Technical Trainer🗣 @Timothy.Leavitt, Development Manager 🗣 @Evgeny.Shvarov, InterSystems Developer Ecosystem Manager We will be happy to talk to you at our webinar in Zoom. ✅ Register for the kick-off today! ATTENTION: US Summer time (EDT) started already Sunday, 13 March Hey everyone, The kick-off will start in 10 minutes! Please join us in Zoom. Or enjoy watching the stream on YouTube: https://youtu.be/ffgPymJ7dBQ Hey Developers, The recording of this webinar is available on InterSystems Developers YouTube! Please welcome: ⏯ InterSystems Globals Contest Kick-off Webinar Big applause to our speakers! 👏🏼
Announcement
Olga Zavrazhnova · Feb 10, 2022

InterSystems FHIR Startup Incubator Launch 2022

We are thrilled to announce that we’ve launched the InterSystems 🔥 FHIR startup incubator in Prague - Caelestinus.We invite Health Tech startups to apply: to let your innovations speak FHIR, to consult and prove your idea with the leaders of Healthcare and IT! Why join? ✅ You’ll be able to introduce into your solution the FHIR cloud services from InterSystems - one of the world leaders in Health Tech! ✅ We partnered with the Institute for Clinical and Experimental Medicine, the largest transplant center in Europe, and the Faculty ofBiomedical Engineering of Czech Technical University in Prague where you’ll have a chance to implement your innovation ✅ You'll be able to get advice on your innovation from Jeff Fried, Regilo de Souza, Patrick Jamieson, M.D., Qi Li, Russell Leftwich MD FAMIA, Tomas Studenik, Johan Nordstrom, Martin Zubek, Jan Muzik, and other experts in information technology, entrepreneurship, and healthcare in Europe and the USA. See all mentor's bios here ✅ You’ll have the opportunity to present your innovations at InterSystems Global Summit in Seattle, June 2022!✅ We provide office space in Prague with a conference room for meetings. Address: Prague, Celetna 19 - stop by for a coffee! A joint team of CEE Hacks and InterSystems trackers will go through the incubation with you from March to November 2022. ❕We are waiting for your applications until the 20th of February. Apply today ❕ Questions? Ask below! This looks like a great opportunity for those in Eastern Europe!! I look forward to seeing the results coming out of this incubator program It's not only for Eastern and Central Europe, @Benjamin.Spead ! Any startup from any region is very welcome! The majority of activities will be online! Besides the Czech Republic, we already have applications from USA, UK, Netherlands, UAE, Ukraine and invite startups to apply! @Evgeny.Shvarov - really good to know, thank you for clarifying!
Announcement
Evgeny Shvarov · Feb 7, 2022

Technology Bonuses for InterSystems Python Contest 2022

Hi Developers! Here're the technology bonuses for the InterSystems Python Contest 2022 that will give you extra points in the voting: Embedded Python - 4 Python Native API - 3 Python Pex - 3 NoObjectScriptLine - 5 Questionnaire - 2 Docker container usage - 2 ZPM Package deployment - 2 Online Demo - 2 First Article on Developer Community - 2 Second Article On DC - 1 Video on YouTube - 3 See the details below. Embedded Python - 4 points Use Embedded Python in your application and collect 4 extra points. You'll need at least InterSystems IRIS 2021.2 for it. Python Native API - 3 points InterSystems IRIS introduces a Python Native API library that helps to interact with IRIS from python. Use it and collect 3 extra points for your application. Python Pex - 3 points InterSystems IRIS has Python Pex module that provides the option to develop InterSystems Interoperability productions from Python. Use it and collect 3 extra points for your application. It's OK also to use alternative python.pex wheel introduced by Guillaume Ronguier. NoObjectScriptLine - 5 points We are introducing several python APIs in this contest! And the bonus is yet another challenge: build your python solution with InterSystems IRIS and try to avoid using even a line of ObjectScript! IRIS Classes with only Embedded Python methods are OK though. Do it and collect 5 bonus points more! Questionnaire - 2 Share your feedback in this questionnaire and collect 2 extra points! Docker container usage - 2 points The application gets a 'Docker container' bonus if it uses InterSystems IRIS running in a docker container. Here is the simplest template to start from. ZPM Package deployment - 2 points You can collect the bonus if you build and publish the ZPM(InterSystems Package Manager) package for your Full-Stack application so it could be deployed with: zpm "install your-multi-model-solution" command on IRIS with ZPM client installed. ZPM client. Documentation. Online Demo of your project - 2 pointsCollect 2 more bonus points if you provision your project to the cloud as an online demo. You can do it on your own or you can use this template - here is an Example. Here is the video on how to use it. Article on Developer Community - 2 points Post an article on Developer Community that describes the features of your project and collect 2 points for the article. The Second article on Developer Community - 1 point You can collect one more bonus point for the second article or the translation regarding the application. The 3rd and more will not bring more points but the attention will all be yours. Video on YouTube - 3 points Make the Youtube video that demonstrates your product in action and collect 3 bonus points per each. The list of bonuses is subject to change. Stay tuned! Good luck in the competition!
Announcement
Michelle Spisak · Jul 20, 2021

InterSystems Online Learning never stops improving...

And now, you can help us! Take a 5-minute survey and tell us what YOU want to see in our learning resource names!
Article
Sergey Lukyanchikov · Jul 22, 2021

AI Robotization with InterSystems IRIS Data Platform

Fixing the terminology A robot is not expected to be either huge or humanoid, or even material (in disagreement with Wikipedia, although the latter softens the initial definition in one paragraph and admits virtual form of a robot). A robot is an automate, from an algorithmic viewpoint, an automate for autonomous (algorithmic) execution of concrete tasks. A light detector that triggers street lights at night is a robot. An email software separating e-mails into “external” and “internal” is also a robot. Artificial intelligence (in an applied and narrow sense, Wikipedia interpreting it differently again) is algorithms for extracting dependencies from data. It will not execute any tasks on its own, for that one would need to implement it as concrete analytic processes (input data, plus models, plus output data, plus process control). The analytic process acting as an “artificial intelligence carrier” can be launched by a human or by a robot. It can be stopped by either of the two as well. And managed by any of them too. Interaction with the environment Artificial intelligence needs data that is suitable for analysis. When an analyst starts developing an analytic process, the data for the model is prepared by the analyst himself. Usually, he builds a dataset that has enough volume and features to be used for model training and testing. Once the accuracy (and in less frequent cases, the “local stability” in time) of the obtained result becomes satisfactory, a typical analyst considers his work done. Is he right? In the reality, the work is only half-done. It remains to secure an “uninterrupted and efficient running” of the analytic process – and that is where our analyst may experience difficulties. The tools used for developing artificial intelligence and machine learning mechanisms, except for some most simple cases, are not suitable for efficient interaction with external environment. For example, we can (for a short period of time) use Python to read and transform sensor data from a production process. But Python will not be the right tool for overall monitoring of the situation and switching control among several production processes, scaling corresponding computation resources up and down, analyzing and treating all types of “exceptions” (e.g., non-availability of a data source, infrastructure failure, user interaction issues, etc.). To do that we will need a data management and integration platform. And the more loaded, the more variative will be our analytic process, the higher will be set the bar of our expectations from the platform’s integration and “DBMS” components. An analyst that is bred on scripting languages and traditional development environments to build models (including utilities like “notebooks”) will be facing the near impossibility to secure his analytical process an efficient productive implementation. Adaptability and adaptiveness Environment changeability manifests itself in different ways. In some cases, will change the essence and nature of the things managed by artificial intelligence (e.g., entry by an enterprise into new business areas, requirements imposed by national and international regulators, evolution of customer preferences relevant for the enterprise, etc.). In the other cases – the information signature of the data coming from external environment will become different (e.g., new equipment with new sensors, more performant data transmission channels, availability of new data “labeling” technologies, etc.). Can an analytic process “reinvent itself” as the external environment structure changes? Let us simplify the question: how easy is it to adjust the analytic process if the external environment structure changes? Based on our experience, the answer that follows is plain and sad: in most known implementations (not by us!) it will be required to at least rewrite the analytic process, and most probably rewrite the AI it contains. Well, end-to-end rewriting may not be the final verdict, but doing the programing to add something that reflects the new reality or changing the “modeling part” may indeed be needed. And that could mean a prohibitive overhead – especially if environment changes are frequent. Agency: the limit of autonomy? The reader may have noticed already that we proceed in the direction of a more and more complex reality proposed to artificial intelligence. While taking a note of possible “instrument-side consequences”. In a hope for our being finally able to provide a response to emerging challenges. We are now approaching the necessity to equip an analytic process with the level of autonomy such that it can cope with not just changeability of the environment, but also with the uncertainty of its state. No reference to a quantum nature of the environment is intended here (we will discuss it in one of our further publications), we simply consider the probability for an analytic process to encounter the expected state at the expected moment in the expected “volume”. For example: the process “thought” that it would manage to complete a model training run before the arrival of new data to apply the model to, but “failed” to complete it (e.g., for several objective reasons, the training sample contained more records than usually). Another example: the labeling team has added a batch of new press in the process, a vectorization model has been trained using that new material, while the neural network is still using the previous vectorization and is treating as “noise” some extremely relevant information. Our experience shows that overcoming such situations requires splitting what previously used to be a single analytic process in several autonomous components and creating for each of the resulting agent processes its « buffered projection » of the environment. Let us call this action (goodbye, Wikipedia) agenting of an analytical process. And let us call agency the quality acquired by an analytical process (or rather to a system of analytical processes) due to agenting. A task for the robot At this point, we will try to come up with a task that would need a robotized AI with all the qualities mentioned above. It will not take as a long journey to get to ideas, especially because of a wealth of some very interesting cases and solutions for those cases published in the Internet – we will simply re-use one of such cases/solutions (to obtain both the task and the solution formulation). The scenario we have chosen is about classification of postings (“tweets”) in the Twitter social network, based on their sentiment. To train the models, we have rather large samples of “labeled” tweets (i.e. with sentiment specified), while classification will be performed on “unlabeled” tweets (i.e. without sentiment specified): Figure 1 Sentiment-based text classification (sentiment analysis) task formulation An approach to creating mathematical models able to learn from labeled texts and classify unlabeled texts with unknown sentiment, is presented in a great example published on the Web. The data for our scenario has been kindly made available from the Web. With all the above at hands, we could be starting to “assemble a robot” – however, we prefer complicating the classical task by adding a condition: both labeled and unlabeled data are fed to the analytical process as standard-size files as the process “consumes” the already fed files. Therefore, our robot will need to begin operating on minimal volumes of training data and continually improve classification accuracy by repeating model training on gradually growing data volumes. To InterSystems workshop We will demonstrate, taking the scenario just formulated as an example, that InterSystems IRIS and ML Toolkit, a set of extensions, can robotize artificial intelligence. And achieve an efficient interaction with the external environment for the analytic processes we create, while keeping them adaptable, adaptive and agent (the «three А»). Let us begin with agency. We deploy four business processes in the platform: Figure 2 Configuration of an agent-based system of business processes with a component for interaction with Python GENERATOR – as previously generated files get consumed by the other processes, generates new files with input data (labeled – positive and negative tweets – as well as unlabeled tweets) BUFFER – as already buffered records are consumed by the other processes, reads new records from the files created by GENERATOR and deletes the files after having read records from them ANALYZER – consumes records from the unlabeled buffer and applies to them the trained RNN (recurrent neural network), transfers the “applied” records with respective “probability to be positive” values added to them, to the monitoring buffer; consumes records from labeled (positive and negative) buffers and trains the neural network based on them MONITOR – consumes records processed and transferred to its buffer by ANALYZER, evaluates the classification error metrics demonstrated by the neural network after the last training, and triggers new training by ANALYZER Our agent-based system of processes can be illustrated as follows: Figure 3 Data flows in the agent-based system All the processes in our system are functioning independently one from another but are listening to each other’s signals. For example, a signal for GENERATOR process to start creating a new file with records is the deletion of the previous file by BUFFER process. Now let us look at adaptiveness. The adaptiveness of the analytic process in our example is implemented via “encapsulation” of the AI as a component that is independent from the logic of the carrier process and whose main functions – training and prediction – are isolated one from another: Figure 4 Isolation of the AI’s main functions in an analytic process – training and prediction using mathematical models Since the above-quoted fragment of ANALYZER process is a part of the “endless loop” (that is triggered at the process startup and is functioning till the whole agent-based system is shut down), and since the AI functions are executed concurrently, the process is capable of adapting the use of AI to the situation: training models if the need arises, predicting based on the available version of trained models, otherwise. The need to train the models is signaled by the adaptive MONITOR process that functions independently from ANALYZER process and applies its criteria to estimate the accuracy of the models trained by ANALYZER: Figure 5 Recognition of the model type and application of the respective accuracy metrics by MONITOR process We continue with adaptability. An analytic process in InterSystems IRIS is a business process that has a graphical or XML representation in a form of a sequence of steps. The steps in their turn can be sequences of other steps, loops, condition checks and other process controls. The steps can execute code or transmit information (can be code as well) for treatment by other processes and external systems. If there is a necessity to change an analytical process, we have a possibility to do that in either the graphical editor or in the IDE. Changing the analytical process in the graphical editor allows adapting process logic without programing: Figure 6 ANALYZER process in the graphical editor with the menu open for adding process controls Finally, it is interaction with the environment. In our case, the most important element of the environment is the mathematical toolset Python. For interaction with Python and R, the corresponding functional extensions were developed – Python Gateway and R Gateway. Enabling of a comfortable interaction with a concrete toolset is their key functionality. We could already see the component for interaction with Python in the configuration of our agent-based system. We have demonstrated that business processes that contain AI implemented using Python language, can interact with Python. ANALYZER process, for instance, carries the model training and prediction functions implemented in InterSystems IRIS using Python language, like it is shown below: Figure 7 Model training function implemented in ANALYZER process in InterSystems IRIS using Python Each of the steps in this process is responsible for a specific interaction with Python: a transfer of input data from InterSystems IRIS context to Python context, a transfer of code for execution to Python, a return of output data from Python context to InterSystems IRIS context. The most used type of interactions in our example is the transfer of code for execution in Python: Figure 8 Python code deployed in ANALYZER process in InterSystems IRIS is sent for execution to Python In some interactions there is a return of output data from Python context to InterSystems IRIS context: Figure 9 Visual trace of ANALYZER process session with a preview of the output returned by Python in one of the process steps Launching the robot Launching the robot right here in this article? Why not, here is the recording from our webinar in which (besides other interesting AI stories relevant for robotization!) the example discussed in our article was demoed. The webinar time being always limited, unfortunately, and we still prefer showcasing our work as illustratively though briefly as possible – and we are therefore sharing below a more complete overview of the outputs produced (7 training runs, including the initial training, instead of just 3 in the webinar): Figure 10 Robot reaching a steady AUC above 0.8 on prediction These results are in line with our intuitive expectations: as the training dataset gets filled with “labeled” positive and negative tweets, the accuracy of our classification model improves (this is proven by the gradual increase of the AUC values shown on prediction). What conclusions can we make at the end of the article: • InterSystems IRIS is a powerful platform for robotization of the processes involving artificial intelligence • Artificial intelligence can be implemented in both the external environment (e.g., Python or R with their modules containing ready-to-use algorithms) and in InterSystems IRIS platform (using native function libraries or by writing algorithms in Python and R languages). InterSystems IRIS secures interaction with external AI toolsets allowing to combine their capabilities with its native functionality • InterSystems IRIS robotizes AI by applying “three A”: adaptable, adaptive and agent business processes (or else, analytic processes) • InterSystems IRIS operates external AI (Python, R) via kits of specialized interactions: transfer/return of data, transfer of code for execution, etc. One analytic process can interact with several mathematical toolsets • InterSystems IRIS consolidates on a single platform input and output modeling data, maintains historization and versioning of calculations • Thanks to InterSystems IRIS, artificial intelligence can be both used as specialized analytic mechanisms, or built in OLTP and integration solutions For those who have read this article and got interested by the capabilities of InterSystems IRIS as a platform for developing and deploying machine learning and artificial intelligence mechanisms, we propose a further discussion of the potential scenarios that are relevant to your company, and a collaborative definition of the next steps. The contact e-mail of our AI/ML expert team is MLToolkit@intersystems.com.