la04 commited on
Commit
733c1ca
·
verified ·
1 Parent(s): 0eb67a7

Delete app.py

Browse files
Files changed (1) hide show
  1. app.py +0 -58
app.py DELETED
@@ -1,58 +0,0 @@
1
- import os
2
- import PyPDF2
3
- from langchain.embeddings import HuggingFaceEmbeddings
4
- from langchain.vectorstores import FAISS
5
- from langchain.chains import RetrievalQA
6
- from langchain.document_loaders import TextLoader
7
- from langchain.prompts import PromptTemplate
8
- from langchain.llms import OpenAI
9
- from langchain.text_splitter import RecursiveCharacterTextSplitter
10
-
11
- # Funktion zum Extrahieren von Text aus PDF
12
- def extract_text_from_pdf(pdf_path):
13
- with open(pdf_path, 'rb') as file:
14
- reader = PyPDF2.PdfReader(file)
15
- text = ""
16
- for page in reader.pages:
17
- text += page.extract_text()
18
- return text
19
-
20
- # Funktion zum Erstellen von Embeddings und Indexierung
21
- def create_embeddings_and_index(text):
22
- # Text in kleinere Teile aufteilen
23
- text_splitter = RecursiveCharacterTextSplitter(chunk_size=1000, chunk_overlap=0)
24
- texts = text_splitter.split_text(text)
25
-
26
- # Embeddings erzeugen
27
- embeddings = HuggingFaceEmbeddings(model_name="sentence-transformers/all-MiniLM-L6-v2")
28
-
29
- # Indexierung mit FAISS
30
- db = FAISS.from_texts(texts, embeddings)
31
- return db
32
-
33
- # Funktion für die Frage-Antwort-Pipeline
34
- def answer_question(db, question):
35
- qa_chain = RetrievalQA.from_chain_type(llm=OpenAI(), retriever=db.as_retriever())
36
- response = qa_chain.run(question)
37
- return response
38
-
39
- # Beispiel für die Nutzung
40
- def main():
41
- # Dokument-Pfad
42
- pdf_path = 'path_to_your_pdf_document.pdf'
43
-
44
- # PDF extrahieren
45
- text = extract_text_from_pdf(pdf_path)
46
- print(f"Text aus dem Dokument extrahiert: {text[:500]}...") # Nur ersten 500 Zeichen anzeigen
47
-
48
- # Embeddings erstellen und Index erstellen
49
- db = create_embeddings_and_index(text)
50
- print("Embeddings und Index erfolgreich erstellt.")
51
-
52
- # Frage stellen
53
- question = "Was ist das Ziel dieses Dokuments?"
54
- answer = answer_question(db, question)
55
- print(f"Antwort auf die Frage '{question}': {answer}")
56
-
57
- if __name__ == "__main__":
58
- main()