def generate_result()

in UI/utils.py [0:0]


def generate_result(query):

    config = configparser.ConfigParser()
    config.read('config.ini')
    project_id = config['DEFAULT']['PROJECT_ID']
    location = config['DEFAULT']['LOCATION']

    generation_config = {
        "max_output_tokens": 8192,
        "temperature": 1,
        "top_p": 0.95
        }

    safety_settings = {
        generative_models.HarmCategory.HARM_CATEGORY_HATE_SPEECH:
            generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
        generative_models.HarmCategory.HARM_CATEGORY_DANGEROUS_CONTENT:
            generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
        generative_models.HarmCategory.HARM_CATEGORY_SEXUALLY_EXPLICIT:
            generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
        generative_models.HarmCategory.HARM_CATEGORY_HARASSMENT:
            generative_models.HarmBlockThreshold.BLOCK_MEDIUM_AND_ABOVE,
    }

    vertexai.init(project=project_id, location=location)
    model = GenerativeModel("gemini-1.5-pro-001")
    responses = model.generate_content(
        [query],
        generation_config=generation_config,
        safety_settings=safety_settings,
        stream=True,
        )

    final_response = """"""
    for response in responses:
        final_response = final_response + response.text
    return final_response