llmize.methods.hlmsa module
- class llmize.methods.hlmsa.HLMSA(problem_text=None, obj_func=None, llm_model=None, api_key=None)[source]
Bases:
Optimizer- No-index:
HLMSA: Hyper-heuristic LLM-driven Simulated Annealing HLMSA optimizer for optimizing tasks using a specified LLM model.
This class inherits from the Optimizer class and allows configuration of various parameters related to the optimization process.
- Parameters:
- __init__(problem_text=None, obj_func=None, llm_model=None, api_key=None)[source]
Initialize the HLMSA optimizer with the provided configuration. Inherits from Optimizer.
- meta_prompt(batch_size, example_pairs, optimization_type='maximize', hp_text='The solutions below are generated randomly.')[source]
Generate a prompt for the LLM model to generate new solutions using Simulated Annealing. Parameters: - batch_size (int): Number of new solutions to generate. - example_pairs (str): Example solutions and scores. - optimization_type (str): “maximize” or “minimize” (default: “maximize”).
Returns: - text: A formatted prompt structure.
- optimize(init_samples=None, init_scores=None, num_steps=None, batch_size=None, temperature=None, callbacks=None, verbose=1, optimization_type='maximize', parallel_n_jobs=None)[source]
Run the HLMSA optimization algorithm.
Parameters: - init_samples (list): A list of initial solutions. - init_scores (list): A list of initial scores corresponding to init_samples. - num_steps (int): The number of optimization steps (default: 50). - batch_size (int): The number of new solutions to generate at each step (default: 5). - temperature (float): The temperature for the LLM model (default: 1.0). - callbacks (list): A list of callback functions to be triggered at the end of each step. - optimization_type (str): “maximize” or “minimize” (default: “maximize”).
Returns: - results (OptimizationResult): An object containing the optimization results.