convosim-ui / utils.py
ivnban27-ctl's picture
first commit openai simulators
5832f57
raw
history blame
No virus
1.51 kB
import streamlit as st
from langchain.memory import ConversationBufferMemory
from models.openai.finetuned_models import finetuned_models, get_finetuned_chain
from models.openai.role_models import get_role_chain, role_templates
def add_initial_message(model_name, memory):
if "Spanish" in model_name:
memory.chat_memory.add_ai_message("Hola necesito ayuda")
else:
memory.chat_memory.add_ai_message("Hi I need help")
def clear_memory(memories):
for memory in memories:
if memory not in st.session_state:
st.session_state[memory] = ConversationBufferMemory(ai_prefix='texter', human_prefix='helper')
st.session_state[memory].clear()
def create_memory_add_initial_message(memories, language):
for memory in memories:
if memory not in st.session_state:
st.session_state[memory] = ConversationBufferMemory(ai_prefix='texter', human_prefix='helper')
add_initial_message(language, st.session_state[memory])
if len(st.session_state[memory].buffer_as_messages) < 1:
add_initial_message(language, st.session_state[memory])
def get_chain(issue, language, source, memory, temperature):
if source in ("Finetuned OpenAI"):
OA_engine = finetuned_models[f"{issue}-{language}"]
return get_finetuned_chain(OA_engine, memory, temperature)
if source in ('OpenAI GPT3.5'):
template = role_templates[f"{issue}-{language}"]
return get_role_chain(template, memory, temperature)