import os from langchain import LLMChain from langchain.agents import load_tools, initialize_agent from langchain.memory import ConversationBufferMemory from config.config import PROMPT_TEMPLATE def load_chain(tools_list, llm): chain = None express_chain = None memory = None if llm: print("\ntools_list", tools_list) tool_names = tools_list news_api_key = os.environ["NEWS_API_KEY"] tmdb_bearer_token = os.environ["TMDB_BEARER_TOKEN"] tools = load_tools(tool_names, llm=llm, news_api_key=news_api_key, tmdb_bearer_token=tmdb_bearer_token) memory = ConversationBufferMemory(memory_key="chat_history") chain = initialize_agent(tools, llm, agent="conversational-react-description", verbose=True, memory=memory) express_chain = LLMChain(llm=llm, prompt=PROMPT_TEMPLATE, verbose=True) return chain, express_chain, memory