hitsense/sense_faq
0
1import pandas as pd2import os3import streamlit as st4from langchain.embeddings.openai import OpenAIEmbeddings5from langchain.text_splitter import CharacterTextSplitter6from langchain.docstore.document import Document7from langchain.vectorstores import FAISS8from langchain.chains.question_answering import load_qa_chain9from langchain.llms import OpenAI, HuggingFaceHub10from langchain.chat_models import ChatOpenAI11from langchain import PromptTemplate, LLMChain12from langchain.embeddings import HuggingFaceHubEmbeddings13 14 15# hf_llm = HuggingFaceHub(16# repo_id="google/flan-t5-xl",17# # repo_id="tloen/alpaca-lora-7b",18# huggingfacehub_api_token = os.environ['HUGGINGFACEHUB_API_TOKEN'],19# model_kwargs={"temperature":0.001, "max_new_tokens":500}20# ) 21 22# @st.cache_data23# def text_processing(text):24# text_splitter = CharacterTextSplitter(chunk_size=500, chunk_overlap=0)25# docs = text_splitter.create_documents([text])26# faiss_index = FAISS.load_local("sense_faq_handbook_faiss_index", OpenAIEmbeddings())27# # faiss_index = FAISS.from_documents(docs,28# # HuggingFaceHubEmbeddings(),29# # # OpenAIEmbeddings()30# # )31# return faiss_index32 33@st.cache_data34def build_chain():35 return load_qa_chain(36 # hf_llm,37 ChatOpenAI(temperature=0, model_name="gpt-3.5-turbo"), 38 chain_type="stuff"39 )40 41# @st.cache_data42def run_chain(query, chain):43 index = FAISS.load_local("sense_faq_handbook_faiss_index", OpenAIEmbeddings())44 docs = index.similarity_search(query)45 return chain.run(input_documents=docs, question=query)46 