Vadymk01's picture
Create app.py
fbc46ac verified
import gradio as gr
from litellm import completion
GROQ_API_KEY = "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"
def summarize_text(text: str) -> str:
"""
Функція робить ОДИН виклик до LLM
і повертає коротке резюме тексту
"""
if not text.strip():
return ""
response = completion(
model="groq/llama-3.1-8b-instant",
api_key=GROQ_API_KEY,
messages=[
{
"role": "system",
"content": "Стисло підсумуй текст. Поверни лише резюме без вступних фраз."
},
{
"role": "user",
"content": text
}
],
temperature=0.3
)
return response["choices"][0]["message"]["content"]
# ---------- UI ----------
with gr.Blocks() as demo:
gr.Markdown("""
## 🧠 Сумаризація тексту за допомогою LLM
Встав текст — отримаєш коротке резюме.
""")
text_input = gr.Textbox(
label="Вхідний текст",
lines=8,
placeholder="Встав текст для сумаризації"
)
output_text = gr.Textbox(
label="Резюме",
lines=5
)
summarize_button = gr.Button("Зробити резюме")
summarize_button.click(
fn=summarize_text,
inputs=text_input,
outputs=output_text
)
demo.launch()