move api to state
This commit is contained in:
parent
44da2b26e2
commit
04868e022d
@ -2,4 +2,5 @@ RECIPE_PATH=AMUseBotFront/ai_talks/AMUseBotBackend/recipe/
|
|||||||
DIALOG_PATH=AMUseBotFront/ai_talks/AMUseBotBackend/dialog/
|
DIALOG_PATH=AMUseBotFront/ai_talks/AMUseBotBackend/dialog/
|
||||||
INTENT_DICT_PATH=ai_talks/AMUseBotBackend/utils/intent_dict.json
|
INTENT_DICT_PATH=ai_talks/AMUseBotBackend/utils/intent_dict.json
|
||||||
MODEL_IDENTIFIER_PATH=ai_talks/AMUseBotBackend/models/NLU/roberta-base-cookdial.txt
|
MODEL_IDENTIFIER_PATH=ai_talks/AMUseBotBackend/models/NLU/roberta-base-cookdial.txt
|
||||||
INGREDIENTS_RECIPES_MERGED=
|
INGREDIENTS_RECIPES_MERGED=
|
||||||
|
API_KEY=
|
@ -0,0 +1 @@
|
|||||||
|
AMUseBot/roberta-base-cookdial-v1_1
|
@ -4,14 +4,14 @@ from AMUseBotBackend.src.NLG.nlg import NLG
|
|||||||
from AMUseBotBackend.src.tools.search import search_recipe
|
from AMUseBotBackend.src.tools.search import search_recipe
|
||||||
|
|
||||||
import AMUseBotBackend.consts as c
|
import AMUseBotBackend.consts as c
|
||||||
import openai
|
|
||||||
import json
|
import json
|
||||||
|
|
||||||
|
import streamlit as st
|
||||||
|
|
||||||
|
|
||||||
class DP:
|
class DP:
|
||||||
|
|
||||||
def __init__(self, dst: DST, llm_rephrasing=False, character='default'): #TODO: a way to set llm_rephrasing status and a character
|
def __init__(self, dst: DST, llm_rephrasing=True, character='ramsay'): #TODO: a way to set llm_rephrasing status and a character
|
||||||
self.dst_module = dst
|
self.dst_module = dst
|
||||||
self.llm_rephrasing = llm_rephrasing
|
self.llm_rephrasing = llm_rephrasing
|
||||||
with open('ai_talks/AMUseBotBackend/utils/characters_dict.json') as f:
|
with open('ai_talks/AMUseBotBackend/utils/characters_dict.json') as f:
|
||||||
@ -21,14 +21,13 @@ class DP:
|
|||||||
|
|
||||||
def llm_rephrase(self, character, response):
|
def llm_rephrase(self, character, response):
|
||||||
model = character['model']
|
model = character['model']
|
||||||
openai.api_key = character['api_key']
|
|
||||||
prompt = character['prompt']
|
prompt = character['prompt']
|
||||||
input = character['leftside_input'] + response + character['rightside_input']
|
input = character['leftside_input'] + response + character['rightside_input']
|
||||||
|
|
||||||
message = [{'role': 'system', 'content': prompt}, {'role': 'user', 'content': input}]
|
message = [{'role': 'system', 'content': prompt}, {'role': 'user', 'content': input}]
|
||||||
|
|
||||||
try:
|
try:
|
||||||
response = openai.ChatCompletion.create(
|
response = st.session_state.openai.ChatCompletion.create(
|
||||||
model=model, messages=message, temperature=1, max_tokens=128
|
model=model, messages=message, temperature=1, max_tokens=128
|
||||||
)
|
)
|
||||||
rephrased_response = response.choices[0].message.content
|
rephrased_response = response.choices[0].message.content
|
||||||
|
@ -1,10 +1,10 @@
|
|||||||
{
|
{
|
||||||
"default": {"model": "gpt-3.5-turbo-0613", "api_key": "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", "prompt":
|
"default": {"model": "gpt-3.5-turbo-0613", "prompt":
|
||||||
"You're a master chef known for treating everyone like your equal. You're currently reading steps of a recipe to your apprentice.",
|
"You're a master chef known for treating everyone like your equal. You're currently reading steps of a recipe to your apprentice.",
|
||||||
"leftside_input": "Rephrase this step of a recipe to make it sound more like a natural, full English sentence: '",
|
"leftside_input": "Rephrase this step of a recipe to make it sound more like a natural, full English sentence: '",
|
||||||
"rightside_input": "'."},
|
"rightside_input": "'."},
|
||||||
|
|
||||||
"ramsay": {"model": "gpt-3.5-turbo-0613", "api_key": "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", "prompt":
|
"ramsay": {"model": "gpt-3.5-turbo-0613", "prompt":
|
||||||
"You're Gordon Ramsay, a famous British chef known for his short temper and routinely insulting people. You're currently reading steps of a recipe to your apprentice.",
|
"You're Gordon Ramsay, a famous British chef known for his short temper and routinely insulting people. You're currently reading steps of a recipe to your apprentice.",
|
||||||
"leftside_input": "Rephrase this step of a recipe to make it sound as if you said it, in your characteristic rude fashion: '",
|
"leftside_input": "Rephrase this step of a recipe to make it sound as if you said it, in your characteristic rude fashion: '",
|
||||||
"rightside_input": "'."}
|
"rightside_input": "'."}
|
||||||
|
@ -9,6 +9,7 @@ import streamlit as st
|
|||||||
from PIL import Image
|
from PIL import Image
|
||||||
from src.utils.conversation import get_user_input, show_chat_buttons, show_conversation
|
from src.utils.conversation import get_user_input, show_chat_buttons, show_conversation
|
||||||
from src.utils.lang import en
|
from src.utils.lang import en
|
||||||
|
import openai
|
||||||
|
|
||||||
import os
|
import os
|
||||||
from dotenv import load_dotenv
|
from dotenv import load_dotenv
|
||||||
@ -43,6 +44,7 @@ if __name__ == '__main__':
|
|||||||
|
|
||||||
DIALOG_PATH = os.getenv('DIALOG_PATH')
|
DIALOG_PATH = os.getenv('DIALOG_PATH')
|
||||||
RECIPE_PATH = os.getenv('RECIPE_PATH')
|
RECIPE_PATH = os.getenv('RECIPE_PATH')
|
||||||
|
API_KEY = os.getenv('API_KEY')
|
||||||
|
|
||||||
# Storing The Context
|
# Storing The Context
|
||||||
if "locale" not in st.session_state:
|
if "locale" not in st.session_state:
|
||||||
@ -67,6 +69,10 @@ if __name__ == '__main__':
|
|||||||
st.session_state.dst = DST(recipe_path=RECIPE_PATH, dialog_path=DIALOG_PATH)
|
st.session_state.dst = DST(recipe_path=RECIPE_PATH, dialog_path=DIALOG_PATH)
|
||||||
if "dp" not in st.session_state:
|
if "dp" not in st.session_state:
|
||||||
st.session_state.dp = DP(dst=st.session_state.dst)
|
st.session_state.dp = DP(dst=st.session_state.dst)
|
||||||
|
if "openai" not in st.session_state:
|
||||||
|
st.session_state.openai = openai
|
||||||
|
st.session_state.openai.api_key = API_KEY
|
||||||
|
|
||||||
|
|
||||||
def show_graph():
|
def show_graph():
|
||||||
# Create a graphlib graph object
|
# Create a graphlib graph object
|
||||||
|
@ -23,7 +23,8 @@ def get_nlu_model(intent_dict_path = INTENT_DICT_PATH, model_identifier_path = M
|
|||||||
model_identifier_path=model_identifier_path)
|
model_identifier_path=model_identifier_path)
|
||||||
|
|
||||||
def clear_chat() -> None:
|
def clear_chat() -> None:
|
||||||
st.session_state.generated = []
|
st.session_state.generated = ["Hello! I'm AMUseBot, a virtual cooking assistant. Please tell me the name of the dish that you'd like to prepare today."]
|
||||||
|
st.session_state.dst.restart()
|
||||||
st.session_state.past = []
|
st.session_state.past = []
|
||||||
st.session_state.messages = []
|
st.session_state.messages = []
|
||||||
st.session_state.user_text = ""
|
st.session_state.user_text = ""
|
||||||
|
Loading…
Reference in New Issue
Block a user