Deliver AI infused app innovation with Open Liberty on AKS

edburns 36 views 23 slides Sep 03, 2024
Slide 1
Slide 1 of 23
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23

About This Presentation

Delivering innovation on top of an open spec commodity platform is a time-honored recipe for success in IT. Examples include Linux, graphics cards, web frameworks, just to name a few. This session shows how building on the open standards of Kubernetes, Jakarta EE, Langchain4J, and Azure OpenAI can h...


Slide Content

Deliver AI infused app innovation with Open Liberty on AKS Ed Burns @ edburns Principal Architect for Java on Azure Java Champion

Ed Burns professional biography Client NCSA Mosaic (1994) SGI Cosmo Web Authoring Sun Netscape 6 OJI Server J2EE JSF (2002) Oracle Java EE Servlet, JSF, Bean Validation, etc. Cloud Java Champion Microsoft Azure Cloud (2019) Jakarta EE 11 committer and release coordinator Books

My plan for your time investment Don’t panic Show the major parts of the demo How to deploy it Possible areas for further exploration Summary

New to AI?

Don’t panic!

Ed’s fairly obvious observations Recognize the market forces that have always been in play. Vendors want adoption. They’ll make it easy to adopt. This is also true with AI.

James Gosling: I realized if I wanted bankers to use automatic garbage collection, I needed to give them curly braces rather than lots of irritating silly parentheses (LISP). Packaging a new idea for adoption: deliver it on the back of existing ideas.

Java language level idioms you’ll see with AI Builder pattern Streams CompleteableFuture (hopefully virtual threads also) Functions Providing an API on top of existing LLMs

Major parts of the demo

IBM Liberty on AKS offer https://aka.ms/liberty-aks Deploys for you AKS Container Registry Liberty Kubernetes Operator (optional) an app of your choice

IBM Liberty https://openliberty.io/ Implements Jakarta EE MicroProfile Lightweight Modular Perfect for microservices

Specifications Jakarta EE and MicroProfile https://jakarta.ee/ https://microprofile.io/ Implements Jakarta EE MicroProfile CDI dependency injection https://jakarta.ee/specifications/cdi/ Config https://github.com/eclipse/microprofile-config/ Metrics https://github.com/eclipse/microprofile -metrics/

How to deploy it

How I built the demo Started with Grace and Gilbert’s excellent blog post https://openliberty.io/blog/2024/04/01/open-liberty-with-langchain4j-example.html Sprinkled in the Liberty on AKS QuickStart https://learn.microsoft.com/en-us/azure/aks/howto-deploy-java-liberty-app Result is at https://github.com/azure-javaee/langchain4j-examples

How to deploy the demo Build the app Containerize the app Push to Azure Container Registry Start the Liberty on AKS offer: https://aka.ms/liberty-aks Point to the Azure Container Registry containing the app Supply the Docker tag for the image in the registry Look at the outputs

Demo

Where you can go next

Ideas for further exploration Implement GitOps Automate deployments using GitHub Actions. Pass environment variables from CI rather than baking them into the container image. Explore other models See ChatAgent.java for example. Explore the LangChain4J Tools API See fellow Java Champion (and fellow NullPointer ) Ken Kousen’s excellent video: https://www.youtube.com/watch?v=cjI_6Siry-s

Summary

Summary Easily add AI to a Jakarta EE Liberty app https:// aka.ms /java/ ee /langchain4j-example Easily containerize a Jakarta EE Liberty app https://github.com/azure-javaee/langchain4j-examples Easily deploy a Jakarta EE Liberty app to AKS https://aka.ms/liberty-aks Do more with Java on Azure https://aka.ms/java/ee

Thank you

Microsoft Logo