Blog_Generation / app.py
Kabirsingla's picture
Upload 2 files
6d18d8f
import streamlit as st
from langchain.prompts import PromptTemplate
from langchain.llms import CTransformers
### Function to get response from the llama model
def getLLamaresponse(input_text, no_words, blog_style):
#llama Model
llm = CTransformers(model="models\llama-2-7b-chat.ggmlv3.q8_0.bin",model_type="llama",
config={"max_new_tokens":256, "temperature":0.01})
#Prompt Template
template="""
write a blog for {blog_style} job profile for a topic {input_text} within {no_words} words.
"""
prompt = PromptTemplate(input_variables=['blog_style', 'input_text', 'no_words'], template=template)
#Generate the response
response = llm(prompt.format(blog_style=blog_style, input_text=input_text, no_words=no_words))
print(response)
return response
st.set_page_config(
page_title="Blog Generation",
page_icon="",
layout="centered",
initial_sidebar_state="collapsed")
st.header("Blog Generation")
input_text = st.text_input("Enter the text you want to generate a blog on")
## Creating 2 more field
## 1. Number of words to generate
## 2. Number of blogs to generate
col_1, col_2 = st.columns([5,5])
with col_1:
num_words = st.number_input("Enter the number of words to generate", min_value=10, max_value=1000, value=100)
with col_2:
blog_style = st.selectbox("Select the blog style", ["researchers", "layman", "technical_audience"], index=0)
submit = st.button("Generate Blog")
if submit:
st.write(getLLamaresponse(input_text, num_words, blog_style))