File size: 871 Bytes
ed1f8da
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
import json
from langchain_core.prompts import ChatPromptTemplate
from langchain_groq import ChatGroq
from langchain.chains import ConversationChain
from langchain_google_genai import ChatGoogleGenerativeAI
from langchain_core.output_parsers import JsonOutputParser
def langchainConversation(conversation):
    prompts = []
    for message in conversation:
        prompts.append((message['role'],message['context']))
    chat_template = ChatPromptTemplate.from_messages(prompts)
    return chat_template.format_messages()
def converse(conversation,provider,model,key):
    if(provider=='groq'):
        chat = ChatGroq(temperature=0, groq_api_key=key, model_name=model)
    elif(provider=='google'):
        chat = ChatGoogleGenerativeAI(model=model,google_api_key=key)
    return json.dumps(json.loads(chat.invoke(langchainConversation(conversation)).json()),indent=4)