Watsonx Brings AI Visibility to Banking Systems
A new set of AI-based code conversion tools is available with IBM watsonx. Before introducing the new "watsonx," let's talk about the previous generation Watson, perhaps better known as "Jeopardy!-Watson."
The original Watson system was initially developed as an experiment to answer questions on the quiz show Jeopardy! and in 2011, the Watson computer system competed against champions Brad Rutter and Ken Jennings, winning the first place prize of $1 million (IBM donated 100% of Watson's winnings to charity, with 50% of those winnings going to World Vision and 50% going to World Community Grid.) Except for one embarrassing blunder ("Its largest airport is named for a World War II hero; its second largest for a World War II battle," Watson "What is Toronto?"), Watson crushed the human competition.
In terms of hardware, Jeopardy!-Watson was no slouch. The Watson cluster was composed of ninety IBM Power 750 servers, each with a 3.5 GHz POWER7 server; the system provided 2,880 POWER7 processor threads and 16 TBytes of RAM.
Despite the Jeopardy! success and multi-billion dollar investment, Watson's further development and the creation of Watson Health never gained wide acceptance. In January 2022, IBM sold Watson Health for a reported $1 billion to private equity firm Francisco Partners.
Building on the Foundation
Building AI systems like ChatGPT, Bard, or Llama takes time and resources. Grown from information found across the internet, these massive large language modes (LLM) can answer complex questions on many different topics but lack specific knowledge. One way to envision these foundation LLMs is to consider them a well-built house. The basics include windows, walls, stairs, doors, rooms, closets, and pathways, but no furnishings exist. One might ask a house-foundation model, "How do I get from the living room to the upstairs bathroom?" to which the LLM will answer. It may provide different (answers) pathways through the house, but it will get you to your destination.
If one were to ask, "How big is the flat screen TV in the basement?" the house-foundational model would be a loss. This information is specific to a particular home and thus would require augmenting the foundational model with information about your home.
Providing foundational models with more domain-specific data is the gateway to widespread use. Of course, asking ChatGPT to write an essay on War and Peace or to provide Python code to multiply two matrices is impressive, but asking ChatGPT to write a 300-word report on last year's sales numbers won't work. You need to add furniture to the house.
Adding furniture means tuning the model specifically for your organization or business. This process introduces many "foundational questions" that may have a considerable importance in the success of your new model. For instance,
- What Foundational model should I use?
- What if the foundational provides biased answers?
- What if my training data is biased?"
As suggested by these questions, putting AI to work with domain knowledge requires careful consideration of data providence and quality.
Meet watsonx
In May of 2023, IBM introduced watsonx. It might be convenient to describe watsonx as next-generation or evolutionary, but in reality, watsonx has little connection to Jeopardy!-Watson. watsonx is designed to assist with the GenAI technologies sweeping through virtually every market sector. That is, watsonx will help answer the types of questions mentioned above.
Watsonx has three main components listed below. These components offer advanced machine learning, data management, and generative AI capabilities to train, validate, tune, and deploy AI systems across the business with speed, trusted data, and governance. It helps facilitate the entire data and AI lifecycle, from data preparation to model development, deployment, and monitoring.
- watsonx.ai allows users to train, validate, tune, and deploy generative AI, foundation models, and machine learning capabilities easily and build AI applications in a fraction of the time with a fraction of the data.
- watsonx.data is an open lakehouse storage solution for AI projects, providing seamless data transfer and management. It provides a single entry point to data regardless of location and allows real-time or batch, all in the context of a robust governance framework.
- watsonx.governance is an end-to-end governance solution. It covers the full AI lifecycle data provenance, ensuring traceability, transparency, explainability, and bias detection.
Getting Smart About The Future
In a recent interview with Jen McComas, Executive Architect and Principal Global Industry Engineer for IBM Global Industries, Financial Services, about watsonx in the banking industry, the topic of modernization was discussed. While most enterprises need to address modernization at some point, the Banking industry is under pressure to find increased revenue, reduce costs, and find growth opportunities.
One of the challenges facing the banking industry is the continued use of COBOL applications. COBOL is the second oldest high-level programming language and has been the mainstay of many banking and financial institutions. COBOL is still in use because it works, and the applications are trusted. There are issues, however. The first is the shortage of COBOL programmers. The second is the need for modern features and capabilities in a programming language to address the challenges mentioned above. New banking approaches that include hyper-personalized service need modern tools that support sophisticated analysis. Banks are pressured to modernize or build new systems to address their needs.
Generative AI provides a path forward for many of these challenges. Reports of using ChatGPT to translate code from one language to another are impressive. However, these success stories are usually based on small examples and may need further vetting to be trusted in production environments.
The challenges of code translation are where watsonx comes into play. Based on the watsonx.ai foundation models, IBM has developed the watsonx Code Assistant for Z that uses a fine-tuned coding model that can make it easier for developers to incrementally modernize COBOL business services and selectively convert to high-quality Java code. In addition, using watsonx, developers can gain insights and recommendations for existing COBOL code that may not have been possible without the original author's knowledge (the person who retired right after doing the Y2K fixes).
Code Assistant for Z allows users to tune and customize the underlying foundation model with their standards and best practices. At the same time, data-source attribution will provide transparency into the potential origins of the generated code.
When translating COBOL to Java, the resulting Java code is "human readable, " allowing the developer to modify or enhance the generated code. To provide confidence and verification for the new code, automatic generation of test cases for the existing COBOL and the new Java codes are produced.
While discussing these new tools with IBM's McComas, she mentioned attributes not generally associated with GenAI tools. Attributes such as traceability, transparency, explainability, and bias detection are part of watsonx.governance component that allows organizations to create open and observable conversion processes. With emerging AI (and existing) regulation, end-to-end data provenance will be essential for risk management and compliance in regulated industries.
Not Just for COBOL
Providing rigorous code conversion is not just limited to the banking industry. Almost every sector has code that needs trusted modernization or conversion.
Another application for IBM watsonx Code Assistant is a generative AI service that helps developers create Ansible content more efficiently. The Red Hat Ansible Lightspeed assistant reads plain English entered by a user and then interacts with IBM watsonx foundation models to generate code recommendations for automation tasks that are then used to create Ansible Playbooks. Results are written in YAML code and adhere to accepted best practices for Ansible experienced users. The Ansible Lightspeed assistant reduces the need for highly skilled Ansible developers.
It should be noted Watsonx Code Assistant for Z is a new addition to the watsonx Code Assistant product family, along with IBM watsonx Code Assistant for Red Hat Ansible Lightspeed. These solutions are powered by IBM's watsonx.ai code model, which is expected to have knowledge of 115 coding languages, having learned from 1.5 trillion tokens. At 20 billion parameters, it is on target to become one of the most significant generative AI foundation models for code automation. The watsonx Code Assistant product portfolio will extend over time to address other programming languages, improve time to value for modernization and address growing skills challenges for developers.
Converting that legacy Fortran application to Java, C, or even Python may be possible very soon because watsonx knows what you are talking about.