Extending Microsoft Copilot to support IBM mainframe

In this video, Gil Peleg, Geniez AI's cofounder and CEO will demonstrate how Geniez GenAI Framework can extend Microsoft Copilot's capabilities to support IBM mainframe.

In this video, Gil Peleg, Geniez AI's cofounder and CEO will demonstrate how Geniez GenAI Framework can extend Microsoft Copilot's capabilities to support IBM mainframe.

0:00

Hey everyone, uh I'm Gil Pelleg and

0:02

today I'm going to show you how we use

0:05

the Genius Genai framework to extend the

0:08

Microsoft Copilot with mainframe

0:10

capabilities.

0:11

So as you can see on my screen, I got

0:13

Copilot open uh on the right hand side.

0:16

It's connected to Cloud Sonet 4 and as

0:20

you can see it's also connected to the

0:22

Genius Gai framework with a long list of

0:25

mainframe capabilities.

0:27

Uh you can see on the left hand side I

0:29

have a mainframe application opened. I

0:32

have some uh cobble source files. I have

0:35

copy books. I have JCL source code as

0:39

you can see right here on my screen. And

0:42

I'm going to start with asking copilot

0:45

to explain what this JCL does. So I'm

0:48

going to type that uh in the chat

0:50

window.

0:58

And this is a basic capability of

1:00

copilot. It's going to look at the JCL

1:03

and explain what it does.

1:15

And as you can see, it came back and

1:17

it's explaining that this JCL closes

1:20

some CACs data sets. It's giving me the

1:23

list of data sets and which command is

1:26

used to close the data set. This is a

1:28

pretty standard uh CICS batch

1:31

application job. So now I'm going to ask

1:34

it to submit it. And this is already a

1:37

genius genai capability because uh

1:40

Microsoft Copilot cannot submit jobs on

1:43

its own. Right? So I'm going to type in

1:48

So I can even ask it to check whether

1:50

the job was successful once it's

1:52

submitted. So here it goes.

2:01

And as you can see it's using the genus

2:03

GI framework to submit the job.

2:07

It came back with a job ID and the job

2:09

name. And it says the job was

2:11

successfully submitted. And I'm going to

2:13

ask it to check whether the job was

2:16

successful.

2:20

And again, it's running the genius jai

2:23

framework to check the job output on the

2:25

spool.

2:27

And as you can see, it comes back and

2:28

says the job has completed. And it's

2:31

checking for any messages.

2:43

All right. So, it's coming back and

2:44

telling me that the job is actually

2:46

failed with an error message. Module

2:50

SDFS not found. Oh, that that seems to

2:53

be a typo on my end. So, I can ask it to

2:56

fix the program name.

3:02

Right. So, it is suggesting the fix to

3:04

the JCL. I'm going to tell it I want to

3:06

keep the update to the program name. It

3:10

fixed the JCL and it submitted the job

3:12

again.

3:16

And I'm going to ask it to check whether

3:19

the job was successful this time. And

3:21

again, it's going to go to the spool to

3:24

list the job output and check whether

3:26

the job was successful or were there any

3:28

error messages.

3:32

All right. So as you can see it found

3:34

the job output and it figure out the job

3:38

has completed successfully with a return

3:40

code zero.

3:42

That's great. All right. Now I want to

3:45

understand a little bit deeper what this

3:47

job has done. So I'm going to ask it uh

3:50

if it can show check the job output and

3:52

tell me which data set is actually

3:55

connected to the CCS file transact.

3:59

Right.

4:04

This is a bit more complex task as it

4:06

requires copilot to dive deeper into

4:09

analyzing the output of the job and try

4:12

to understand which data set is actually

4:14

being used. All right. And it's coming

4:16

back and telling me that this is the

4:18

data set name transact vom ksds.

4:22

Now I want to try and understand the

4:24

structure of this file. I seem to recall

4:27

I have a copy book uh mapping this data

4:30

set, but I'm not sure which copy book

4:33

that actually is. So, I'm going to ask

4:35

Copilot to search for it and try to see

4:37

if it can find which copy book maps this

4:40

uh VSON data set.

4:55

And as you can see, it searched through

4:57

the project and found the rhythmi file

5:00

and figured out that this uh copy book

5:03

vt05y

5:07

is the one that's actually mapping the

5:09

vess data set.

5:13

Right now, I seem to recall I have that

5:15

copy book on my main frame. So, I'm just

5:17

going to ask copilot to make sure it's

5:20

actually there.

5:29

So now it's going to use the genius

5:30

genai framework to go to the main frame

5:33

and list a PDS and check whether it has

5:36

a member by that name.

5:40

All right. And it came back and says

5:41

yes, I found the copy book in this PDS.

5:45

So now I'm going to uh ask copilot to

5:49

actually map the vis data set from the

5:51

main frame with the copy book and show

5:54

me the content of the vis data set

6:00

and again this is something that copilot

6:02

cannot do on its own and it's going to

6:04

call the genius generi framework to

6:07

retrieve the copy book retrieve the vis

6:09

data set and then parse the data set

6:12

based on the copy

6:15

All right. And it came back and it's

6:17

showing us a couple of sample records

6:19

from the VSM data set. But I'm actually

6:22

interested in the record with the

6:24

highest purchase amount. So I'm going to

6:26

ask it to show it. And I'm asking it to

6:29

list a record in the data set. But I'm

6:31

not actually telling it the schema of

6:34

the data set or the structure of the

6:35

data set. I'm just using my application

6:40

uh terms to ask it what to do and it

6:43

will figure it out based on the copy

6:45

book.

6:47

All right. And here we go. As you can

6:49

see, it came back and it located the

6:51

transaction with the highest purchase

6:53

amount of $504.

6:56

All right. So, we looked at the

6:58

application level at the records in the

7:01

VSSON data set. Now I'm interested in a

7:04

little bit more technical details about

7:06

the data set. So I'm uh I'd like to list

7:09

the attributes of the data set. So I'm

7:11

going to ask Copilot to generate an

7:13

IDAM's JCL and run it on the mainframe

7:16

for me to list the attributes.

7:23

All right. And as you can see, it

7:25

generated its own JCL, submitted it, and

7:29

uh checked the output and came back and

7:31

it's showing me the data set name, the

7:34

type of the data set, which catalog it's

7:36

on, the size of the data set, the key

7:39

length, the record length, and many

7:42

other technical details about the data

7:44

set. All right, so we looked at the

7:47

application vis data sets. Now, I want

7:49

to check the application database

7:51

tables. So I'm going to ask copilot

7:54

whether it can access DB2 for me.

8:00

And as you can see it came back and say

8:02

that through the genius geni framework

8:04

it has access to a bunch of uh DB2

8:07

capabilities. So I'm just going to ask

8:10

it to look at the employees table for

8:12

me. So I'm going to type in

8:16

and I'm asking it to list all employees

8:19

in the table. And as you can see, it

8:22

used the Genius GNI framework to

8:24

generate an SQL query to list all the

8:27

employees in the table. I can try and

8:30

dive a bit deeper into the application

8:32

data. For example, I'm going to ask it

8:35

to list the top three employees with

8:37

highest salaries. And as you can see, it

8:40

came back with the list of three

8:41

employees with the highest salaries. And

8:44

as you noticed, I did not have to tell

8:46

it the schema of the table or how to

8:48

access the database. It figured it all

8:50

out through its own uh using the Genius

8:54

Gai framework. All right, so that's all

8:57

I had today. Uh in this demo, we showed

8:59

you how we use the Genius Genai

9:01

framework to extend Microsoft Copilot

9:04

with mainframe capabilities. For

9:06

example, submitting jobs, looking at VSM

9:09

data sets based on cobalt copy books or

9:12

querying DB2 tables. If you'd like to

9:15

learn more, you're welcome to visit our

9:17

website where we have a lot more

9:19

resources and videos for you. Thank you.

All

From Geniez AI

Geniez AI

The enterprise framework for connecting LLMs and AI-agents to real-time mainframe data
Generative AI for Mainframe, Connecting LLMs and AI-Agents to real-time mainframe data