Spaces:
Build error
Build error
File size: 2,199 Bytes
b515f84 af0bbbe bd5e335 ff8cb83 c7ed730 b515f84 6fe06a5 b515f84 c7ed730 b515f84 bd5e335 ff8cb83 c7ed730 a2af16b c7ed730 bf2279b 080bbc9 b11f76e 080bbc9 b515f84 55450d7 b11f76e b515f84 c255715 8b3a6e5 b515f84 0794e40 b515f84 080bbc9 12fb877 b515f84 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 |
import gradio as gr
import random
import time
import boto3
from botocore import UNSIGNED
from botocore.client import Config
import zipfile
from langchain.llms import HuggingFaceHub
model_id = HuggingFaceHub(repo_id="HuggingFaceH4/zephyr-7b-beta", model_kwargs={"temperature":0.1, "max_new_tokens":1024})
from langchain.embeddings import HuggingFaceHubEmbeddings
embeddings = HuggingFaceHubEmbeddings()
from langchain.vectorstores import FAISS
from langchain.chains import RetrievalQA
s3 = boto3.client('s3', config=Config(signature_version=UNSIGNED))
s3.download_file('rad-rag-demos', 'vectorstores/faiss_db_ray.zip', './chroma_db/faiss_db_ray.zip')
with zipfile.ZipFile('./chroma_db/faiss_db_ray.zip', 'r') as zip_ref:
zip_ref.extractall('./chroma_db/')
FAISS_INDEX_PATH='./chroma_db/faiss_db_ray'
#embeddings = HuggingFaceHubEmbeddings("multi-qa-mpnet-base-dot-v1")
embeddings = HuggingFaceHubEmbeddings()
db = FAISS.load_local(FAISS_INDEX_PATH, embeddings)
retriever = db.as_retriever(search_type = "mmr")
global qa
qa = RetrievalQA.from_chain_type(llm=model_id, chain_type="stuff", retriever=retriever)
def add_text(history, text):
history = history + [(text, None)]
return history, ""
def bot(history):
response = infer(history[-1][0])
history[-1][1] = response['result']
return history
def infer(question):
query = question
result = qa({"query": query})
return result
css="""
#col-container {max-width: 700px; margin-left: auto; margin-right: auto;}
"""
title = """
<div style="text-align: center;max-width: 700px;">
<h1>Chat with the RAY Docs</h1>
<p style="text-align: center;">The AI bot is here to help you with the RAY Documentation, <br />
start asking questions about the open-source software </p>
</div>
"""
with gr.Blocks(css=css) as demo:
with gr.Column(elem_id="col-container"):
gr.HTML(title)
chatbot = gr.Chatbot([], elem_id="chatbot")
with gr.Row():
question = gr.Textbox(label="Question", placeholder="Type your question and hit Enter ")
question.submit(add_text, [chatbot, question], [chatbot, question]).then(
bot, chatbot, chatbot
)
demo.launch() |