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}
}

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

clelandlab_hal-0.1.1.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

clelandlab_hal-0.1.1-py3-none-any.whl (15.8 kB view details)

Uploaded Python 3

File details

Details for the file clelandlab_hal-0.1.1.tar.gz.

File metadata

  • Download URL: clelandlab_hal-0.1.1.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for clelandlab_hal-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b2ea22b3e69bb27513f2058a3d1ad39b24b457196a53ff8a3880fe698a65f4ad
MD5 e562260727701a9b1b6009a088979878
BLAKE2b-256 9edc112ff336a35c1700184313662637d7514ee703d1a84a4cfa22e098191889

See more details on using hashes here.

File details

Details for the file clelandlab_hal-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: clelandlab_hal-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 15.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.25

File hashes

Hashes for clelandlab_hal-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 976227fd02ec2217a0337f0c6f0240b858788ed5da20cd138230fdb964945706
MD5 435ea166cfe91dfd4d3464c5b70e9b44
BLAKE2b-256 ccdf3ce79591e8588e6b193dd11fcc1d8738c780876bbd02290835ec6ca589f5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page