File size: 1,280 Bytes
93bc171
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
395275a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
"""
 /*************************************************************************
 * 
 * CONFIDENTIAL
 * __________________
 * 
 *  Copyright (2023-2024) AI Labs, IronOne Technologies, LLC
 *  All Rights Reserved
 *
 *  Author  : Theekshana Samaradiwakara
 *  Description :Python Backend API to chat with private data  
 *  CreatedDate : 14/11/2023
 *  LastModifiedDate : 18/03/2024
 *************************************************************************/
 """

import os
# import time
import logging
logger = logging.getLogger(__name__)
from dotenv import load_dotenv

# from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
from langchain_openai import ChatOpenAI

load_dotenv()

openai_api_key = os.environ.get('OPENAI_API_KEY')

verbose = os.environ.get('VERBOSE')

def get_model(model_type):
   
    match model_type:
        case "openai":
            llm = ChatOpenAI(model_name="gpt-4o-mini", temperature=0, openai_api_key=openai_api_key)
        case _default:
            # raise exception if model_type is not supported
            msg=f"Model type '{model_type}' is not supported. Please choose a valid one"
            logger.error(msg)
            return Exception(msg)


    logger.info(f"model_type: {model_type} loaded:")
    return llm