ResvuChatbox / app.py
thinh111's picture
Upload app.py
57e6440 verified
raw
history blame
1.72 kB
import subprocess
import sys
import gradio as gr
from model import llm_chain_response, get_response_value
from process_documents import create_db_from_files
def install(package):
subprocess.check_call([sys.executable, "-m", "pip", "install", package])
# List of packages to install
packages = [
"unsloth[colab-new] @ git+https://github.com/unslothai/unsloth.git",
"--no-deps xformers",
"trl<0.9.0",
"peft",
"accelerate",
"bitsandbytes"
]
# Install packages
for package in packages:
try:
install(package)
except Exception as e:
print(f"Failed to install {package}: {e}")
llm_chain = llm_chain_response()
def chat_with_mistral(user_input):
if not user_input:
return "The message is not be empty."
response = llm_chain.invoke({"query": user_input})
print(response)
print("---------------Response--------------")
print(get_response_value(response["result"]))
return get_response_value(response["result"])
def main():
# Initialize the database
create_db_from_files()
# Set up and launch the Gradio interface
iface = gr.Interface(
fn=chat_with_mistral,
inputs=gr.components.Textbox(label="Enter Your Message"),
outputs=gr.components.Markdown(label="ChatbotResponse"),
title="Resvu AI Chatbot",
description="Interact with the Resvu API via this chatbot. Enter a message and get a response.",
examples=["Hi, how are you", "Who are you?", "What services do you offer?", "How can I find out about upcoming community events?"],
allow_flagging="never"
)
iface.launch()
if __name__ == "__main__":
main()