Skip to content

Commit d9de8de

Browse files
committed
Refactor code to improve readability and maintainability
1 parent a1e2896 commit d9de8de

File tree

2 files changed

+13
-8
lines changed

2 files changed

+13
-8
lines changed

webui.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
import gradio as gr
22

33
from summarizer import load_document, setup_summarization_chain
4-
from yt_summarizer import summarize_video, check_link
54
from translator import setup_translator_chain
5+
from yt_summarizer import check_link, summarize_video
6+
67

78
def summarize(url):
89
if check_link(url):
@@ -14,11 +15,13 @@ def summarize(url):
1415

1516
return [result, gr.Button("🇹🇷 Translate ", visible=True)]
1617

18+
1719
def translate(text):
1820
llm_chain = setup_translator_chain()
1921
result = llm_chain.run(text)
2022
return result
2123

24+
2225
with gr.Blocks() as demo:
2326
gr.Markdown(
2427
"""# Cobanov Web and Video Summarizer
@@ -54,4 +57,4 @@ def translate(text):
5457
btn_generate.click(summarize, inputs=[url], outputs=[summary, btn_translate])
5558
btn_translate.click(translate, inputs=[summary], outputs=[summary])
5659

57-
demo.launch()
60+
demo.launch()

yt_summarizer.py

Lines changed: 8 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1-
from langchain_community.document_loaders import YoutubeLoader
1+
import re
2+
3+
from langchain.chains.summarize import load_summarize_chain
24
from langchain.text_splitter import TokenTextSplitter
35
from langchain_community.chat_models import ChatOllama
4-
from langchain.chains.summarize import load_summarize_chain
6+
from langchain_community.document_loaders import YoutubeLoader
57
from langchain_core.prompts import PromptTemplate
6-
import re
78

89

910
def check_link(link):
@@ -23,9 +24,10 @@ def get_transcript(video_link):
2324

2425

2526
def split_chunks(transcript):
26-
# Split the transcript into chunks
27-
# Llama 3 model takes up to 8192 input tokens, so I set chunk size to 7500 for leaving some space to model.
28-
splitter = TokenTextSplitter(chunk_size=7500, chunk_overlap=100)
27+
28+
splitter = TokenTextSplitter(
29+
chunk_size=7500, chunk_overlap=100
30+
) # Llama 3 model takes up to 8192 input tokens, so I set chunk size to 7500 for leaving some space to model.
2931
chunks = splitter.split_documents(transcript)
3032
return chunks
3133

0 commit comments

Comments
 (0)