Spaces:
Runtime error
Runtime error
Commit
·
8d4dc71
1
Parent(s):
2657429
Update app.py
Browse files
app.py
CHANGED
@@ -1,20 +1,21 @@
|
|
1 |
import gradio as gr
|
2 |
import pandas as pd
|
3 |
import json
|
4 |
-
import os
|
5 |
|
6 |
from langchain.document_loaders import DataFrameLoader
|
7 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
8 |
-
from langchain.embeddings import
|
9 |
-
from langchain.llms import HuggingFaceHub
|
10 |
from langchain.vectorstores import Chroma
|
11 |
from langchain.chains import RetrievalQA
|
|
|
|
|
|
|
12 |
|
13 |
from trafilatura import fetch_url, extract
|
14 |
from trafilatura.spider import focused_crawler
|
15 |
from trafilatura.settings import use_config
|
16 |
|
17 |
-
|
18 |
|
19 |
|
20 |
def loading_website():
|
@@ -46,14 +47,28 @@ def url_changes(url, pages_to_visit, urls_to_scrape, repo_id):
|
|
46 |
texts = text_splitter.split_documents(documents)
|
47 |
print(f"documents splitted into {len(texts)} chunks")
|
48 |
|
49 |
-
embeddings =
|
50 |
|
51 |
persist_directory = './vector_db'
|
52 |
db = Chroma.from_documents(texts, embeddings, persist_directory=persist_directory)
|
53 |
retriever = db.as_retriever()
|
54 |
|
55 |
-
|
56 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
57 |
|
58 |
global qa
|
59 |
qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever, return_source_documents=True)
|
|
|
1 |
import gradio as gr
|
2 |
import pandas as pd
|
3 |
import json
|
|
|
4 |
|
5 |
from langchain.document_loaders import DataFrameLoader
|
6 |
from langchain.text_splitter import RecursiveCharacterTextSplitter
|
7 |
+
from langchain.embeddings.sentence_transformer import SentenceTransformerEmbeddings
|
|
|
8 |
from langchain.vectorstores import Chroma
|
9 |
from langchain.chains import RetrievalQA
|
10 |
+
from langchain import HuggingFacePipeline
|
11 |
+
|
12 |
+
from transformers import AutoTokenizer, AutoModelForCausalLM, pipeline
|
13 |
|
14 |
from trafilatura import fetch_url, extract
|
15 |
from trafilatura.spider import focused_crawler
|
16 |
from trafilatura.settings import use_config
|
17 |
|
18 |
+
|
19 |
|
20 |
|
21 |
def loading_website():
|
|
|
47 |
texts = text_splitter.split_documents(documents)
|
48 |
print(f"documents splitted into {len(texts)} chunks")
|
49 |
|
50 |
+
embeddings = SentenceTransformerEmbeddings(model_name="jhgan/ko-sroberta-multitask")
|
51 |
|
52 |
persist_directory = './vector_db'
|
53 |
db = Chroma.from_documents(texts, embeddings, persist_directory=persist_directory)
|
54 |
retriever = db.as_retriever()
|
55 |
|
56 |
+
MODEL = 'beomi/KoAlpaca-Polyglot-5.8B'
|
57 |
+
model = AutoModelForCausalLM.from_pretrained(
|
58 |
+
MODEL,
|
59 |
+
torch_dtype="auto",
|
60 |
+
)
|
61 |
+
model.eval()
|
62 |
+
pipe = pipeline(
|
63 |
+
'text-generation',
|
64 |
+
model=model,
|
65 |
+
tokenizer=MODEL,
|
66 |
+
max_length=512,
|
67 |
+
temperature=0,
|
68 |
+
top_p=0.95,
|
69 |
+
repetition_penalty=1.15
|
70 |
+
)
|
71 |
+
llm = HuggingFacePipeline(pipeline=pipe)
|
72 |
|
73 |
global qa
|
74 |
qa = RetrievalQA.from_chain_type(llm=llm, chain_type="stuff", retriever=retriever, return_source_documents=True)
|