2026-04-30-nextflow-summit-day-1-pm¶
Date: 2026-04-30
Source: nextflow-2026/transcripts/sessions/2026-04-30-nextflow-summit-day-1-pm.md
Word count: ~21,574
Auto-generated captions
This transcript is from auto-generated English captions on the live event stream. Expect misheard names and technical terms (e.g., "Vicksville" for "Nextflow"). Use search for exact quotes.
Meeting Title: Protein Design Competition and AI Workflow Evolution Date: May 3
Transcript:
Them: And I think how the way that I approach this type of work I'm gonna present has changed. Using secure platform next year. And I think that's pretty relevant for all of us in the room. So Evan's already given a bit of introduction about this competition. I just wanna remind you all people that there. So this was a competition hosted by protein based, and the goal was to design novel binding proteins against the lipovirus like protein g. Nipavirus is a pretty lethal virus with, like, over forty percent of failure rate, and has no approved treatment today. What I thought was we cool about this competition was that it wasn't just a toy benchmark. The top minders from this competition were actually taken by company that has an essay for checking binding affinity and were actually tested in the lab. So that means if you would place quite well on this competition, your designs were actually safe that Now we've written up our and our experience with this competition, you wanna learn more in a blog post, you can find that blog post here the QR code. We've done this work in collaboration with medias, which is an AI cloud offers GPU. We're also gonna use this today for the demos I'm gonna show. But I'm actually not here to talk about results about this competition and the details, but I wanna use this competition, the pipeline we build, as a lens to talk about how things have changed. So protein design six months ago. What did that look like? Tools did I have? Right? I think we all remember, you know, the journey. It was a long, long time ago. The past before, you know, five years ago, Internet search. When we want to build something, we want to learn something right. Maybe still do this, but we go nine. Very often on a site call stack overflow rate. And we would we would look at other people approach a problem, we would learn from their experience. And we would teach ourselves these, you know, ideas and concepts. And that's pretty much how we've doing it, right, for a long time. How we code, we learn in coding language, made by book, made research change. Then around 2021, we got our first Then I think we all remember, like said, like, moment you first chatted with, potentially ChatGPT, model that was so good that you couldn't be how good it was. Right? That we're doing the production design competition. You know, this 2022 year, you might remember that that whole, like, chatting with agents in web browser was quite the standard for a years until So first in that six months ago, secure AI. What did that look like? So first in not be branches, commits, and PRs in your repository. But it wasn't living where I was doing the coding. Right? And so the AI would make PRs good report. I would And I would have, like, pull pull the branch, run the test, testing Python end to end iteratively. Right? And that already, like, accelerated me a really a lot. Because I could have not undertaken this project. I didn't have AI on my finger just to help me. Would have taken me weeks to months. Right? And I might have not even been able to, like, have a function pipeline in the time I had to have it for completion. So this was great, but this was not where I wanted to be. But it got me to point where I preference for flexible pipeline. Right? And I'm gonna tell you quickly how I designed this is not saying that this So we start out in good old fashion with a sample sheet that defines the designs that we wanna make. So what's the target? Where do wanna At the time when I wrote this pipeline, BolsGen was a model that just came out. Everyone's really excited about it, and it looked really promising in terms of creating null binders. You know? From designs. I then pushed this to protein empty end, is sequence redesigns, so takes the fastest protein sequence. Then this to protein Then that that sequence we have to fold it again with the target to have, like, a multiple complex right that we could use to
Me: Four c
Them: calculate metrics that would tell us in like, how likely is it that this finder reduced design actually binds and interacts with a target that you are you want to bind. In this case, like a protein gene. And we then ended up with, report in the pipeline with a report that would give us, like, all the metrics and all the designs, I had to choose And while I was doing this, I really reflected a bit now for this talk on, what's the work behind the science that I have do. Right? I think there's three components to this. There was infrastructure piece. So I to send up a QNAS cluster. I configure GPU. I had configure credentials. There was the pipeline piece, right, where I would write next to pipelines and, basically, modules, right, I had test and debug them on the GPU VM. I had to array the context parameters to get you know, place well in this competition. And, again, humans were always in the loop. Was always a colleague, can you review this car when you think of this? It wasn't just me And finally, information. Right? I had look at the outputs that could compare runs, interpret results, and choose final targets for the competition. And, again, she wants to move all the way. What I realized when I was doing this, right, is that these three pieces, infrastructure pipelines and interpretation, they're all connected, and you have to kind of erase through them, right, because the inter infrastructure determines which pipelines are running. The results of pipelines might determine and you have But what actually happens is that while you wanna do the science, get slowed down with all these problems that happen around this between infrastructure and pipelines, between pipelines and the data. Right? And what I'm gonna talk to today in talk about is how we can use Securit and NextOne coscientist pretty much help you not worry about these problems but focus on the science and accelerate you and really the things that you want to do, which is think about complex science and think about how to approach this. So the world has shifted. Right? I kind of said in his presentation, the world is shifting. I think world has shifted. We're already leading through this. So back to this. Thing about last year. I think about just before Christmas or maybe during Christmas, AIC lies. Right? Throughout the last year, they started making their ways into our terminals, code, codecs, whatever you're using in general CLI. Right? Of sudden, models are good enough that we could say, hey. Come into my Versus Code. Come to my ghost DY terminal. Whatever you're using. Right? And so we basically were like, I can't hear We're the world where agents can actually not just write, go and tell us our code sucks, but they can actually reach out and do things. They can help us do things. And I think that is the real power that we're gonna talk about today. So now they don't just help us understand the act on our behalf. And so what secure coscientists, Evanus already hinted earlier, we're introducing agent that doesn't just, you know, chat with you. It can actually take actions for Now I wanna show you today how can actually help us across these three different areas, infrastructure, pipelines, and interpretation. Do actions for it. So infrastructure can help me set up that some time. Right? And that's actually another thing I wanna learn. Wanna understand what control plane is and But you have to us add pieces to our pipelines, check that our pipelines are function, test them end to end. For interpretation, they have context, right, to all the pieces. Of our data that we want to have access to. And they can help us choose maybe less finest from our designs. Understand that, like, when some agent acts on your behalf, you don't want them to do things you don't. And social careful scientist you know, has rails. And these scar rails, they're reinforced, you know, at the token level, know, the private access token in the database. Right? Infrastructure, the agent can't do things. They can only do the thing that the potentials you have to seek of how you do. So at least privileged permission potentials, you're certain that agent can't just go into your AWS account or your production database. With so you ensure that you can't do that it can't do anything that you couldn't do. And the most important thing, think, right, because we're talking about agents and chats and and AI, What's secure in the next level reading to the table and platform is that it has the context. Context is, one of most important things we talk about agents. Right? And all that context already lives in your secure platform count. Right? It's that layer one. Where those two things run? Your AWS, your GCP. Jupiter, whatever cloud you're using. Right? All the information about the compute the configurations, Then what happens? Which Python did you run? What's logs? What's the image? Right? All of that very rich metadata is there, traceable, auditable, and agent has access to it. You can always agent always find out what happened. And then finally, what is produced? Inputs, outputs. We've earlier Right? It's now part of platform. So the agent access tools information to help you make decisions based on the data that you have produced. All of that gives secure coscientists the power to really your identity partner in bioinformatics.
Me: That?
Them: So let's the protein design with coscientists today. You've seen how done it six months ago. Where are some of the things that we can use coscientists or an agent to help us do these things? So first, infrastructure. We'd remind her, you know, back then I had to set up a Kubernetes cluster I had to say, you how I don't configure it, all these types of things. Just gonna scare you with that today because that's really the infrastructure behind humanity cluster like this from using. But we're gonna jump in right now to use an agent to help us much set up a compute environment in secure platform. The credential's already there. So I'm gonna walk you through what that would look like totally by myself, and then I'll show you how the agent does it. Perfect. So on the left side here, sorry for the back contrast. Left side is, sequel, coscientist is Kira Cilli. On the right side is a compute environment that, excel. In here. So agents post user I wanna do this by myself. And, hopefully, by the time I'm done with this, the agent has already set up the computer moment and run a pipeline. To basically make us confident that the I'm not a cubic engineer. I know what half of these terms mean. So that would need Hopefully, by the time that, you know, I'm done here talking about this agent will have set this So now we're gonna back to access c created. Just create a computer It has access. We text this only to humanity cluster that I have underneath. And the stuff that I wanna do. It took just as much time as to me to explain to you what the pieces are. Hopefully, that shows how using agent this time context with guardrails can speed me up drastically. And now I'll start talking with some. Computer my created, Python run, ready to go. Perfect. Now for pipelines. Sorry. Clicked. You are on pipelines. So for pipelines, remember remember for the competition, And my colleague Rashni has done this, actually. And what she's done is she's And try it How does it compare to your existing tool? She prompted to take her out say, hey. Extend protein design at RF diffusion three. The model then presented her with a plan to say, hey. This is how I'll do it. Had to do a conversation with her right to find out exactly what parameters and scope is that she Right? It then went to work. Wrote the code, test implementation to the test. And most importantly, because the agent was now running at CLI. In the actual GPU enabled the M on media, so she was doing this work. The agent could test the pipeline end to end. And this took her did this took her? She told me to measure this forty four minutes from first to full pipeline run with a new module tested on a GPU environment that she can now launch and actually deploy it at scale. Think that's an incredible speed up that we see. If you use these tools with the right framework, the right harnesses, with the right context, can be extremely powerful, and they can free up to do the things that we actually want to write. Look at the results of the science. I'm gonna do a very small demo, and that small demo is going to be going to launch that pipeline from the branch where Rationy has it deployed right now on GitHub. And the point here is that I can now just say launch this pipeline. Also click on the launch, but it was pre configured from me. Interact with the agent like I actually have a conversation with it, and it could help me set up with the parameters and the the configuration that I actually want. Right? So don't just see it as, I'm connect API call, and then it launches a pipeline for me. That is one way of how we can use it. Especially when we wanna do things at scale, let's say, doing experimentation, like, as I was talking about this morning, launching lots of But, ultimately, what we want here is we want to run this pipeline and maybe use it to tell us in favor. Right? Then we have pipeline submitted. It's gonna start now. Right? Okay. Interpretation. We got prompted. Right? The power here is that now that we've run this analysis in secure platform, we have to run history with the lineage with logs. Right? We have the outputs. We can actually say, hey. I may be front end pipelines. Maybe for a 100. Reach out across all these results and tell me, like, do need to like, help me, like, prioritize our case what are these thousands of finders that I've created. Which one of them is actually the one that I want to select. Right? And so this we're going to go one last time to demo. I apologize to be if you're operator. Have to switch so much. I just be prepared here. Basically, I'll ask analyze the upper of this run and find the top five finders. Right? And what secure cosigners just year is a reaches out. It finds the report results from this pipeline run, and it has some, like, dynamic UI that can actually render tables. Right? It can interact with the data in a that you may use to from other AI tools. And that really then is extremely powerful because I don't have to copy over copy CSV files or any other data. Right? Like, all of the context is already in there. You have results in your end results, right, that weird artifacts. Data. Is So that's the power of headings interpretation all in one place. Right? And this is a web interface that you can use today on ai.secure.io. The new event AI interface. Okay. Perfect. Let's go back to the slides.
Me: Tycho,
Them: Now what we've seen. Right? We started here with a question. We were backed down by problems. Ultimately, Sequeira Sequeira platform and Sequeira coscientist have all pieces that you need for agents to become a powerful collaborator. You have traceability. You have observability. You have audibility. So every action your agent takes is recorded just like a reaction that you take. Every pipeline your agent runs is recorded. The parameter space your agent takes. Is recorded. So it's really important to realize that the systems we already have can serve human collaborators as well as our identical collaborators. Hopefully, together, they can make all of us better scientists make all of us more efficient, can help all of us focus on the thing that we love, which is advance, answering interesting questions, and not getting bogged down by infrastructure work or pipeline maintenance work or, other things that actually keep us from doing things that we love. So I present you today. The same project, the same science, but a different world. A chemical scientist. Wanna say, if you wanna talk more about this, I'm very excited to talk about and I wanna give a very, very great big thank you to the team, especially the scientific development team and the services team who have helped me a lot his presentation. In general, just amazing colleagues to work with, so is everyone at So thank you all for being here in this interview. Thank you everyone for being great teams every day. I'd like to take questions. Thanks. I think it's really, obviously, great advantage take AI into any sort of pipeline. But one question I did have is that we're talking a lot about in, like, the contact prior data, GFP data, either on prem or in the cloud. So one of questions I had is, as far as the agents go, what level of, like, formal verification for your barbers have done? Just make sure that no need to be compromised whatsoever. Right. So I think when we talk about, like, taking actions with platform, right, it's the same authentication we go to, like, the authentication we use because the system is exactly the Like, it's a token based. A patch based system. And so that, you know, cannot be really because have that authentication there at the database level. When we talk about, like, like, data compromisational use of basically like enterprise, then the deployment of coscientist is in enterprise a bringing a key solution. Right? So basically, deploy it in your system, and the that means that you use your own, you know, AI providers, that data actually you don't see it prompts, nothing goes close to us. Right? And then in general, like, the protection, I think it's again, on platform level, a token. On the CI level, it's the same as other agents as well. Like, build the harness as possible. I would in general say that we're in the very early status of this. Right? So I think agents are a great way in, like, deaf and stage environments. But maybe the agents said, did you want to deploy agents in production environments, especially in clinical relevant environments, we probably wanna have agents that can only, like, read stuff and probably, for now, only, like, non b serious, like, stuff. Right? As we move on, think the guardrails will be more strong. They will get better and a lot more confidence in them. I think I found this in them right now. But in general, think as we move through this field together, I think we have there's an option for right. I hope that does answer your question? Perfect. Hello, Florian. I'm Harrison. Yes. Yes. So I was really curious about, what have you guys set up in terms of evaluations? One thing I learned about working with agents is that as you add skills, add workflows, add new rules, it can degrade some other aspect of its ability one way or another. So do you guys set up evaluations as you add these tools, and how do run these evaluations? Yeah. Absolutely. So we have a set of evaluations we set up. Evan showed some of that this morning's We're always trying to improve them and put more things into them. Like, for example, we do have, like, an evaluation for pipeline conversion from languages, where we always have some round truth that we find, like, what are the parameters that we expect, and we run them quite frequently to make sure we have degradation in the harnesses that we apply to model. So we, yeah, we do have a test suite and and benchmarks that we regularly run to make sure that there's an integration. Thank you. Related to evaluations. I know it's not public right now, but do you have any evaluations that can particularly focus on paradoxes? Introducing paradoxes to agents? I have to say come talk to the colleagues on the IT because that's more their side. Like, I don't know the answer to that, but we'll happy to chat you about that, they they would know more. Absolutely. Hi. Really cool. Wanted to ask you, does it have any, like, biological context? Like, for example, when you analyze the results, you have to tell him, what to analyze or the same thing for the tools. For example, if you would say, please add a tool on certain technology, does it know or it will tell you, these are the tools that are generally used for this analysis. Does it have any, like, biological context or scientific context? So so the C line both with the both just like other agent tools, you they have two calls. Using, like, entropic models. Right? So they have the foundation knowledge that they would have a biology, but they can also reach out, and for example, give them a link to paper. They can go into that paper using a tool or a fetch tool. So they could read about the latest science and use that context to inform the decision on what you're asking them. Okay. And how you tested also that? Like, So so, yeah, mean, it's obviously we don't have foundational strain that are specific for a certain type of, biology. But because it's bring your own key, you could if you had, like, models that, you know, have data that you have with some the benchmarks are not, like, on my background so much. Come to us talk to them and the guys, afterwards, I'm happy to Thank you. So up next, we're gonna have Anthony Reyes. He's gonna be talking to us about Everybody, my name at and describe a use case. And so in this case, this MLOps pipeline is predicting admin properties. Admin stands for distribution. Metabolism, toxicity, which are critical properties for molecules that are potentially tested or gonna be given to a first human. So oops. Sorry. Slide there was already alright. So just a a But my background has been basically building software for over ten years. And so when I looked at the admin ML pipeline, I started to patterns across different chapter of peers. First one really quick was an asset They're doing these teams and what they're reporting. So they wanna build models to support mission insurers and managers. And these mission insurers were coordinating different scientific teams who were competing for different scientific instruments on a rover 50,000,000 miles away. And so the model is great now. But we wanna make sure that the insurers manage to use it effectively. And so you know, building ML platforms was making it usable and considering the end user. So you build your model, but wanna make sure that people that are or make use of it. Next one was for a lot of my career, building out CSD pipelines and things like Docker Python, building web apps web apps in cloud platforms. So I had an opportunity to meet a building out another natural language processing. Use case, and I was using Kubernetes Terraform CICD. So when you're when you're the person that's out of use I using In this case, this this system was a an SMS based text sorry. Scheduling system. And so there's twenty four seven depending on size organization organization structure, and maybe it's it's a big foreign company, maybe it's a small academic standout. Or a scientist with a single a single experiment and maybe a single smile stream. So I wanna quickly introduce this topic. But we're trying predict admin properties from a molecule. So the main input to the system was called a smile stream, is basically one dimensional. Technical representation of the molecular structure. And SMILE stands for simplified molecular input basically one And it was only one way to experiment one model, and maybe you're sharing some results on one VM. This is about for And maybe the tools that being used on support parallelism that the team wants to achieve for experimentation. And so ultimately, if you look at applying some production characteristics to be systems, research systems, standardization is important. Taking advantage of cloud, and there's lot of great points to say about optimizing cloud use. There's it's really easy to get the bill that's really sanitized to look at. It's very ambiguous, confusing sometimes to track what's causing spend. And so there's a strategic use of cloud in this use case here. Using serverless compute with AWS's last And then finally, combining the power of NextLook and then the seemingly infinity ability of cloud to achieve results. Slightly different problems. The one's gonna be more scalable, more durable, and being able to support more experimentation. The kinematics analog pipeline is very similar to a problem or overflow shape that you are very familiar with. So far, they see different options for algorithms. And so for the kinematics and loss pipeline, there's different models for learners. So But the parameter you pass into those models is very cool. And so you're looking at I'll also a little bit more about common source based on the search here. But you're looking at passing in different weights and different bases, different parameters into these different algorithms. So the big search space that you're trying to explore to to look at what model performs the best with what parameter set. And then lastly, the analog So I wanted to draw that analogy that So being able to run process compute being able run containers as a as a first class for reusability taking advantage of common Nextflow primitives is something that the team recognized when they made decisions to say, hey. Let's actually use Nextflow to support this. Exploration of different tools, cloud based machine learning SaaS tools, think take a bigger adder now. And so those tools just started to break under the width of the the molecular data, and I'll talk about the extension of the small string and how that gets large. It actually just had all the ingredients to support MLA. MLOs and those adoptions, but this is the case for it's possible. And it's working. And before I get the architecture, internal customer of this MLF pipeline was was actually a a bench chemist. So imagine a bench chemist is supporting lead optimization. So if the phase in drug story pipeline after it's been identified and exploring molecules that or variations of molecules that could be synthesized and This bench chemist is using a drug design tool, a small And if I write themselves, call it tool. Or CADD. And so this scientist is using a CAD tool to visualize molecular structures. And what this was essentially imagine the the model's been deployed at an inference point as a The chemist can integrate this API via script inside of your capsule. And so looking at a molecule, looking at a molecule, the integrate this API via And so they're able to use this to guide decision making and basically get a clear perspective on what molecules should be or not. And you might ask a couple questions trying to get ahead of QA here, but custom models? Well, there's admit models that come out of the box with tools like children to do public benchmarks to support, like, admit predictions
Me: Wine Yo.
Them: However, the the proprietary data that organizations have, maybe around organizations. So the big the big push to basically build, an organized data link and, being able to support training models on proprietary data is a big differentiator for job programs. So if you that at least to build models on custom data, that could be huge differentiator Second question, why API first? They have all the scientists on the on the platform. So you can get locked in, and if you use first. Here's I know the one going on the slide. So at the top layer, there's data ingestion, feature station, training, and then you got logging your experience using a tool called MFlow and open source technology. That supports hash basically storing the experiment results, the dataset that was used to train, and then the artifact path. So you can store the artifact somewhere and be able to grab that later. And the model registry here was basically a custom solution to use a KD store, and so specifically, support the full image. All of this supported by the the boring stuff like infrastructure's code, GitOps, having same release engineering processes yeah, this was, an expression of of using software engineering rigor to support science system. And so when we had a chance to build these tools, we we brought these tools to the table. And so the real special thing about this problem is a common commentary nature of the search space here. So so you have a milestone. So this is a one dimensional, very lossy representation of the unlikely structure. And so you can do is use a tool called RDKit to generate a a more different way of is basically a bit wise factor where zero or one percent expand out the information about molecule, and additional expansion information can use by generating a descriptor in RTK as well. And so the reason why we use, the RTKit information expansion is because the classical models in SK learn, they're not as SK that has no network. I'll explain that in a moment. As So they're looking at, you know, looking at CamProto, they're looking at wanting to samples. And then finally, the research space. So across all those models, Nextflow process run is essentially one parameter combination. So at a high level, there's three levels of three phases, and so this was represented in architecture that I showed. So internal assay is is extracted from database. Arguably, that's probably the most important part of of the system. Was building out a a canonical reference of smile strings in internal database. There's a of different molecules spread across the organization. So it was a big effort to unlock some of those proprietary molecules that existed in legacy on prem databases, bring it into a a cloud based databases that specialized in supporting storage of small strings for the team. There's bunch of transformations that I spoke at a high level about around generating features relative to what algorithms require it. And then there's a training validation split that happens at this point. You train your model in your nature that it's actually performing relative to data it's never seen before. The the part of the the the termination of a model is is worth more. Ortration happens at phase two. So next level basically runs model train jobs where the CPU based jobs are rammed by ECS and the GPU based jobs, which are basically what can can talk to your suppliers, is using a base batch.
Me: Yeah.
Them: And MLflow autologs different metadata metrics across each run, and serving it's simply just a it's we're using a Python based And when a model is a term that's already the remote production, it's baked into a container and served as as And in the CAD system, platform, it just automatically, inherits the label space model. And then, one the last thing that's important to mention on this slide is the scientific team, was actually validating the models before permitting. So in in my world in the past, was, auto deployed abroad and then have some sophisticated rollback capabilities at the brace. But in this case, it was an auto deploy. The scientist needed ability if it was answering questions that Ken's had. So there was a a gate that was that was basically scientist violation. This entire platform was built on open source tools. I wanna say that the open source technology is gonna never compromise here. It's gonna be durable and production ready. And there's a lot of amazing combinations of using this technology to build scientific systems. And I think fact that you don't have vendor blocking or any portable patterns are important for us to consider when we invest in building something. So really high level, just before we're not gonna be working with team. So they're doing great science before. They're doing a little bit smaller scale experimentation on those notebook or VM that they were experimenting on. So they're able to, get permission licensed latency on. So it wasn't my VM they So they're The principal, it was still away from week two a day, and then they're able to achieve thousands and thousands of different experience. Relative to the different parameter combination that they were passing through the end of the system. And they're seeing improved model accuracy. So at high level, what this production grade? Reproducibility as infrastructure. So containers, better words, are arguing tools for that infrastructure code tools like California, Pullumi. It doesn't matter me as long as it's in use. are important here. And then the ability to support true parallelization is, is a tool choice and tool a a tool decision choice, that you to to be strategic about. So using Nextflow and combining that with a cloud platform is a is a good combination. Then finally, as I mentioned before, there is no auto deploy to production. It's validated by human. To make sure that we're answering the right questions at the right time. So as we get closer to the end of slide here, I just wanna show that case that support various different scientific domain questions. Using OpenSource Cloud in Nextflow is is a great set of ingredients. Support these types of systems. So, I'll leave with leave you with this, whether from SmileStrings to, reports. Typically, the infrastructure is a problem, not a science, and so helping support robust production rate infrastructure team that in mind, we're building out scientific, systems that we're supporting scientists All all that really comes down to the infrastructure management of a lot of different tools. So if you're building new pipelines or if you're exploring, these, big scalable, or high performance compute scaling problems, let's talk after. My LinkedIn four, I'm always totally I really appreciate your your message there that these these things are translatable and not unique necessarily to Often, I think the adoption of X-ray by other alternative fields is not so much a technical problem, mister. A human problem of networking and just knowing that NextLay exists. So my question is how did you find out on NextLay? How did you how was the process of adoption NextLay within your Good question. So the question is, like, why why NextLayer for this use case? It really came down to familiarity, and it was our scientific teams. Have staff that are familiar with Nextflow. And they actually gave SageMaker and other tools a a good try. It wasn't achieving what they wanted to. And so the default is a tool that they felt comfortable with that they would permit to hit support the the problem. And so it was kind of just iterating through and and stumping on some other tools and eventually kinda falling back to a tool that for us not to solve the problem.
Me: Moi, que
Them: Next up, we've got Jason Warner from Diamond Aid. He's gonna speak to us about optimizing GPUs. Thanks, Jason. Thank you for the introduction. Today I'm going to tell you a little bit about my experience with GPUs. And from my humble background, there's a lot of GPUs here, but I'm tell you a bit about my experience incorporating CPUs into genomics workflows. A few case studies. The first being one you've heard about is NVIDIA's Fabrics is already GPU optimized. And then I'll tell you quickly about my own moving a custom gene editing workflow to CPUs, was based on CPUs. Finally, I'm going tell you a little bit about something that we're going to do at Diamond Age. Is incorporating more of the GPU tools that are involved with single cell As you know, these, the data has to get very large and to the point where you can't just run it on our studio anymore where it's helpful to kind of get this into tool down used to is Python in nextflow. But then just gonna give you a quick overall what I've learned, and maybe others can share what they learned So before I go into this, me give you a background on myself. As mentioned, I'm in Casein Warner, a principal scientific consultant at DiamondAge Data Science. My PhD is in molecular biology, I've always started around computer science and programming and quickly went into bioinformatics and have been various NGS companies in the Greater Boston area over the years. I've spent my last seven years at Diamond Age. I do get involved with various analyses for next gen sequencing of all types. But my niche is more putting things in Nextflow and putting things into other pipelines. So I think you're all very familiar with why GPUs are important. We all know them as a back back end for AI these days, but they're also getting more and more involved with things that I do, is more genomic research. So alignment variant calling, against single cell models, this is all things that it does very well. And it's more readily available now, you know. Get on Amazon, click up an instance very quickly. As long as you turn it off, you're good.
Me: The
Them: So that's why next click comes in handy. Right? You're just gonna have this transient. Since it comes up for this one process, that's gonna be taking hopefully not a very long time on GPUs. Great. So this first case study I want to go through is basically a very simple moving something that already exists. This is NVIDIA PowerBakes. Those who don't know, this is essentially a port of DHK's best workflow into basically taking those most copy compute intensive steps and putting them into running natively on GPUs. And it's essentially a drop in replacement for those. You'll know the for example, FQ with BAM. It consolidates a lot of the alignment and downstream GHTK steps for sorting sorting BAM files and and getting it ready for downstream following. So this, at first, was obviously new to me. And I found that fairly straightforward going to Nextflow, but had a few things that weren't familiar to me when I first knew it. So I'm gonna share some of those here. Just as you're familiar with setting up GPUs and I mean, sorry, CPUs and memory for your processes in Nextflow. Just have to one remember to put the for my case, I'm using the VoiceBatch, I say. I'm using Accelerator for your process. And it's also assuming you're setting up a you already have a compute environment with few views and associated AWS queue. I can use in other systems, Slurm, SPE, they're slightly different. Can use obviously, a very the headsets will tell you what the differences are, but they're very slight. That's it. That's that's really all I had do to get this going on for for one thing, think I'm just gonna mention because, again, not all of you have done this, but, just handling the GPUs, you have more than one GPU on your system is important. There can be some clashes between resource retention So you need to make sure that you're not forking. My S4SQL one in this case or handling each of those GPUs and telling them which exactly you're gonna use for which process. But, again, they're there. Are ways around that problem. Shown here is some of the cost reduction speed up. Mean, you've seen various little cut off, but the idea is that if you have your cohort large enough is well worth it. I recommend it. Can have the 10 x speed up and cost reduction. With very little work upfront, which is great for our clients. But if you're only using a couple samples, obviously, might just get better off what you're doing before. I find that unless there's 10, 20 samples within your set, maybe not be making worth making the shift over to GPUs. Depends on what your access is. My clients have raised accesses. We don't have always
Me: Okay.
Them: Secara, and most often do not. I would love to have it. And especially secure AI, that was pretty amazing. So like the take home messages really for me is to handle your GPU resources properly, making sure you're accounting for that next flow environment. Make sure, in this case, the standard workflows are already GPU optimized. You get up and going very quickly.
Me: The
Them: And, also, I think I already mentioned the the sample number issue that is just you might be spending most of time just for overhead and setting things up if you're only doing a couple samples. Might not be worth your switch. Okay. So case study that I'd like to look at is this custom workflow. So most of time what I'm dealing with is is writing our own custom workflows incorporating into existing workflows. So this one is one that we made that had a mapping step in there that was slow and also incorporated some downstream Python scripts that were custom made. So what we found is that very easy to swap in, say, SQ to BAM. Mapping was done very quickly, but you're swapping in. You're switching from one instance to another instance GPU based, and most of the downstream steps after that were slow Python scripts. So idea was we're going to go in and modify these Python scripts such that they were also GPU compatible, but this case, the client was gonna wanna spend the time and money to do that, although it would be interesting. But it just gave me just I learned that before you even do this, I just wanna make sure that everybody's on board with moving everything over the GPUs. This case, the speed is only was very modest. Because you end up spending a lot time switching from a GPU instance to CPU instance. And in my case, wasn't using WAV, so it's
Me: What's
Them: downloading and moving very large files around. So my take home from this is really to profile first. Explore lots of tools to help you do this, figure out where your bottlenecks are. In this case, yes, the mapping was done very quickly, but, again, unless you're gonna go and refactor your Python scripts, it wasn't worth it in this case. Finally, just want talk a little bit about single cell NRC. We do lot of single cell work at time and age. I'm probably one of very few that do it as a analyst, but I get involved with the workflows. In this case, we're gonna be moving over to since these datasets are getting so huge that, again, it's not always feasible to do this on your laptop. We're looking into RAPIDS and CSVI as far as tools for using GPUs and getting things down from, say, hours to minutes. This one this one's here just because it is the biggest bang for the buck. There are other things that are now being available for a single cell. Our group tends to be, again, traditionally our base for this type of work, we're moving more towards Python and GPUs and things that gonna be a lot more streamlined for things like just briefly, I just want to go over some of things that I learned during this step is just, again, you can make these hybrid pipelines work for you, but I would really recommend staying within GPUs if you can if going to do this. I just found that going back and forth was not necessarily helping me unless the step is obviously mostly competentially is made for GPUs, there's already optimizing GPUs. And obviously, profile before your provisioning, make sure you know where two bottlenecks are before you just jump in. And change things in everyone's on board for refactoring or not refactoring. Handling the resource contention was one thing I learned. And also just if you're going to move over, you can't put everything into a GPU instance, obviously. But if it's going to be running for a couple hours or anything for it. So it's
Me: nuevo.
Them: again, just making sure you're you're if you're being smart about how you're gonna be using these. All right. I think I totally zoomed through this. I just wanted to stop here and stop and stop your questions. So thank you. Okay. Thanks, Jason. Any questions from my audience? Just a quick question. When you need to run multi four GPUs, at once, how does NextO deal with this for you? I think for the to be honest, like, think I didn't have to, for the most part, that that one GPU was enough. But, I didn't have the the resources available to just test out all those I can't say, have you run into? Issues with that? Yeah. No. No. No. Just just trying to I also did run only one GPU, but I'm just seeing, like, I think this is the biggest when you need to run. Maybe 20, 30, 40 GPUs points for a distributed problem. Like, don't know yet how next 100% I was wondering if Yes. Sorry. Don't I don't have an answer for that, but I I I look in all possibilities. Sorry. Sasha? Yeah. Great talk. On the GPU instance types, is there any specific, like, types that you tried? Have you set outside the CUDA garden and looked around? What's been that? No. I stayed stayed in CUDA, but I did try other, like, high powered instances. I just I I for example, like, the multiple DPU instances. But for the most part, my use cases didn't really require it, I didn't really have a lot of leeway, like, as far as money spent for that. But there's definitely a lot of different things that can be tried to have. So Awesome. No more questions. We're gonna jump into a quick fire, post decision rounds. Thanks, Jason. So first up, we're gonna have Alejandro. It's gonna be joining us today. And take away. I believe we've one slide each. Alright. Okay. Well, hello, everybody. My name is Alejandro. I'm a competition of scientists at Sanofi University. And thank you for your organizers and presenting our poster on a new Island where I work on the regulatory mechanisms that orchestrate genomes across we've been looking at, like, the role of different different transcription factors finding size half in specific species. But the problem, the challenge is that transcription factor binding size are very transient, and usually they have done over the age of almost, like, five million years or so. So our solution that we propose is to use regulatory potential where we, like, inquire whether different promoters have, different bounds for specific, like, transcription factors across species. And we have, done this throughout, like, thousands of transcription factors and different, like, genomes both from NCBI as well as newly annotated and sequenced genomes from Toga. And what we found is that, specifically looking at genes at the scripts the that are associated with oxygen sensing, which is a very ancient like pathway in in is that, we see, like, a a pattern in which, different, like, marsupials and monotremes are very different. For example, from the rest of the placentals. And if we explore specific genes, like, related to metabolism, throughout the PCA spaces, what we found is that different lifestyles associated with diving or rapid metabolic rates or so, they have specific circuitry for each of these different groups. That is more or less conserved through, like, stasis while they decide more I have a model of equally within each of these groups. So I invite you to come to our poster if you have any questions. And yeah. Great. Thanks so much. Thank you. Next up, we've got Our lab's research focus on, primarily focus on pediatric leukemia. Research. In the past few years, two years that we've been using pegilo long read DNA sequencing to uncover not only genomic insights, but also landscape and molecular response of chemotherapy in vitro. So today I'd like to bring your attention to this upgraded NF 1.1 that will be released soon. I've been using pipeline that's released early last year by Tanya Chen. And while I was using it, I think it has a lot of room to can be improved. So I the last few months, I added more features, more epigenomic components to this pipeline. And that includes the selfish, is the new structured varying color developed by PacBio. And I also add HiFi CMV that is for number of variants color developed by And also I add annotation components to it to annotate all the variant calls, including, you know, the small variant indels, small indels, structured variants, as well as going over. And another component I added to is methylation, like PGPGCPG rules. That's for per CPG methylation scores in SPILOP. And last one I adding to it is a fiber tool that is specific for fiber seed that has protocol for RNA methylation on adenine basis. It has been very helpful for us to identify to understand the components structures and regulatory elements. And finally, I most importantly, I'd like to thank you for people who are reviewing PRs and answering questions on select and, the forum. I deeply appreciate it. Without all your support, can have as much fun as I am now. So thank you very much. I'm looking forward to talk to you later. Alright. Thank you so much. So the community is a absolutely great source of of inspiration as well as support. We We next up, Aditi is gonna be talking to us about finding the protein in Hayeson. Okay. So image. What you can see is a beautiful microscope. I think that's when we saw it. Or what I found about biology when I
Me: Oh,
Them: I think that's all of us right now. Need a gigantic microscope that leaves the clouds and has pipelines and computers. pipelines and computers and sequences. Then they use the microscope. You put something in
Me: Oh,
Them: set up, and it takes multiple people in departments. And so I take care of build something, but we like to call autonomous case Alright. I mean, there's a physician. coffee, and then we're gonna be back.
Me: 보고면 但 하고 나서 되시 많어서 뭐어서. 제요요시 하기 Okay. I 예시기 님 많 도에잖. 도에잖. Okay. 예지면 거지는 거요는 거요 도이잖 도이잖. Isso é pra mostrar I care
Them: Okay. What if we could Pipeline ecosystem zones. And Bob has really been a key part of our community for a long time in there, and he's smelling also for his excellent dress taste. Alright. Hello, everybody. Oh, let's see. Nice nice easy. It's last session of day, I I asked an internal model I've been working on I've been working with for a long time to give me few jokes to give you all. So you better get this one, Phil. What did the Buffalo say to his kid when he was going to school? Yeah. What do you call it cow with no legs? Yeah. We got some beef. I love it. And then I said ground beef. Then I asked it to give me, you know, some of the any sort of public culture I said, leave from me. Like, given to you, y'all can remember this the rest of your lives. So we do a lot ways wider surveillance in public health, so that's a take them to see what's in there. And, you know, you you really only have any two reasons not to drink water. That's number one. Number two. So now that I have y'all full so, yeah, I'll be talking about how I'm attempting to avoid slot building up in AI, and and back to being all that fun stuff. I'm in Wyoming. I'm prime practitioner at the public health lab there. It's a great lab to be with. I absolutely love If you all every time visit, will take you to pet some those biceps and feed some of those biceps. But full disclaimer, I'm just some dude with a subscription to cloud or Codex or whatever it is that we're trying to maximize and as I can in that five hour window before it says, hey. Take a break. No expert, but I think it it would be kind of fun to share my experience of making some of these mistakes and changing my thought process over the last year. So as I developed back Tokyo version four. So, like I said, a public health biopetition. I work in public health labs. You all may have heard this thing called COVID. During COVID, we sequenced millions and millions and millions of genomes, and then, you know, we were like, should sequence other genomes. We were already kinda doing that, you know, the the general public learned that more. But genomic surveillance is a valuable tool for us, for public health. We can monitor, evolution over time in some of these, pathogens. The COVID surveillance was used to help develop vaccines. But over over this genomic surveillance kinda boom, many polycalctinib labs now have plenty of sequence in power. They have people to run these sequence. There's no problem. You give them a bug. New bug. May be hard to crack open, eventually they'll get it they can sequence the DNA. But what many of these public health labs are not equipped with, it seems like coscientists kinda solve that. So they're not equipped with in house by physicians. They're not equipped with people helping, talk to IT to say, hey, we're not building a a eval server. We need paraboles of data. We need huge computers. We don't need a small box you can sit in the room. Even though sometimes I wish I just had a small box that I could just use in my own book. And then most of the time, people in public cloud's lab they're wearing, like, several different hats and all at the same time. So don't necessarily want to have to run super hard pipelines. So as a developer, my goal is to make it as easy as possible for them to run these pipelines. Mostly too because I wanna be able to run them and not have to think about it. So I when we developed Xtopia, we're developing mostly for ourselves to kinda answer our questions. We wanted there to be a lower area of entry to run those. Spoiler, it's built using Nextflow. I think a lot of that low entry to the barrier comes from building it with NextLow. A lot of stuff that's use to handle as a parameter, all the infrastructure, all that, you know, handle data, passing data. NextLow just does that for you, which is quite nice. It's easy to install via Conda. You can run out any of the containers. That fun stuff. Can run on a laptop. Oftentimes, people don't have their compute infrastructures. They have whatever somebody brought to them. From The US because laptops sometimes are much cheaper here than where they are. And I hope this changes over time, but there you know, there's this rewrite bios is quite expensive too. This consistently, like, tools are developed as student projects. Students graduate. Students have to get jobs. Those jobs don't pay to maintain those tools. I've been fortunate to be in a situation where I can continue to develop. Becktopia. I'm not gonna go through the whole pipeline, but this is, the end to end pipeline of that horizontal blue line. Is kind of the main pipeline. And then everything else you see are pipelines that you can run the automatically signed outputs of that main pipeline. Overall, this includes two fifty or so module sub workflows and workflows. And those 70 workflows are more or less independent pipelines now. My hand got kind of forced on that. But they are state-alone pipelines now. And, you know, I'm in Wyoming, where it's a very small lab, it's really cool that we can build something through the the seamless and the ease of NextLoad that many people around the world can use. Like I said, building it for us, other people are using it, which is really cool. Those are other public cloud researchers and students, sequences centers in industry. But one time, I kinda gave my spiel. Oh, this back up here. This is the project I've been working on the last ten plus years. And someone said, oh, so you have hit my bus problem. And I was like, not wrong, but also I'm in Wyoming. We don't have very many buses. We do. If I had to keep a negative spin on it, I have a hit by going over semi problem. But to put a positive spin on it, back to get it does have a Robert Wong the lottery problem. Although, now that just gave me more money to burn on tokens, so maybe Robert doesn't. Because all this agingtic talk says, hey. I should be able to solve this. I can just start an open call or Hermes or whatever the next one is. And just feed it. And then it'll figure out everything it needs to figure out. And I think these slides are two weeks old, which in, like, AI terms is back in the when you talk to a old biologist professor, before the IRB, we could just inject ourselves the test. That's how I feel like this is super old compared to what's available now. There's been multiple frontier models. But I gave this a try, converting back help you out from its very unstricked syntax to nexo strict syntax. And it worked so well that I ended up just doing it by hand. And, you know, in the twenty twenty six, Robert looks back at 2025 and says, it was user error. It was not, the models. Yes. Models have gotten better. The tool has gotten better. I I thought AI will solve everything. I just gave it everything and it didn't solve everything. So I can go back to the drawing board. So that's why came up with this. Yes. I made this. Not not some algorithm. But this this start relative or this this feedback loop, which has been kinda hindered at all day. But this idea that instead of feeding a monolithic context file that tells you everything you need to know about that tell you, just tell it what it asks for. I went from information to very specific use cases. When you need to create a module, the tool doesn't support compressed inputs, is how I want you to extract them and then pass them through, all that sort of stuff. Make anything I can make machine readable. So there's many indices now to kind of tell the LLMs everything it needs to know based on the context or my prompt not everything everywhere all at once did it do. And then because it's a loop, as like Kevin kind of mentioned, it just compacting in a fixing. Like, becomes self directed because that loop starts quite wide, but as you keep iterating over it and improving it, starts becoming quite small. I have set up plenty of guardrails. When I said just we saw the world. It did not, and it a bit frustrating. But I said, hey. This is what want to do, and here's ways to make sure you're still on task. So I I migrate all the Meta YAML stuff to inline Groovy doc. So when they read the next file, the Groovy doc is already in there. I created custom letters, which is funny because we've using letters forever to kind of make sure that the when we develop stuff, we still develop it. We want non creating a letter to tell the LLM, this is how I want it. And that test is tested on all modules, subwork, close, work, that gives that kind of, like, you better be able to redo this type of deal. And then create about the CLI tool in for deterministic outputs. It's it's funny you can ask all of them the same thing, it just recreates the problem every time. If I say do this, it does it, then use the script. But also have to change from mindset. They go from a very this large thing to a small footprint. So start with a plan, working very small phases. Kinda like what I should've doing in a in I I would've done it. But then I I gave OpenCall and Hermes all that all that time. Those kinda introduced me to skills. And how to properly use those. So now I implemented skills both users and devs. So there's an add back token tool. When a user wants to create add some of back token they could directly run that tool, they'll create all the files that is more or PR ready for me to review. And then get my last bit on it. And then finally, I think humans should maintain ownership. Just to be clear, I am the human here. So will maintain ownership in Baktopia. I think I I will talk to Talibut it it will always be mine. So here in each of these steps, I've been, you know, reviewing the changes to Codebase, identifying inconsistencies and the prompt performance, and then expand the CLI tool when needed. And then if I find myself doing stuff for Q2, that becomes a skill. We need to keep redoing that. And we can let 20 sets of four broad record types. Imp has not withdraw your records, but it would suggest to take that metamab and turn it into a record. Which is not a hard problem, but it's a tedious problem. So I had to update the context docs. Basically, now this is what a meta record looks like, not a meta map. But I had to set up guardrails, so I had to update the linters, update the test, and now take a meta record input, a meta map. Update the validation, that sort of stuff. Then I did this in phases, module, subworkflows, workflows, that's redoing the docs, updating the docs, running the tests for all these. And so like I said, it's a simple problem but tedious. For LLLMs, this is not very hard. Just keep doing it. And I've I've set you up for success here much better than did in the past. But at each step here, it just like a go figure out thing. I was updating the docs or the examples, walking through each of the changes, making sure they're still going right. Then making the needed revisions while in the loop. So creating those tests, those tests, all that. It turned that, which would have taken me, you know, a day or two of just manually doing it because I had to do the modules, tests, docs, that. Obviously, that didn't take LM very long. So for me, that was kind of like a, hey, I iterated do some stuff that it actually works quite decent. And for it was it was a much improved experience over my previous 2025, and I think that was a lot of I made mistakes along the way, I learned like, oh, don't do that. And now I'm not shy to say, stop. This is going wrong. But it improved it so much that when twenty six zero four came out and brought all these static types, these strict syntax, and record types, I was ready to do that in Backtopia. And so I'm happy to announce that Backtopia is completely rewritten for twenty six zero four. Stricts and text, tag types, record types. Was nearly complete rewrite, bunch of changes. But I think it's a much better position now. All the enough tests and every stuff. And expanded ecosystem. Expanded the back of your pack of Python package, created a plugin, are pretty cool. I it the think for other people, it'll be easier if they wanna use LLMs to get started using Betopia and add stuff if they want. With me redoing the pull request. With that yeah. I wouldn't sorry. Like to acknowledge any folks don't source software. The user provides feedback. Colleagues in Wyoming Taylor, Elie Marin, And I'm happy to take any questions, and feel free to ask me for a sticker or postcard. I got you on the postcard game. Can you elaborate on what the AI ready codebase looks like and how it's different than, a typical software product? For me so you gotta keep in mind. I'm, for me, it's I've given it enough context for it to find what it needs to find. Right now, it's mostly Claude because Claude's at the top at the moment. I think if you're using cloud code, has all the files to say, you wanna talk about modules, initial context will be able to they'll able identify that context and say, oh, modules in here. I go here to find more context about modules. So for me, it's more not necessarily like AI on the it's more AI on the development side. Think that the next case is we have a framework. Playing around with back Tokyo, but outputs are where the interesting stuff is. And I haven't I haven't been in a situation where really got to focus on outputs. And I think kind of twenty six zero four forcing my hand to, like, stop doing the stuff I was doing, and back to me to just make it work. And now I'm making it much quicker. It allowed me to put a framework together where that's not as important as the outputs are now. And not saying outputs are never important. Were always important. But now we have time to go to those and start doing stuff on top of those outputs. Do you find that you defect door files like nested directories and things like that for I think next step is not specific to cloggers. Eventually the subsidized subscriptions will go away. So you help us more about your custom inter? That's not very interesting. Yeah. So so I have specific ways I like stuff to be. Like, when you run the language, there's a harsh thing to make sure they're aligned. So I have ways I like to develop stuff as well. And it's like, I wanted to be like this, that way whatever you're doing, seen this enough. I can see the patterns, but also in doing that, I'm creating that rules that say, hey. Here's the pattern I'm expecting. Be sure you have that. Or here's what I expect the review docs to. Be. I want at most of this, at minimum that, here's where I will accept there's no test. Like, it's a database download. It's kinda hard to always test the database download. It's hundreds of gigs, and you have to worry about that. So that is kind of like a hey. You may change this with terminal inter c. It works. It's building the Python package now, but it's within the NextLoad code. Yeah. How how do you do you write the linting rules by hand, or do you like, to write linting? At this point, it's it's a lot of in review, and these are the rules I want. But when I have very nicely defined structures, it's easier for them to write and mean not to remember byjects. You said that the three write was something like a 135,000 lines of code. Yeah. Yeah. You review that all. No. No. So most of it is adjacent scheme of stuff, because previously, all those spectral features were one cramped workflow. Now they're all independent, so they all have own schemas and all that. So it looks like a lot, but it's it's mostly scheme of stuff. I I could just look at the module config for that. And final question for me. It was The groovy doc, I'm really curious about. It's actually something we discussed contents of what we have in the MetLyaml file into the greet log. You you said it makes it think for me, makes a difference. To the human reading the code, know how to open up multiple files. They're all there. So if if, like, I'm in the terminal and I I'm an Emac person that's I taught you just to go. I open an Emac there. But for the LMN, yeah, can I can read the next file and say, oh, it's always there, but saving that that off chance that it decides to not read it or read the wrong thing, it makes it easier? At least I think that while it reads the the next code, it's while the It At I Next up, we have Yes. Nair Adams, they're joining us from DSK. You talked automated science and computing. So today is part of the is of the So Hi, everyone. My name is Janae Adams. As introduced, I'm part of the Data Automation and Applicate the data automation and political sciences, group at GSK. My background is computational biology and data science And today, my talk is about what happens when you treat your as infrastructure and, what, that unlocks for discovery. And so, I'll start the talk with, a little bit about how we're solving this workflow integration issue, how that manifests in the pharma setting, then go into some of the technical and cultural, foundations we set for success here, before I, just give you some takeaways of we're thinking about the future and its age ethic systems and, automation moving forward. And so, first, of course, just want to thank all of my collaborators. My teams work on, these tools at GSK, both past and present, folks here. I mean, teammate, who's a mathematics leader at GSK. All the maintainers and contributors to our tools are very important. But really, everything I'll discuss today, the foundation has been led by, who's here. She's a former mathematics leader on our team, and Mike Gonzalez, who's a current, AD in genomic technologies at GSK. And so, first, just want to really set the stage for the ultimate motivation in pharma in that we have patients, waiting at the other end of the work that we do. So, drug discovery, for instance, takes ten to fifteen years from target to approval. Under 10% of drugs, that enter trials actually reach patients cost over $2,000,000,000 per approved medicine. And a significant fraction of that time is, and timing cost isn't always science actively happening. It's waiting on data to move. It's waiting on pipelines, moving across teams. And, really trying to centralize a lot of information and knowledge. Which is sometimes trapped in silos. And so I really think my team sits in a unique position of really being able to, make the greatest impact in this space, by innovating on the infrastructure that works for the future at scale. And so, I'm sure most could appreciate that I'm sure most people here could appreciate that scaling in from R and D, environments is much different, than doing so maybe in an academic lab or an individual, company. And, really, it's the scale. It's the regulatory environment. It's the number of teams, etcetera, that are really all different and, GSA target discovery spans many different domains. That's genomics, proteomics, imaging, phenotypic screening, computational chemistry, you name it. Each has its own tools, its own data formats, its own execution environments, and often it's its own culture. And so the problem wasn't necessarily how do we build more pipelines because teams are very good at this point. The problem really surfaced at enterprise scale the form of interoperability. And how do we make pipelines that were built by different teams in different contexts work reliably together? And also, how do we make them trustworthy to people who didn't actually build themselves? And so today, I'll talk about how our OMIC's Workbench ecosystem, emerged as a response to some of these integration failures and, presented some leading solutions for us. And so, Nextflow is really essential to what we've been able to build at GSK. We chose Nextflow because it offers portability across the cloud, HPC, and containers. It, offers consistent and reliable execution. And, in a regulated environment. These are not just nice to have. These are definitely requirements for us. Because we really need to know across many layers what ran, what are the inputs, and we'll be able to track that. And so we believe that, you know, many companies choose Nextflow for these reasons, this isn't necessarily where, companies may differ. But the challenge really at enterprise scale is what happens around Nextflow. And the data management before, and the media and and governance after it, and, really the integration layer above it. And so that's what you see on this slide. Next flow is the main execution layer. At the foundation. And what we call our Nextflow pipeline dialogue sits above that. And really it's where we infuse our standardization logic and metadata across pipelines that are developed at GSK. And our only workbench is a scientist facing also UI system that sits on top of that where pipelines can be searched, they can be launched and integrated with other data products at GSK. So you can imagine we also serve a lot of users in that sense. Know, not everyone that might come into contact with Omit Forkmenge knows the intricacies of the next pipeline that was developed. But really the vision here was to streamline that deployment to diverse workspaces for more efficient data processing and to meet a wide range of target discovery needs. And so Nextflow solved this portability issue, and our own network ecosystem is solving the usability, trust, and and scale one. And so I want set the tone now for emphasizing the cultural and technical, foundations that are proven to be important for OMS or guys to succeed. The first are our next level development really, there's one template. Which are curated and maintained sort of starting points for all of GSP Nexo pipelines. That also help us to encode those good practices. So anything related to error handling, other logging conventions, other parameters, parameters, New teams and developers sort of start fast without having to reinvent the while they're actively, trying to process data. The second is really disenforcement and communication of the shared standards of design. And this really pays off, when helping to the pipelines or when a new collaborator needs to onboard quickly. With this without this, also, downstream models can't properly all that information. And so, then finally, we maintain contributions to a Docker image catalog. That really helps to eliminate a large, class of reproducibility issues across commonly used mathematics tools. And so these are similarly small pieces of, standardization that actually add up to to big wins for us. For example, the templates help to scale organizational alignment and not just a reuse of code. And this also makes it possible for, say, 100 teams to coordinate on that shared logic. Lastly, all these are supported by cultural dependencies of a thriving developer community, that actually needs to be nurtured. This means that we host, weekly Nextflow development office hours for all developers. We have periodic GSK Nextflow community check ins, and just constantly communicating standards across teams in many different ways, many languages, needing that translation. And so, we're constantly interfacing with these teams that interface with Nextflow, for the target discovery needs. I also now co lead this group of, Nexlo core team developers who are, skilled individuals within GSK who are well versed in NEXLO and dedicate their resource to these office hours, helping with their catalog releases, and really just fulfilling the needs of the community across the matrix. And so every company, solves the before and after next flow problem differently. And GSK chose an architecture of workspace level governance, team ownership of data, and a layer for metadata incontinence. And that stack looks like something in the middle of GCP, BigQuery and Securitas. And our pipeline catalog is a curated collection of validated reusable pipelines about the GSA. Each of these pipelines encapsulates, domain expertise. That may have taken months of scientific iteration. And at enterprise scale, this pays off with reduced adoption barriers, consistent quality across pipelines, and shorter time to insight that positively impacts overall program timelines. This diagram here, devised also by Francine, shows an early representation of GSK's tech stack that supports the foundation of homework bench. Starts with, users that could, initiate these Nexo pipelines running code from GitHub repos again built on those Nexo pipeline templates, so that every pipeline coming in has a consistent in known structure. And on the right, we see Nexo hints off this execution to one of two compute environments. Mainly a Google Cloud batch now for those larger scaled conference, but also sometimes for us developers. Can also be locally on a laptop in a local environment. And so secure also provides the orchestration and monitoring layer. That at this point, most pipeline executors interface with when they're running the module pipelines. And finally, the computer images now mainly come from, again, our artifact registry, which are images that are pushed from our maintained catalog, giving us the confidence that, every execution is using vetted reproducible programmatic tools. And everything, Google Cloud Storage handles the data, meaning the inputs, outputs, and other intermediate files. And so this system serves both, pragmatics engineers who are building and maintaining pipelines, as well as the advised scientists and analysts who are running them. And also further highlights the ability for this architecture to sort of go beyond execution and serve different users with different needs from the same shared infrastructure. And so the architecture diagram you just saw explains how are deployed and run. And this slide highlights what makes them usable by machines, which is important distinction, I think, in the main of many talks today. So on the pipeline catalog was, has really four properties, that make it machine readable. Firstly, every pipeline is versioned, meaning that there are traceable, release tags that help to eliminate ambiguity. Second, every pipeline is typed, meaning that inputs and outputs are formally defined. Which also means that we can somehow validate that before anything executes. Next, every pipeline within the catalog is can be queried programmatically and is discoverable, and we'll see how this eventually allows the right pipeline to be surfaced appropriately through other unmediate systems. And finally, every pipeline is modular, and its predictable behavior allows us to change them reliably and these four properties together are what allow AI agents to do things like recommend the right pipeline for incoming datasets, or orchestrate a chain of analyses via the Omicron Edge API itself. And so, here I just wanted to very, very briefly highlight, that like many organizations, GSA is innovating, excuse me, closing the loop between experimental design execution and learning. And the core idea of or lab and automated loop is that instead of science and teams moving manually between each stage of an experimental cycle, WILL connects these stages into a continuous and self improving system in AI and analytics can help to refine experiments, hypotheses, and automated lab platforms that execute it. Further, data can be captured in real time. Standardized analytics can, interpret the results. And the models update to inform the next round of experiments. Here, the main takeaway is that is helping us to envision a framework where, we can predict first and just validate in a smarter fashion. And the next pipeline catalog is one of the substrates of how are enabling Lyle at GSK. Really gonna get a more standardized machine pipeline, catalog that lets agents propose, execute, learn, and reduce that manual intervention. And this is with inReach because we set the foundation for building those pipelines ahead of time, and automation is, at this point, naturally following, through the catalog's API accessibility. And so, building on the, foundation of, trustworthy pipelines, line for this slide is really just demonstrating why GSKC's A2C systems as the future. From top to bottom, we can see, that the pipeline catalog at the top is here to represent it by three example pipelines, say, a long read, RNA seq, variant calling, maybe some sort Really just to demonstrate the breadth of the domains here. Each pipeline, again, is typed, is versions. It's It has defined inputs and outputs, and this information exists because our only four bench infrastructure enforces these requirements, and that is a structure that's inherited at this level. Need that, we can imagine one MCP server per pipeline, and each server is packaging exactly what a language model needs to use in order to use that pipeline safely. Meaning, what it does, how to invoke it, what parameters it accepts, etcetera. And, critically, these servers are simply exposing structured governed, context here. Which is basically acting as a bridge between the catalog and an agent. And at the bottom, we could have, for instance, a scientist, be able to make plain requests such as run RNA seq on this nano dataset. And that goes to the, LLM engine, and, this model is further constrained by the fact that it only has the MCP servers as its context, only pipelines that are already in the catalog with these known interfaces and governance are actually being accessed. It can't go outside that. They can't, you hallucinate your pipelines What it can do is select the right pipeline, configure it, using a published next level pipeline parameter's emails and trigger that execution via the API. So this maintains the same structure of validation and provenance in the same audit trail as if a human may have this pipeline. And we're putting in these constraints to ensure that agents can't necessarily, again, pollinate new pipelines bypass validation, operate outside of these approved interfaces, And in practice, what is unlocked for us is a more automated way of selecting pipelines, configuring them, changing them, and really just improving the scientific basin system here. And so, everything I've just explained so far about the MCP servers, the LOUP, and so forth, this is just a quick example I was going to give on, what that looks like for, our long read RNAC pipeline that's in production. If we start with a pipeline that is taking in fast queues and basically outputting counts, we can imagine a system where, we could use the MCP server for this to further enable downstream analyses. Automating those counts going directly to differential expression analysis or pathway analysis. And so forth. So that's what we're, envisioning here today. And we can define ahead of time what that chain looks like without needing analysts to constantly build this as they're trying to, develop their analyses supplements. And so, this, really allows us to use this pipeline as true infrastructure as sort of a building block, not just something that sits in the library. And we're just really excited about being able to build on these capabilities. So finally, takeaways. Everything I've shown today come down to, think, three things that I think you can take away with, take with take home with you today. First, as I just mentioned, really treating your collections of pipelines really as data products and not just static libraries of pipelines that just sit in a listen and have have nothing to show for them. But I think this is really the separator of between pipelines we can build on in simple scripts that we just share within silos and teams. Second is making these pipelines machine readable, as is the theme here today. Not just human usable. Having these contracted inputs and outputs really allow us to do this at scale. And allows systems to be able to translate and factions. And also want to emphasize the ability to share schemas alongside pipelines and not just the code. Because really the next layer of automation isn't built on these individual pipelines. It's on the shared standards, on agents that can reason over them. And I think the specific makeup of your tech stack probably matters a lot less than that deliberate choice to making tools that work for your community. And a lot of the tools and knowledge for how to do that, is really in this room today. So thank you all for listening. I'd love to pick any questions and connect with you more on these topics. Thank you very much for a fantastic talk. I think there's a lot of conventional evolution going on here like a lot of similarities in and and a lot of inspiration there. Any questions Hi. So talking about typed inputs and outputs. Of course, parameter teams have been around for a long time. But with the outputs, I'm curious how you guys are modeling and validating those because for a long time, there hasn't really been a way to do that in next flow. Pipeline output is just a directory, which is not very structured. We've added this output syntax, but that's a much more recent thing. So how are you guys approaching this for the pipeline Is it just schemas, just like parameter scheme or maybe something different? Yeah. Think that with the combination of just SME domain knowledge, understanding what we should expect from these pipelines and just building that into those eventual MCP layers, So I think that's it's definitely a continuing conversation, especially as that relates to downstream, like, ETL and stuff. Are we just dealing with that in general. But it's a good question. May maybe just a first. What kind of things do describe in these schemas? I mean, is it the files that the pipeline is expected to produce, but presumably more metadata than just that? Yeah. So there is the the next pipeline schema itself, and then for the metadata file that the pipeline catalog needs for the pipeline, it's the repo link to repo, the version, you know, what, test data or configs there are, kind of a combination of those things. Noticed that all NFC or Apple snuck on to my boss. I was going ask, I mean, a, how long is it taking? This is a huge amount of work and infrastructure you presented. Like how long have you been building this for? And how much used it like NF4 component thinking or is it completely different for? Well, we're trying our best to mirror NF4, not just internalize NF4 pipelines, making sure that they're readily available for scientists, also, eventually start back to NF4 community from GK developers. I think Frank can answer more of how long it's been in progress, probably at least five years in the works of just laying the foundations for catalog that can be built up built upon. But that's a good question. No one come. Yeah. And you mentioned your template is open source, I think. Yeah. Ish. Yes. So people can contribute people can get PRs into the template. Most of them come from our data platform team, that are actually working toward integrating the template with other other data products and, engineering infrastructure. But, yes, we're constantly taking feedback. Most recently, a lot of our pipeline development is moving outside of just omics. So people that are, you know, doing other sorts of, you know, bioinformatics analyses, making that stuff a little bit more accessible to people that don't need, like, MultiQC or maybe don't need some of the building stuff that we kind of eat in there. So it is a conversation what that looks like as the as the developer base continues to grow. But, I mean, we have exactly the same thing in the Like, what's this, do you language reference thing? I'm doing quite a mix. Right. Right. Yeah. The data itself. So you standardize a lot on pipelines and and how you run them and how accessible they are to users. What about things like reference genomes and other data that is continually and across a user base, you don't want them to have local copies of things. Want to reuse that stuff over and over again. Similarly with containers and that sort stuff, how do you stream on that? Yeah. Excellent question. That's another, like, 5% of my work. So we do have a central reference, like, and also ongoing efforts now to to standardize and unify all reference files across GSK. But mainly, all of our pipelines can read from a GCP workspace that houses all our reference genomes across organisms. At different engineering stages depending on, like, the level of the workspace. For most part, we've we've definitely centralized that. We actively maintain new releases of genomes, continue to communicate that with the community. But, yeah, for the most part, it's pretty centralized at this point. I have one more question. Yes. So that was actually Sine's. I'm the one guy GST and I protect so Dinay's taking over the work, we started this in 2022. So I'm very excited to see where Zakira's heading because we have to build everything from scratch. Literally. And so for the reference question here, we actually within the template, there's reference config. That's a big thing. So we make sure whenever anyone wants to start a new Nextflow pipeline at GSK, they know exactly all the references, all I mean, everyone's on the same. Do you know? And hopefully not using ninety seven ninety. Thank you. Okay. Picking a keynote speaker for the next week's Summit event is one of the tougher tasks that we have on organizing these events. And but this this year, I think it was me to reach out to to Tommy on LinkedIn. Was delighted he said, yeah. I think many of you will be familiar with his name and his his profile picture from social media. It's always been on the five classic scene for fourteen years experience. And I think we've bumped we past many times on posts and commenting each other. I've never met in person for now, so I'm really, really glad to have him here. Then finally, come extremely well known for, kind of advocating for educational resources and resources and and sort of not kind of glossing over the the small things. That's what I kinda like taking your post. Know, like everyday challenges, which we all go through. And and making that visible to people who getting staffed on their career path, which I think makes a huge difference. And I'm quite sure that some these posts engage with have really touched the and impacted the career paths of many, many young bioinformatics, students and and career paths. So without any more further ado, Tommy, thanks for joining us on the today. Thank you. Me from my blog post. Okay? But there's still some people don't know me, I still got what to do. Okay. Let me see. Yeah. Thanks again. Feel for the nice introduction. And know you're hungry by the different jokes, but I like, Robert. I'm gonna talk about this topic which is being near to my heart and reproducible computing, and I hope you'll make the most out of this talk. So initially, I put the title good enough practice for good useful in age of AI, then I think of my I thought So by the way, I'm a mathematician, but self taught mathematician, I was trained in a multi cancer biology lab. I just applied some of the tips in that I collected from the last ten years for today's talk. So we got a problem here. 95% of bioinformatics analysis cannot be reproduced. Okay? This is according to He is a bioinformatics professor at UC Davis. So of the papers I read, approximately 95% to clinical details necessary for replication. But you may think, well, that experiments are hard to reduce readiness. You may use different reagents. They can keep handled mice. But by how computational work is also so hard to reproduce. Right? And we all know how scientific method works. When we make an observation, we form a hypothesis, and we perform the experiment, analyze the data, we put out findings and then invite others to reduce the results. However, there's a a reproducibility crisis going on. K? Methods and matters both for academia industry. On the left here, this paper was published in science, and in the meta section, description of their the metaphor, detection fusions in cancer samples. Right? So they just used this big, description of the way intubated multiple to detect, cancer fusions. Right? And I know from my own work, the the features really matter, right, when you do a RNA seq fusion detection. Without detailed That reasons like tools, versions, or GitHub repositories, it's really hard to reduce their results. So on the right here, so I'm now in industry, and it's not uncommon to get a message like this. Can I have this figure broken down by Cancer Stage investor presentation or board meeting at 10AM? Now the problem is how can you quickly reproduce the same figure? First? And second, how you can extra depth new h requirements and quickly generate results. Right? So reductivity matters. The stakes are high as well. So some of you may know this or remember this, this The researcher at they actually falsified no. Actually, they started clinical trial based on this flawed data analysis and the clinical trial has to be stopped. And they punched papers, which is good. And I don't have a point here. Kate Bradley from MD Anderson, he actually their data, some micro read data. And you read through this extensive he found out that the genes imaging used to recruit patients. Like, it it's way off. Like but the problem the problem is actually one of the rows in the especially that shifted. And in fact, if shift it back, he can almost reproduce the same imaging signature. Okay? But there's a real cost here. Right? Was saying this cost money to make it drugged. 2,000,000,000 or 3 to $5,000,000,000. And impacts real people. Right? Those patients who are recruited in the trial. I mean, the trial has to be stopped. And the root cause was not really complicated, statistics. Right? It was sloppy data handling, and people have been like to prevent with some basic practices. Okay? But why it's so hard like reproduce So there are couple of reasons here. The data is not available. Right? Scripts is not shared. Both of them can be available on reasonable requests. I still see them actually in in publisher papers. Of course, missing kind meta details. No edgy repository. I just like that science science paper. And, of course, the more technical issues that environment the computing management is right different. Operating system or Python packages. Right? And you can't science on house of cards. Irreproducible results don't just waste time. They contaminate downfront decisions. Miskeep collaborators, ultimately patients at risk. And there's additional selfish that you want to make your data analysis reproducible. Because your closest collaborator is yourself six months ago, and you don't reply to emails. Okay? If you get refuse your own analysis next year, no one else can. Right? And you will need to. Rerun it because the reviewers ask additional analysis. Right? A dataset maybe you have new samples, new datasets. And when a new collaborator joins. So reproducible these just wildest. It's also for yourself. Okay. So we have the problem. So how can we solve it? At least I compile the six six pillars of reproducible mathematics. They're good enough practices that can help you to increase your reproducibility. The first one is data. Right? Of course, you want to version the data, but you also want to structure data sets for a clarity and and analysis. Second, project organization. You want to have consistent focus structures for every project. Third, version control use Git to track your code. I believe everybody here is using Git. And you might including my management, one pinned down every dependencies of the versions of our Python packages. For fifth literal problem, you mix code with with documentation and the code that you evaluate in line. Get output. You get the figures, everything in the same report, and you have the context. And lastly, clean code, you write readable, reusable, and well tested functions. Okay. I will first go to first dealer, data. Spreadsheets. So why I'm touching about spreadsheet? Because I think I work with, web lab scientists quite a bit, and spreadsheet is still one of the most commonly used. Data But what's wrong with this spreadsheet here? Can anyone tell me? What's wrong with this And this actually is from a Kansas paper supplementary supplementary data spreadsheet. So what's wrong with that? Ja, ja, ja, merge to sales. A couple of things here. And one of the most difficult things actually is in that column, I think, is in the PDL one column. So you have the negative sign means there's no it's a negative PDL one. But then you also have, I think, hyphen here means there's not available data. In a different column here. So it just makes your analysis very difficult. Right? Okay. In addition, Excel can convert key names, like, you know, set two, opt four to to dates, and you have to be careful with that as well. So there's some major best practice you want to follow. When using spreadsheets. I highly recommend you to read this paper. It's an old paper. It's so good. You have to actually recommend your collaborators read it well. They don't mention it in spreadsheets. It talks about all this good. Enough best practices. When they're using Spreadsheets. So one of them being, you want to make your data actually in a tidy format. So, like, in this data on the left here, in this case, have, like, two trains of bacterial a and b. You have two different genotype, normal m mutants. You have two different time points, one minute, five minutes. And you for each time point, have, like, two I mean, rapid dates here. So it's very hard for computing program to cars to be like this. Right? So you want to make them tidy, meaning on the right here, so each row is a single observation, and each each column is a is a variable. Right? You have string, a b, b, and an alternate. Genotype normal in the muten's minutes, one minute, five minutes, replicate one of two, and lastly, the response, the value, you have two values for each. For each sample and each time point. And this is also a benefit to organize a data like this because if you use g plot two, you can easily map all the So in the paper, talks also a lot of other stuff, but I put five rows here for spreadsheets. Okay? One value per cell. Don't combine multiple pieces of information in a single cell. Second, use good few names, like no space, no special characters, all all numbers. And I was, like, using this function from this object a gender. Then it has this clean names function to make the name call the names actually the adhere into this Okay? Be consistent. So pick one value per category. Male, not sometimes a single at end. Or capital m a o or lowercase m. Right? And use correct null values. For example, like, if it's not available, just leave this blank, and I think that's the best practice, and I will read it as NA. And Python is a numb or m m p Numb Python again. Now you take those values in minus 99 or blank. Actually, you have to actually sorry. This is actually the typo from from AI. I actually have my own slides, and I asked AI to redo it for me, and that's actually a yeah. Ron, like, you you want to believe it's blank. That's the best practice. K? And last you say that's plain text, like CSV or GSV files. Okay. Consistency is not optional. Those are the examples that breaks your pipeline. For example, Google's underscore ten week. You wanna spell it out, you have spaces here. Right? And for subject ID, like, 153 versus mouse 153 versus mouse hyphen 153 and female. Right? It's actually easier said than done. I was analyzing some of the data, the cancer gene analysis. And they're from TCGA. Suppose they're already very tiny, but in reality, it's kinda still messy. Right? Okay. So inconsistency force every downstream analysis to reverse engineer your intent, and don't make them guess. Okay. Number two, file naming and the project organization. K? You have the naming file is hard. Right? How many have you do you have the final final revision one to three names in your in your computer? Right? So that file names are a reproducibility crisis. So there are two sets of file names here on top and down here. And user ones below. Okay? And we have all seen this. Okay? Analysis underscore final, final version two. Right? If you have file names like that, you need actually Git and also better conventions. Right? For all file names in the bottom here, what's the common characteristics Right? Jenny, Brian, actually, she has a slide that I them. So there are three principles for file names. That last. First of all, it has to be machine readable. Like, no space, no special characters. Right? Use some school hyphens. Second, it should be human readable. Right? Add a lot to describe the content so you understand what's going on for for that file. And lastly, d for audience will lead with base using year, month, and date. Right? And all zero pad numbers. Okay? So because if you do that, it will be sorted. Correctly in any operating system. So if so which means you have zero one, underscore, like, maybe you said one, zero two, underscore, set two, something like that. Otherwise, hasn't been weird. I just saw And a consistent aquatic structure, it goes hand in hand with two file namings. This case, I want to share another paper. It's also kind of a quick guide to organizing computational biology projects. You need to have a standard full structure for all your projects. So in this in my case, I'll you an example here. I have a data folder which contains all the raw data, and the I usually my user minus W so I can. Change that. And I have a switch switch folder contains all the analysis code, in this case, files. And I have a results folder contains all the figures and intermediate tables. And I have a docs folder contains all the reports. So what I usually do is I used the scripts in the scripts folder, and the scripts will read the data in the data folder and spits out the results in results folder. And use absolute path. I think absolute path is the number one reason Gold fails to reducing your collaborator's machine. Okay? This is also from Jenny. Right? If you have set working directory this auto in your in your script, she will come to your office and set a computer on file. Okay? Of course, she was joking, it just tells you if you have a absolute path, it's very hard for our people too. Reduce your results. Instead, use this package peer function It actually reconstruct the full path based on the root the project root. In finite I got to know that later, and you also have a corresponding packet called pi here. And, of course, if you use our studio, use the projects to organize all your analysis. Okay. Okay. Here's the number three, version control. K. So we should all use it. Right? It's we use it because it's very easy to recover anything. Right? You can always get back to the previous state easily if you use Git. For code review, like, if you're working with other collaborators, you can do full request that people review your code, And lastly, you can experiment. By setting a new branch without worrying about, okay, it breaks your working code. But there's a myth about Right? When I started, was like, oh, it is hard. There's so many commands that to give you to learn. But to be honest, the six commands is good enough for most of my day to day work. Right? Init, deep call, deep, add, deep, commit, push, and pull. Right? Some a rule is that you want commit often, push at the end of the day. Might think of commit as a check once, but you And I have some, like, three d materials here that you want to check out. Okay. Managing your computing environment. Okay? Why? Because the same code, different machine, it can generate very different results. Actually, it happens. Multiple times in my experience, like, was doing some simple data like, okay. I just sent my SWIFT and my data to my collaborator. They run the same thing. Oh, right? The Umab look a little bit different. Right? There are multiple reasons here. Right? So first of all, the package layer. Right? So in our package, Python package is a little bit different. Right? And second, the operation system is a little different. Like, a unique, like, machine like one two, a Max OS and also maybe a Windows machine. They may actually slightly different results even if you have the same data and code. Right? So the social media use containers. Right? And lastly, this actually is an extension of the second line. You're using bio containers registry. So if or maybe d six two, like, into a single container. Then in your workflow, just call those registries. Okay? We know we also use the how to use Calm Data to manage your computer environment. So it it's an environment management system for Python or any language. Like, but Kanban is notorious is for its slowness when so if the environment so I think is dropping replacement. You can use that. And more recently, get to know PC. More than tool that is I think it's divided by the same team with member. If you have if you're only management managing the Python package, you can use UI. It's really fast. I tried it. If you use org, you can use RN. So you so what you do is actually you it creates, like, a private project with a local R library. Consumption, re damn, int, initiate, and a snapshot to record and store to recreate. This file is a source of choosing commit that into your Of course, using Docker, I don't have to say too much about this, but Docker has to patch your code. Dependencies, system libraries, and even data, right, into a single image. And we share the image, we share the exact same environment, not just a little packages. So so there are a couple of actually things I want to share is the Rocket project. This is actually four R. I got to know from Nathan, who's like, yeah, we we we work to build that hard work, if they ask informatics, If you use but one problem is Docker League doesn't have sudo, so if you're working on the share like HPC, you want to use singularity. Okay. Pillar number five, literate literate programming and automation code without context. Is an artifact, not science. K? So you want to mix the code with documentation approach here. Right? To make your analysis self explaining, all most of us use actually the notebook, ArmocDumb, or Quadro, which is the next generation of ArmocDumb. And to do to the noble cases problem, is not bit friendly, and also you can run the the sales, like, with that with different orders, and it's not the best for the And Marimo is is a more recent development for an alternative. So you wanna try that. Definitely write the detailed readme. It's gonna help you many, many years in the future. So this is an example that I have on the left here. So I was actually doing this enhanced promoter interaction and analysis, and I downloaded data from the paper. So I document every step, actually. I took extra effort. So as you can see here, benefit is that nine years later today, if I go to same repository, I really understand what I did, and I can still use the Okay? So a good documentation. Outside of the code, like, includes a project level with me with context. Data source where you download the data. Right? And the quick analysis, start with some narrative why, not only, like, what you did, but why you did this. Right? For example, like, you heard from your collaborator, okay. There is contamination for one of samples, you write that down. Many days later, go, oh, why I was actually removing one of samples because collaborator told you that. And one trick here is you can use code. ChatGPT actually to to write some of the documents for you. There are talk about automation. So there are two ways that you do a training task. The non big way everything manually, and the big way is that, okay, get tired. Okay. Let me write scripts and automate it. And then the gate just spent the time actually laughing about the complicated methods. But as the test size increased, the the Geekway run wins. And remember, the are really good at repetitive work. Right? And if you automate the best automation, the the best automation is automation. So if you ran it manually three times, write a script. Then the future then the future you get for free every time. Of course, I can't I just keep workflow managers here, right, if I met the next flow summit here. So we start with next year shell scripts. Right? You have simple routine jobs except one to three, and you wrap them into shell scripts. So start good Of course, we have more modern toolkits here like SnakeMake, Nextflow, Widow from Broadway. So they are really production great workflow managers for FTC and the cloud. K. Last pillar is clean code and functional programming. K. Don't repeat yourself. Okay? Repeat in the function. So the same rule of three, like, the automation. Slide that tells you, okay, if you do the things three times and you want to repeat this of that shows with. But the same thing, you copy pasting block code three times, you wanna make the function. So in this example, I was making a kidnap. I used to image kidnap function, and I you only see I'm repeating myself. And instead, you can wrap it as a function here, and then apply the function in the list to it. So I'm an an a very active user, a developer, and it has this perf, patch It has this map function to apply the function to a list of elements. Right? So with this, actually, I use few and few edge of for loops and and also in all of these different divisions. And I'm sure like the Python has some equivalent as well, the my functions and function here. And use AI to refractory your code. Okay? But ask you to write it blindly. So in the course of the year, I just ask the AI to actually rewrite this function I used to integrate two different batch of data using canonical analysis CCA. And if you do single cell, you know, it's, like, why do you use it in this rep package for depending single cell data. In this case, want integrating all kinds of data. And it does actually pretty decent job to rewrite my code into a function. Right? But always, like, review the AI generated codes so actually AI doesn't know your biological context, you do. You also have passive controls. Right? So always actually use your partial control to make sure they generate the sensible results. And ultimate reproducibility is function into our Python packages. I'm not the Python Python developer, but I was able to use Cloud Code actually to revamp the previously two published Python packages using Cloud Code. So if you if you package them using using our Python packages, you can easily share that with your colleagues. And make sure they're using the same exact function. Okay. Lastly, I want to talk a little bit about my very recent AI experience in bioinformatics is probabilistic nature of lifetime models. Like, and why it matters for the disability. And this is how do actually my work recently, okay, started. So if I use Cloud Code almost every day, I first load all context. Right? The paper slides my old files, and then ask Claude to read all context. And then I write questions, in the 10 mode, I will ask, what kind of questions I want to ask. Three of questions actually is a hardboard. And then Claude will write all it will plan and also generate all common files for me. And lastly, I will actually run those generate those in line by line and make sure it's correct. K? But there's a problem. Right? Like, AI reports actually drift. Okay? Even when the is exactly the same, actually, this happened last week. We internally, we have this identical workflow system within AstraZeneca. And if we can do the analysis as well. But if you input input the same exactly the prompt, it jumped it very different edge and a report. So why is that? Right? Because the model it's, you know, LM is probabilistic. It's resampling all outlets of tokens based on the top k, top top p, those type of things. And and there's a stochastic nature of the LM. So model just redescites everything which plots to make a special to use with Jing's label, with what colors fit. And also the it should not only source out of variation even at temperature of zero, right, the same will give you a slightly different results. Of course, the the version drift, right, if you use if you use different GPT, for example, version four o versus four point five five point five, it will be different results. So what do you do? Right? I think the the better way is use as an obturator, but not to announce it. You write scripts also you write the Squarto template way. And you use LM to call those scripts and then place them into this Squarto template so you get this reproducible report. Okay? The reproducible 30 spectrum. Right? Where are you now? So level one, you can reproduce your own work within a month on your old machine. Level two, it reproduce your own work in three years. Number three, can reproduce anywhere, anytime, any machine. And last level is, anybody else can reproduce your work. Right? I think I'm starting to actually reach a level three list, like, for my own benefits. Right? You don't have to actually achieve level four like overnight, but each practice you above moves you up one step up. Okay. That's a take home for today's talk. The good enough practices six pillars here. First, data, version versioning of the data. We follow the best practice. Project organization. Use file naming systems with a consistent flow structure, use it to track your goal, Manage your using member, counter, out end, or UVI. Right? And all use to bucket containers if want to lock the corporate system as well. Of course, notebooks, automate. You use student notebook or or And lastly, Clinical, write functions and packages, and use a functional programming paradigm. Yeah. Okay. That's the last slide for today. So reproducible is an something that you check on your check class? It's how we make decisions that affect patients, share policy, check policy, advance human health. So start with one practice today, and your collaborators and your future self will thank you. And that's it. And with that, will take any questions, and there's With that, will take any questions, and there's some actually additional readings you want to read. Some of the some things I don't results from analysis workflows and and doing our final mile. That's a topic which kind of goes around and around in our community about you know, f f call was was founded to try and collaborate and avoid people reinventing a wheel. Yeah. I'm sure everyone in this room is still kind of used to reinventing that that final aspect themselves or that that Do you have any thoughts about how scientists and the matricity can collaborate on that final stage? I mean the But that's actually the nature of mathematics. And in my mind, I always split the mathematics analysis into preprocessing. And the postprocessing. Right? The preprocessing steps can be automated using tools like Nextflow. But the downstream analysis by nature is more exploratory, and then you try to get a little bit there a little bit. So it's very hard to have this consistent whatever data analysis technology or or analysis steps across. All different projects. So every project is different and is unique. So I would encourage people just to share your code on GitHub, and other people can reuse it some at least some component of your What you're saying at the start of talk about Excel kind of reminded me about the struggles we have with with cleaning that comes from the lab. We saw this morning about integrations with bench lengthening. How can you Sometimes it feels a bit like for people working in lab and people working in different worlds. Can you working lab First of all, need to admit scientists, they want to do good work. It's just they don't know. They don't know. I think our responsibility is to closely with what scientists what life scientists is to educate them. Tell them that this is the correct way to actually maybe like, don't put multiple information making the same cell. Like, it's about education. Talk to them. Because instead of spending time to clean those messy data, I would rather spend time to educate them, and they give me a much better data to begin with. Yeah. We've had many talks and much discussion say about AI and identity work. You think there's any scopes I mean, you've built up a huge kind of knowledge base of of tips and best practices. Is there any scope, think, to kind of moving those into skill skills and things that could be then used by even more with make it more test on AI doing? Yeah. We were talking about the agentic thing in this era of AI. Right? We still need to actually lay a solid foundation first. Just learn those best practice to to begin with, and then you'll apply those skills in your data work. I mean, of course, I can't wrap it in your skill and give you use it, but without firsthand understanding and also usage of those things in your your daily work, you can actually make mistakes slightly. Yeah. There's a question, be mistakes Thanks for great talk. So going to a fair one, what Phil mentioned about tertiary analysis. I think the the secondary analysis kind of solved with if you're using containers, using something like Nextflow. You can you can track and you have lineage and, you exactly how files are generated. And so you can, you know, writing a paper, you're putting methods in, you can say, use Nexo version this, and I use this version of the pipeline. But they just probably also submitted it in GL or something like that. You can pull that down in images analysis. I guess a lot of variability in especially in terms of reproducibility comes from the tertiary analysis because it's very difficult to track. The journey that data's been on before you see a really nice fancy picture in a paper. Right? And so and there are various versions of snapshots of that data and the way it's been manipulated. To give you that final result. And oftentimes, can't produce it because you're using, I don't know, a proprietary tool, this user interface, We're clicking a button. You're filtering some stuff out. Then you end up with a dataset that you then put through a spreadsheet, and you fill some columns, you then put that into r Yeah. To generate a plot. How how do build up that reusability where it's not actually possible? And do we need to snapshot the data as well and provide that? As a starting point for someone to say, okay. Well, this is the data that I then put into this tool, and these are the methods. Yeah. You're absolutely right. I think we all face the same public challenges because the whole journey of this data is sometimes is invisible for for us. Right? And my philosophy is, oh, automate as much as you can. And for the things that you cannot automate, document and write it down. For example, like, I sometimes get the specialist phone, like, my, like, my colleague is in. Just send me a message on Teams. Right? So so what I do is I can if if I can't just fetch a data from my database label, essentially, like, oh, programmatic. I should write it down. Okay. What in my download that data from from that link and from this actually communicate from this collaboration. Will write it down. That's actually as far as I can do, but I have a solution. It as And use more bit of a kind of spicy topic. You you touched briefly about using AI to kind of like code and clean code and the idea of, like, writing an initial version of Scripts in a language that you're familiar with. Like, ah or or Python, but it might be very, slow. And, like, basically using that as a very, very detailed specification and then telling AI to to rewrite that in rest as a high performance tool. Where do you see this? Like, mean, AI is changing the field so fast. Do you think your recommendation of of not using it to write the coded How do think I will last? Actually, I think it'll a bit of point. Even for the last question that I have, I I figured that if I have some that I previously wrote, know, I understand, I know it's correct, then I would just ask you to adapt. Adapt it to a new dataset, for example. And it actually does a much better job, compared to, like, just stuff from scratch. Like, it will just go all around. Right? So I don't know how I mean, AI is advancing so fast. I I don't know. Maybe one day it's become so good that even I I lost my job don't know at this moment. Yeah. It's a tough question. But for junior who just stayed into the arena, I would still suggest them to lay a solid foundation again for all these basic skills, programming skills. Terminal skills. Right? Like, that can Thank you. Actually last for a long time. Even if you're using, like, Clock code, if you use if you're not how use you feel pretty comfortable. With Clocko. I think those basic skills still need to be actually learned. Yeah. Yeah. Nice. It just makes it my phone's I'm curious, like, in your experience for a technical project, what percentage of the time goes to the real work analysis, and what percentage goes to the documentation, types of practices, and the everything you do for the And also, what do you think is a good split? Thank you. Yeah. Then the rest of the time, you spend on Writing's Web's modeling and then writing documentation. But I do think writing documentations has a long term benefit. So it just never know. You just expend extra ten minutes to write something down. Can easily save you hours taking a couple months because you notice on the sentence, the context is much better. Yeah. I know what what is a good healthy split. Yeah. Gravity, last question for Pajo? So I just thinking about it. It's another spicy take. In the when you submit and write a paper, the have to be peer reviewed, not by the journal, but by peer. And if they can't reproduce results internally, then no else will have to reduce your results from them. Right. And I mean, that should almost be the standard. Right? Because the amount of time that you spend staring at paper trying to reduce something that someone has put in there, maybe they try their best document whatever they can. Yeah. But it's just right now if it doesn't get you what you need to reproduce it. Yeah. So maybe you prerequisite for the general submission needs to be able have the peer reproduce exactly what you've done as a checklist exercise. Yes. You Yes. You're right, theoretically, but then it all comes down to the incentive of publishing journals that come willing to just enforce that and ask reviewers to run all the code. And to be honest, many of the reviewers are even for computational work. They're not haven't been haven't been going for a long time even. Right? Like, they're, like, very senior people. the correlation is not really well written. Right? Yeah. I I I think it has to do with the incentives. From the publishing journal. But, again, you pay 20,000, I don't publish, and the charge you 20 examples for us in a code code environment, actually does all the exercises, which saves us a ton of time. Now I wonder if that's something we could we could have in the future is, you know, and, I must be able to get the same results. Yep. We need to get into a paper in your platform, just have a couple of Firstly, we have the social kicking off basically now. So And and and we can we can, basically, have a good time to chat together and and get someone on there. Don't forget that we have the the much Tamagotchi contest, which was mentioned this morning. You still have time to create your pixel art. On the Nextway Summit website homepage, and remember to tag at hashtag Nextway Summit on I don't know, give it to a carrier page and send it to your glasses at back. Some pretty amazing the enthusiastic amongst us that we have a fun run, or a fun walk of your choosing, tomorrow at 7AM in the lobby downstairs. Has become somewhat of a