Spaces:
Build error
Build error
| import streamlit as st | |
| import os | |
| from streamlit_chat import message | |
| from langchain.prompts import PromptTemplate | |
| from langchain import LLMChain | |
| from langchain_community.llms.huggingface_hub import HuggingFaceHub | |
| llm = HuggingFaceHub(repo_id="suriya7/MaxMini-Instruct-248M", | |
| task ='text2text-generation', | |
| huggingfacehub_api_token=os.getenv('HF_TOKEN'), | |
| model_kwargs={ | |
| "do_sample":True, | |
| "max_new_tokens":250 | |
| }) | |
| template = """Please Answer the Question:{question}""" | |
| prompt = PromptTemplate(template=template,input_variables=['question']) | |
| llm_chain = LLMChain( | |
| llm=llm, | |
| prompt=prompt, | |
| verbose=True, | |
| ) | |
| # previous_response = "" | |
| def conversational_chat(user_query): | |
| # global previous_response | |
| # previous_response = "".join([f"User: {i[0]}\nChatbot: {i[1]}" for i in st.session_state['history'] if i is not None]) | |
| # print(f"this is my previous {previous_response}") | |
| result = llm_chain.predict( | |
| question=user_query, | |
| # chat_history = previous_response | |
| ) | |
| st.session_state['history'].append((user_query, result)) | |
| return result | |
| st.title("Chat Bot MaxMini:") | |
| st.text("I am MaxMini Your Friendly Assitant") | |
| st.markdown("Built by [Suriya❤️](https://github.com/theSuriya)") | |
| if 'history' not in st.session_state: | |
| st.session_state['history'] = [] | |
| if 'human' not in st.session_state: | |
| st.session_state['human'] = ["Hello MaxMini"] | |
| if 'assistant' not in st.session_state: | |
| st.session_state['assistant'] = ['Hey There! How Can I Assist You'] | |
| # Create containers for chat history and user input | |
| response_container = st.container() | |
| container = st.container() | |
| # User input form | |
| user_input = st.chat_input("Ask Your Questions 👉..") | |
| with container: | |
| if user_input: | |
| output = conversational_chat(user_input) | |
| # answer = response_generator(output) | |
| st.session_state['human'].append(user_input) | |
| st.session_state['assistant'].append(output) | |
| # Display chat history | |
| if st.session_state['assistant']: | |
| with response_container: | |
| for i in range(len(st.session_state['assistant'])): | |
| message(st.session_state["human"][i], is_user=True, key=str(i) + '_user', avatar_style="adventurer") | |
| message(st.session_state["assistant"][i], key=str(i), avatar_style="bottts") |