File size: 1,272 Bytes
63f98ff aff1c1f 63f98ff 64f94f3 63f98ff |
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 |
import langchain
import os
import openai
from langchain.embeddings import OpenAIEmbeddings
from langchain.vectorstores import Chroma
from langchain import OpenAI, VectorDBQA
import nltk
from langchain.document_loaders import UnstructuredFileLoader
from langchain.text_splitter import CharacterTextSplitter
loader = UnstructuredFileLoader('RAJAGOPAL Thesis.txt')
documents = loader.load()
text_splitter = CharacterTextSplitter(chunk_size = 1000, chunk_overlap = 0)
texts = text_splitter.split_documents(documents)
openai.api_key = os.environ['OPENAI_API_KEY']
embeddings = OpenAIEmbeddings()
doc_search = Chroma.from_documents(texts, embeddings)
chain = VectorDBQA.from_chain_type(llm = OpenAI(), chain_type = "stuff", vectorstore = doc_search)
def chat(input_text):
return chain.run(input_text)
import gradio as gr
input_text = gr.inputs.Textbox(lines=7, label="Input")
output_text = gr.outputs.Textbox(label="Output")
gr.Interface(
fn=chat,
inputs=input_text,
outputs=output_text,
title="thesisGPT",
flagging_enabled=False,
description="A Conversational GPT based bot for exploring the thesis work done - AN AI-BASED FRAMEWORK AND DATA-DRIVEN METHODOLOGY FOR POST-PCR HIGH-RESOLUTION MELTING ANALYSIS.",
theme="vertical",
).launch() |