denaneek commited on
Commit
10bef19
·
1 Parent(s): b84fe1a

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +19 -1
app.py CHANGED
@@ -1,6 +1,10 @@
1
  from langchain.embeddings.openai import OpenAIEmbeddings
2
  from langchain.agents import create_csv_agent
 
 
 
3
  from langchain.llms import OpenAI
 
4
  import os
5
 
6
  file_name = 'gpt-generated-food-data.csv'
@@ -9,8 +13,22 @@ agent = create_csv_agent(OpenAI(temperature=0),
9
  file_name,
10
  verbose=True)
11
 
 
 
 
 
 
 
 
 
 
 
 
 
 
12
  def make_inference(query):
13
- return(agent.run(query))
 
14
 
15
  if __name__ == "__main__":
16
  # make a gradio interface
 
1
  from langchain.embeddings.openai import OpenAIEmbeddings
2
  from langchain.agents import create_csv_agent
3
+ from langchain.vectorstores import Chroma
4
+ from langchain.text_splitter import CharacterTextSplitter
5
+ from langchain.chains.question_answering import load_qa_chain
6
  from langchain.llms import OpenAI
7
+ from langchain.document_loaders.csv_loader import CSVLoader
8
  import os
9
 
10
  file_name = 'gpt-generated-food-data.csv'
 
13
  file_name,
14
  verbose=True)
15
 
16
+ loader = CSVLoader(file_path=file_name)
17
+ data = loader.load()
18
+
19
+ text_splitter = CharacterTextSplitter(chunk_size=1000, chunk_overlap=0, separator = "\n")
20
+ texts = text_splitter.split_text(data)
21
+
22
+ embeddings = OpenAIEmbeddings()
23
+
24
+ docsearch = Chroma.from_texts(texts, embeddings, metadatas=[{"source": str(i)} for i in range(len(texts))]).as_retriever()
25
+
26
+ chain = load_qa_chain(OpenAI(temperature=0), chain_type="stuff")
27
+
28
+
29
  def make_inference(query):
30
+ docs = docsearch.get_relevant_documents(query)
31
+ return(chain.run(input_documents=docs, question=query))
32
 
33
  if __name__ == "__main__":
34
  # make a gradio interface