|
import collections |
|
from typing import Any, Dict, OrderedDict |
|
|
|
H2OGPT_PARAMETERS_TO_CLIENT = collections.OrderedDict( |
|
instruction="instruction", |
|
iinput="input", |
|
context="system_pre_context", |
|
stream_output="stream_output", |
|
prompt_type="prompt_type", |
|
prompt_dict="prompt_dict", |
|
temperature="temperature", |
|
top_p="top_p", |
|
top_k="top_k", |
|
num_beams="beams", |
|
max_new_tokens="max_output_length", |
|
min_new_tokens="min_output_length", |
|
early_stopping="early_stopping", |
|
max_time="max_time", |
|
repetition_penalty="repetition_penalty", |
|
num_return_sequences="number_returns", |
|
do_sample="enable_sampler", |
|
chat="chat", |
|
instruction_nochat="instruction_nochat", |
|
iinput_nochat="input_context_for_instruction", |
|
langchain_mode="langchain_mode", |
|
langchain_action="langchain_action", |
|
langchain_agents="langchain_agents", |
|
top_k_docs="langchain_top_k_docs", |
|
chunk="langchain_enable_chunk", |
|
chunk_size="langchain_chunk_size", |
|
document_subset="langchain_document_subset", |
|
document_choice="langchain_document_choice", |
|
) |
|
|
|
|
|
def to_h2ogpt_params(client_params: Dict[str, Any]) -> OrderedDict[str, Any]: |
|
"""Convert given params to the order of params in h2oGPT.""" |
|
|
|
h2ogpt_params: OrderedDict[str, Any] = H2OGPT_PARAMETERS_TO_CLIENT.copy() |
|
for h2ogpt_param_name, client_param_name in h2ogpt_params.items(): |
|
if client_param_name in client_params: |
|
h2ogpt_params[h2ogpt_param_name] = client_params[client_param_name] |
|
return h2ogpt_params |
|
|