LLM4 / app.py
Simon
dont care
fdf8874
raw
history blame
3.02 kB
# # we'll need a few dependencies before we can do this
# #!pip install chromadb -q
# from langchain.vectorstores import Chroma
# persist_directory = "vector_db"
# vectordb = Chroma.from_documents(documents=documents, embedding=embeddings, persist_directory=persist_directory) #### YOUR CODE HERE
# """Now we can persist our Chroma vector store - and then show an example of how you would load that persisted vector store."""
# vectordb.persist()
# vectordb = None
# """As you can see when you run the following cell - loaded the persisted vectore store is *much* quicker than reinstantiating it - and that is the benefit of `persist_directory`!"""
# vectordb = Chroma(persist_directory=persist_directory, embedding_function=embeddings)
# """Now that we have our docs set-up - we're ready to progress to the next part of the LangChain applciation puzzle!
# ### Tool Chain
# Now we can leverage our `oc_retriever` as a tool in our LangChain application!
# We'll be utilizing the BLOOMZ-1b7 model as our LLM today - so we can expect that our results will be less effective than if we used OpenAI's gpt-3.5-turbo, but the advantage is that no information will escape outside of our Colab environment.
# First up, let's load our model!
# """
# from langchain import HuggingFacePipeline
# llm = HuggingFacePipeline.from_model_id(
# model_id="bigscience/bloomz-1b7", ### YOUR CODE HERE
# task="text-generation", ### YOUR CODE HERE
# model_kwargs={"temperature" : 0, "max_length" : 500})
# """Now let's set up our document vector store as a Retriever tool so we can leverage it in our chain!"""
# doc_retriever = vectordb.as_retriever() ### YOUR CODE HERE
# """### Final Chain
# With that set-up, we're good to set-up our final RetrievalQA chain and leverage all the documents we have in our Vector DB!
# """
# from langchain.chains import RetrievalQA
# shakespeare_qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=doc_retriever) ### YOUR CODE HERE
# """Let's test it out by itself!"""
# #shakespeare_qa.run("Who was Hamlet's Mother?")
# """### Conclusion
# Here we have it!
# A system capable of querying over multiple documents - all without every needing to hit an external API!
# """
# def make_inference(query):
# docs = docsearch.get_relevant_documents(query)
# return(chain.run(input_documents=docs, question=query))
# if __name__ == "__main__":
# # make a gradio interface
# import gradio as gr
# gr.Interface(
# make_inference,
# [
# gr.inputs.Textbox(lines=2, label="Query"),
# ],
# gr.outputs.Textbox(label="Response"),
# title="🗣️TalkToMyDoc📄",
# description="🗣️TalkToMyDoc📄 is a tool that allows you to ask questions about a document. In this case - Hitch Hitchhiker's Guide to the Galaxy.",
# ).launch()
import gradio as gr
def greet(name):
return "Hello " + name + "!!"
iface = gr.Interface(fn=greet, inputs="text", outputs="text")
iface.launch()