Knowledge agents for lab automation.
Play k-agents at the Online demo!
Paper: arXiv:2412.07978
Motivation
Laboratory automation is important for the efficiency of scientific discovery. However, it is hard to transfer laboratory knowledge to AI.
Our solution
- We provide user-friendly interfaces to inject laboratory knowledge into AI.
- The injected knowledge is wrapped into LLM-based knowledge agents.
- Execution agents use the knowledge agents to automate laboratory procedures.
Here we show how the users can inject knowledge into the AI.
from k_agents.experiment import Experiment
class SomeActionInLab(Experiment):
def run(self):
"""
documenation of the experiment
"""
# do something in the lab
...# Experiment 1
## Steps
1. Do experiment A. If failed, go to step 3.
2. Do experiment B. If failed, try again.
3. Do experiment C. If failed, the procedure is failed.class SomeActionInLab(Experiment):
@visual_inspection("""
If there is a clear peak in the figure, the experiment is successful.
Else, the experiment is failed.
""")
def function_that_make_plot(self):
# produce a figure
return fig
@text_insepction
def function_that_produces_a_report(self):
# produce a report
report = "The experiment is successful."
return reportThe k-agents framework has been applied to calibrate superconducting quantum gates
Experiments:
https://github.com/ShuxiangCao/LeeQ/tree/k_agents/leeq/experiments/builtin/basic/calibrations
Procedures:
https://github.com/ShuxiangCao/LeeQ/tree/main/leeq/experiments/procedures
https://github.com/ShuxiangCao/LeeQ/blob/main/notebooks/Agent/SingleQubitTuneUp.ipynb
https://github.com/ShuxiangCao/LeeQ/blob/main/notebooks/Agent/TwoQubitTuneUp.ipynb
