Skip to main content

HAL

Heuristic Autonomous Lab

This tool is supposed to be run in Jupyter notebooks using JupyterLab. Examples are available in the examples folder.

Config

Create a config.json with the following content:

{
  "GEMINI_API_KEY": "your gemini API key",
  "MEMORY_DATA_PATH": "/path/to/the/memory/data.gz",
  "EXEC_IMPORT": "import time, os, sys, json, yaml, scipy\nimport numpy as np\nimport matplotlib.pyplot as plt\n"
}

Or pass config dictionary to init function, check examples/mininum.ipynb

Get Started

import HAL
HAL.init() # initialization: loading memory, setting up display, etc.
# HAL.auto = 3 # auto-execution: HAL will automatically execute up to 3 steps

HAL.reset() # this reset HAL session
HAL("Do something") # main interface: query HAL

HAL() # continue without user input

API

# initialization
HAL.init("Name", _config=None)

# main interface
HAL(query=None)

# properties
HAL.auto = 0
HAL.session = {}

# session operations
HAL.reset()
HAL.save(path="session.json")
HAL.load(path="session.json")

# memory operations
HAL.search(query)
HAL.memorize(content, meta={ "source": HAL.name })

# low-level components
HAL.memory   # knowledge base
HAL.display  # UI rendering for JupyterLab
# Components
HAL.gather_document
HAL.sort
HAL.plan
HAL.answer
HAL.code

Directory Structure

  • HAL/HAL_answer.py: Answer component
  • HAL/HAL_code.py: Develop component (developer)
  • HAL/HAL_gather_document.py: Search agent
  • HAL/HAL_plan.py: Plan component (planner)
  • HAL/HAL_sort.py: Preprocess component
  • HAL/__init__.py: Entrypoint and main interface
  • HAL/memory.py: Knowledge base implementation
  • HAL/display.py: UI rendering for JupyterLab
  • HAL/run.py: Execution runtime
  • HAL/utils.py: Utility functions

Cite this work

https://arxiv.org/abs/2603.08801

@article{li2026large,
  title={Large Language Model-Assisted Superconducting Qubit Experiments},
  author={Li, Shiheng and Miller, Jacob M and Lee, Phoebe J and Andersson, Gustav and Conner, Christopher R and Joshi, Yash J and Karimi, Bayan and King, Amber M and Malc, Howard L and Mishra, Harsh and others},
  journal={arXiv preprint arXiv:2603.08801},
  year={2026}
}

Metadata

Release files for clelandlab-HAL 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for clelandlab-HAL 0.2.0
File Size Uploaded
clelandlab_hal-0.2.0.tar.gz 12.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for clelandlab-HAL 0.2.0
File Interpreter ABI Platform
clelandlab_hal-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 28.0 kB

Release files / clelandlab_hal-0.2.0.tar.gz

Download URL clelandlab_hal-0.2.0.tar.gz
Size 12.2 kB
Tags Source
SHA-256 checksum
How to use checksums
2aa808a63e2cc115abc700212b9d2e9e18bccb6bddc015000a7388769ed5c147
BLAKE2b-256 checksum
How to use checksums
0fef670959cf2b0504fcaa26d0807167de10039e4e7a8df680dbb9f772b55b10
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release files / clelandlab_hal-0.2.0-py3-none-any.whl

Download URL clelandlab_hal-0.2.0-py3-none-any.whl
Size 15.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
658c2b35e1a2ab6d1414599b9d46609c14e31683dd376f1ce65f67e8681227d1
BLAKE2b-256 checksum
How to use checksums
bd5b30367fd0890a0cfea543ba6283dedfb8148bf13578f4e8fdb711bdd2aa35
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.9.25

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.1

2 release files

0.1.0

2 release files

0.0.1

2 release files

0.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page