Get Started

Aqarios Luna is a platform specifically designed to facilitate the use of quantum technologies. It offers comprehensive services that support the entire journey from conceptualizing a use case to implementing a quantum-powered solution. The primary focus of Luna is on solving complex optimization challenges.

Luna empowers businesses to leverage quantum technology to solve the most intricate business problems. Although quantum computers offer vast potential, the complexity involved in developing, understanding, and implementing the required quantum algorithms poses significant challenges for many stakeholders. Luna provides an intuitive and user-friendly interface that allows easy access to quantum hardware and the application of quantum algorithms. This approach eliminates the need to delve into the complex mechanics behind quantum algorithms, allowing users to focus instead on problem-solving and achieving practical solutions. Additionally, Luna offers extensive customization and flexibility for users with advanced expertise who wish to delve deeper into the technology.

Luna Product Family

Luna offers three closely related products designed to meet diverse needs: LunaSolve, LunaBench, and LunaQ. Each service is tailored to cater to specific requirements.

LunaSolve is a powerful cloud platform engineered to help businesses address complex optimization challenges effectively. It simplifies tasks that are traditionally complex and enhances efficiency.

LunaBench is an adaptable benchmarking framework that enables users to perform comprehensive evaluations of algorithms and use cases across quantum, hybrid, and classical environments.

LunaQ provides seamless access to a broad spectrum of quantum hardware, allowing users to execute their quantum algorithms on quantum computers through our platform as a single point of entry.

Access Luna

To acquire an account for accessing Luna, please reach out directly through our website. Upon registration, you will gain access to the Luna SDKs, complete with instructions and guidance for installation and environment setup.

Luna Encryption

Luna supports custom encryption keys through the Bring Your Own Key (BYOK) paradigm. This ensures the security and privacy of your data. By using your own encryption key, you maintain full control over your data and can store the encryption keys in a secure location of your choice. This ensures that your data and QPU tokens are encrypted, preventing unauthorized access. Only those with the encryption key can decrypt and access this information.

Before using Luna, you must generate an encryption key and store it in the LUNA_ENCRYPTION_KEY environment variable. First, start to generate your encryption key below and then we will set this encryption key as an environment variable.

To generate the key, you can use the form below:

Please press generate key button

Alternatively, you can generate the encryption key using, for example, the following Python code:

from cryptography.fernet import Fernet
Fernet.generate_key()

Now we can set the encryption key as our environment variable LUNA_ENCRYPTION_KEY.

You can set environment variables using the command line, terminal, or directly in your Python code. Below are examples of how to set these environment variables. Note that variables set this way are only available for the current session of the terminal, command line, or Python program.

Windows

set LUNA_ENCRYPTION_KEY="<ENCRYPTION_KEY>"

Linux/MacOS

export LUNA_ENCRYPTION_KEY="<ENCRYPTION_KEY>"

Python

import os
os.environ["LUNA_ENCRYPTION_KEY"] = "<ENCRYPTION_KEY>"

Alternatively, you can set persistent environment variables that are stored and available for any program or script in any terminal session without needing to be configured again. Here are the instructions for setting persistent environment variables:

Windows

  1. Open the System Control Panel.
  2. Select "System".
  3. Select "Advanced System Settings".
  4. Go to the "Advanced" tab.
  5. Select "Environment Variables..."
  6. Create a new entry named LUNA_ENCRYPTION_KEY with the value <ENCRYPTION_KEY>.
  7. Save your changes.

Linux/MacOS

  1. Open your shell-specific initialization files. This could be ~/.bashrc for bash or ~/.zshrc for zsh.
  2. At the end of the file, add the following line with the variable name and value:
export LUNA_ENCRYPTION_KEY="<ENCRYPTION_KEY>"
  1. Save your changes.
  2. Apply the changes by either restarting the terminal window or running:
source ~/.bashrc

Once you set the LUNA_ENCRYPTION_KEY environment variable, this key will be used for all the following transactions:

  • Storing QPU tokens
  • Creating solutions for optimizations via LunaSolve
  • Sending quantum circuits via LunaQ
  • Retrieving solutions via LunaQ
  • Retrieving LunaBench solutions via LunaSolve solvers

For more details on QPU tokens and their usage in Luna, please refer to the QPU tokens documentation.

Note: You could also just pass your encryption key manually everytime you define one of the above defined transactions. However, this is not recommended as you will likely use multiple encryption keys making it more difficult to keep track of each one as well as having personal information openly displayed in your code.

#Example setting encryption environment variable maunually
solution = ls.solution.create(
    optimization_id=optimization.id,
    solver_name='SAGA',
    provider='dwave',
    solver_parameters={},
    qpu_tokens = None,
    encryption_key = "<YOUR_ENCRYPTION_KEY>"
)

Start Using Luna

To begin using Luna, simply import the packages you've installed, and you can start immediately. The way you interact with Luna will vary depending on the service you are using. For more detailed information on how each service operates, practical demonstrations can be found on each service's respective page:

For a deeper exploration of features, consult our User Guide, discover pre-implemented use cases in the Use Case Library, find a list of pre-implemented quantum, hybrid, and classical Solvers & Algorithms.

Was this page helpful?