patchouli / backend /inference.py
traveler514's picture
first commit
81a794d
from backend.section_infer_helper.local_llm_helper import local_llm_helper
from backend.section_infer_helper.online_llm_helper import online_llm_helper
from backend.cwe_infer_helper import cwe_infer_helper
MODEL_TYPE_HELPER_MAP = {
"Local LLM": local_llm_helper,
"Online LLM": online_llm_helper
}
PREDEF_MODEL_MAP = {
"Local LLM": local_llm_helper.PREDEF_MODEL,
"Online LLM": online_llm_helper.PREDEF_MODEL
}
LOCAL_MODEL_PEFT_MAP = local_llm_helper.MODEL_PEFT_MAP
PREDEF_CWE_MODEL = cwe_infer_helper.PREDEF_MODEL
def section_infer(diff_code, patch_message, model_type, *model_config):
helper = MODEL_TYPE_HELPER_MAP.get(model_type, None)
if helper is None:
raise ValueError(f"Model {model_type} is not supported")
helper.load_model(*model_config)
results = helper.infer(diff_code, patch_message)
return results
def cwe_infer(diff_code, patch_message, *model_config):
helper = cwe_infer_helper
helper.load_model(*model_config)
results = helper.infer(diff_code, patch_message)
return results