[Music] hi welcome back to another episode of quantum cross talk I'm Olivia and today we are going to be discussing the brand new KISS kit functions which are in fact so new that even I don't know that much about them yet so to help educate me and yourself the user The Listener I have brought in two of our best product managers on the IBM Quantum team sanket and tar to tell us all about kiss kit functions and how they are going to change the direction for capabilities for our users and the landscape of quantum Computing
welcome sankit and tar thanks so much for coming down to the kiss kit Studio could you I guess Begin by just briefly introducing yourselves and telling us a little bit about your job role at IBM awesome yeah um so my name is tar mol um I lead our product management department at IBM Quantum so a lot of my day-to-day is focused on think you know prioritizing a lot of the features across our stack um whether that be some like our Flagship service which is K runtime or thinking about the collection of tools that we add
onto it to enable users and so I have a team that uh operates across those different um pillars of our product uh to deliver hopefully which is is the best user experience possible great and uh hi I'm sankat I'm one of the product managers on tsh's team um I lead kkit function service so and uh kiss surus as well great well that is appropriate for our conversation today which is all about kkit functions so I guess to get right into it sankit what is kiss kit functions or what are kiss kit functions yeah so kiss
kit functions are a new set of services that we have that help developers you know accelerate their work with abstractions there's really two types of abstractions that we are introducing this time around uh circuit functions and application functions so you can think of these functions as a way for developers who want to discover new algorithms and applications you know it can use a circuit function to abstract away transpilation mitigation suppression and all these other types of Hardware Performance Management as well as you know we have these application functions which help uh researchers from Fields outside
Quantum bringing their expertise into you know Quantum Computing by using a set of tools that do what circuit functions do plus mapping their problems into uh you know from from classical state to a Quantum circuits and observables so I sort of get that but it's still a little abstract could you give me like maybe one specific example of a function yeah so we're rolling out the IBM circuit function um in this function uh you have a whole Suite of tools for error mitigation suppression transpilation right this should make it easier for end developers to be
able to input their abstract circuits and observables and at the end of it get you know utility scale computation out of the box this function is able to process your circuit and really determine what how much mitigation you might need along the way so I don't need to have already selected what types of error mitigation I want the transpiler is going to recommend for me the types of error mitigation that it would want to implement the circuit function well so I think we have two separate experiences here one is um you know what exists today
which is the transpiler by itself and then The Primitives that manage era mitigation in that experience you have the ability to tune exactly what you want yeah um now with the circuit function what we want to do is we want to enable you to not have to worry about that and so the circuit function is designed to make those best decisions for you and it will continue to make those uh as it you know as we develop it it will continue to become more efficient at deciding for you in terms of what techniques need to
be applied to give you a noise free estimate Okay so the difference between the function and the sampler primitive as it stands now is when I use the sampler I sort of have to guess and check what optimization and what error mitigation levels I need it sounds like the function is going to remove that guessing and checking part for me yeah I think I think that's definitely one point of it and the other point with the sampler specifically is that the sampler Pro uh you know we've gone through some Evolutions with the sampler as well
so the first sampler you know tried to execute all things that were like transpilation as well as error mitigation and execution all within the runtime environment what we've learned with our recent kind of research on transpilation and improving our transpiler um and even you know discovering new pathet that are powered by AI is that we actually need to separate out these two uh tools to maximize the performance we can get uh in our N2 pipeline so what you've seen over the course of this year is that we have evolved this an original sampler into a
new version that is really focused on optimizing your execution or the step three of a kiss pattern um and what we've done is we've defined an input and output format um with both the transpiler side as well as um the sampler where the transpiler job is to actually it can live now you know solely outside of um the kuit runtime environment and it can actually leverage any kind of elastic classical compute that it might need to to give you generate the most efficient instruction set architecture um for your circuit so we call this the ISA
circuit okay um such that the sampler does what it does best which is Max you know provide the most efficient execution of that circuit on the target Hardware got it cool how is that different what you're describing with error mitigation and needing to like pull different pieces and knowing how they fit together how is that different than me just using the sampler primitive and saying you know optimization level equal three yeah so that's a great question so in those cases right you have an understanding of what options you're selecting whether that is what optimiz ation
level what resilience level or even tweaking inside your resilience level uh your resilience settings you know amplifier settings so on and so forth each of those requires some amount of expertise in how um transpilation happens how error mitigation happens and how to apply those sensibly to your workload what we're doing with these circuit functions on the other hand is taking a look at you know what are reasonable decisions uh to go for an error mitigation suppression pipeline for your workflow okay another thing that I would throw in there is with the functions architecture so one
part of this is providing these prepackage workflows as services but the other part is kind of bringing together elastic classical compute with Quantum compute so one of the things that we've learned as we've built modular tools so one of the you know one of the evolutions you've seen with even the sampler is the sampler has a second version as of uh early this year we rolled out V2 of sampler which is focused on intaking Isa circuits one of the reasons for that is we've learned that transpilation as a as a process as a subprocess there
are strategies that actually require a um elastic compute or a large amount of kind of compute that can be leveraged to deliver a better outcome and so decoupling the execution engine which is the sampler from the preparation engine which is the transpiler uh and deploying that in two different computer environments actually has advantages and so while functions are these prepackaged workflows we're using where involving kind of the quantum serverless framework to bring together these Technologies where I can still get that similar experience that I used to have maybe with the sampler but I can now
leverage multiple capabilities at a a level that I wasn't originally able to okay in this heterogeneous architecture got it so I guess my next question is who is developing the functions who is making them yeah so there's a couple of people working on this so we have a function provided by IBM out of the box the circuit function I mentioned before plus we're you know leveraging our ecosystem a collection of commercial startups to really show what different types of circuit functions and application functions um that they're you know starting to release cool and how uh
how do you see the functions both the ones being created from IBM and our ecosystem Partners how do you see them being like interwoven into a typical workflow um in some ways they are prepackaged workflows but I'll give you two examples I think one with the circuit function um we have a collection of researchers who are focused on translating effectively some domain specific interpretation of their problem to a circuit representation and so a circuit function is a great tool for them because now they can spend more of their time translating and kind of developing mapping
methods of their classical problems to their let's say Quantum inputs yeah and they can invoke the circuit function almost as a plug-in play to handle all of the Performance Management uh down below another way to look at this which is that really at the foundation of all of this is last year we introduced this concept of kuit patterns which is four canonical kind of category of steps that play out in the anatomy of an algorithm right the first one being mapping correct and the second one uh is a optimization down to the Target circuit third
one is execution and fourth is postprocessing and so if those other three steps or even the middle two let's say optimizing my circuit and then running it efficiently with some mitigated outputs is is is done for me I can actually plug in my own mapping tools and even my own post-processing tools at the end of this pipeline to build and design a new algorithm for example so that's one example um another uh another example is with a collection of application functions um what you actually have is for example you know we have a partner that
is rolling out um a graph solver so what you can start to start to um explore is what are the types of graphs that I actually can solve with the quantum computer and with these capabilities and start to narrow in on the types of problems I might want to integrate this function in for so you know one of the things that we expect all you know our Enterprise clients or just developers in those kind of more industry regimes to do is take an application function as like a prototype and they try to integrate that into
maybe a larger workflow where there are certain key elements of um maybe computation that they direct to the function versus maybe Run classically Okay so these are a couple of ways we are looking to see how users interact with these functions and what they find useful got it got it so my next question but you already sort of answered this is how is this going to help or change the ecosystem but it sounds like it's another level of extraction so if I understand it correctly it's letting the users who have hopefully specific domain expertise really
focus in on what they're good at and not need to focus in so much on the optimization of the quantum circuit is that right 100% um so we have three personas that we feel like we have to tackle as a part of making Quantum Computing useful there's the physicist Persona that we have spent a lot of time working with and that's really what a lot of the focus with the kuit SDK and really delivering power tools is the next set of personas so I like to say this Persona this physicist Persona is focused on research
um for Quantum Computing where they're you know what what brings value to their research is they're making a quantum computer better they're teaching a quantum computer how to be better at being a quantum computer yeah right the other two personas that we have on our road map which is the Quantum computational scientist as well as the statea scientist Persona which kind of marries up to a lot of the Enterprise use cases these researchers are looking to explore research with Quantum Computing where they wanted to do a task right and if we can package up tools
or give them kind of prepackaged components of their workflow they can really focus on how to use it use a quantum computer with the collection of tools they already have as opposed to having to build a custom pipeline every time got it and so that's those are the users we're trying to engage as a part of this to bring kind of new tools into the market okay so if I'm a I'm a physicist which I guess I am technically and I'm looking to explore like you said Quantum Computing for better Quantum Computing I might not
want to use a function because I might be developing my own like error mitigation techniques and new types of suppression that maybe don't exist as a function yet however when we publish papers and we get good results we could turn those into functions so that computational scientists and data scientists could use them in their workflow seamlessly am I getting it 1,000% um I think another thing one example of like what are the tools that are emerging for um uh comp or for physicists is that we're while we are building these abstracted functions what we're also
building is a collection of KET add-ons and these are basically modular research capabilities that are translated into software tools that start to power basically if you think about each step in the pattern as a bucket we're dropping new LEGOs into the buckets for people to build new workflows or experiment with different types of circuits that they can unlock for uh that can be run on a quantum computer okay so so if a function is I don't know a castle that I built out of a Lego then an add-on is like a little piece of vet
it's like another Lego like a turret on the castle um yeah it could be like a different shape Lego that allows you to maybe like expand your Castle in a way you couldn't before okay cool starting to come together I'm glad we went with the Lego metaphor all right so if I'm a user and I'm hearing about kiss kit functions for the first time what should I do to upscale myself and to know how to use them um I think a lot of this kind of starts with um understanding I think one of the key
focuses that we have is in our documentation we're going to highlight the types of workloads that these functions work well for so what for example a lot of the circuit functions um one thing that would be helpful for users to start doing is understanding what a hardware efficient circuit is so a lot of the error mitigation and error suppression methods they work really well with Hardware efficient circuits and so exploring the category of Hardware efficient circuits and maybe say each application area is a place to get started in terms of how you might use a
circuit function as a part of your work that you're doing okay um in in terms of application functions um you know they're going to be we we expect those to be more plug andplay so um in this scenario you're not necessarily thinking about working with circuits but you're thinking about designing problems maybe in the context of a domain describing like the electronic structure of a problem or you know mapping out a graph that might be optimal for these so I think one of the key kind of things that I would say is um try different
problems and start to consolidate down to like what works mhm right yeah and I can also add that there's going to be um a bunch of tutorials that we're going to put on the learning platform specifically for functions yet 100% so you can always look there if you're not sure how to use a function or if you're not if you want to see an example of it we'll put those there um so how does this change the way that somebody should upskill themselves and the journey that somebody should take with their education in order to
become proficient in quantum Computing yeah so that's a great question um so right now this entire Quantum software stack is in deep research right things like error mitigation suppression is still heavy research topics that'll evolve over the coming years that being said though I think that these functions the circuit function and application functions unlock new types of users to get started quickly and bring their expertise what I mean by that specifically right is for circuit functions an end user can focus on learning about what is a hardware efficient mapping that's that representation shift from a
classical data to Quantum data is the main thing that they can focus on things like Hardware performance and all that stuff transpilation is something they can leave to the Circuit function to solve for them on the other hand for application functions I think that you know one one of the things that we're looking forward to seeing is people who are you know have expertise outside inside of quantum learning how to use a quantum computer inside their workflow bringing different types of problems to us and really both yes learning how they can map Quantum into their
workflow as well as how can Quantum improve over time is going to be a an element that we you know both learn on this journey cool yeah I think a big part of that is just we're accelerating someone's ability to learn on uh what they can do with a quantum computer yeah um and so if we can give you managed experiences around how a computer uh how the quantum computer is optimized for your execution and that's just a function that I call I can spend more time learning and experimenting um with different use cases and
so that's kind of the key goal and we expect to you know both from an IBM perspective as well as from our partners perspective we'll keep iterating on these functions to add more performance and make them more uh more and more general purpose over over the coming years okay so I think what I've really gleamed from this conversation the way I would sumarize it is the functions allow research scientists and users to keep being good at what they're good at and leave the details of the actual circuit optimization to IBM we got this part and
you just focus on what you're good at IBM and it's Partners um I think there's going to be one of the biggest ways that um we're going to be able to catalyze this journey for our users is by partnering with our commercial ecosystem and a lot of the interesting work that's happening within our startups to maximize the tools that we can provide into our into our users hands as fast as possible cool all right well I think that I get it now uh I hope that everybody understands it now too thank you guys again so
much for coming down to the studio and for chatting with me and teaching me what a kiss kit function is I know you've been working on this for a really long time and it's great to see this finally coming to the light yeah we're very excited and thanks for having us thank you again s and tar for coming into this studio and teaching me all about kkit functions it is pretty rare that I go into one of these conversations not already being familiar with the software that we're talking about but I genuinely did not know
that much about kiss kit functions before this conversation today and it truly did help clarify in my mind how we can use these functions to abstract away different details that the user might not need to really be experimenting with in order to complete their Quantum algorithms I think this really has a lot of potential to change the way that people are doing Quantum Computing and so I think this is going to be really really influential and tremendous and I just want to thank thank you guys again for coming down talking to me about it and
I hope you guys as the user take advantage of all of the documentation that we're providing in the description below and we'll see you next time [Music] here