Book_Summary / lang_chain_code.py
venkatareddykonasani's picture
Update lang_chain_code.py
daec17b verified
from langchain.prompts import PromptTemplate
from langchain.chains import LLMChain
from langchain.llms import OpenAI
llm = OpenAI(temperature=0.5)
def book_summary_generator(theme):
book_name_prompt_template = PromptTemplate(
input_variables=["theme"],
template="Please provide a list of ten well-known books that center around the theme of {theme}",
)
# Create an LLM chain with the prompt template and LLM
book_name_chain = LLMChain(llm=llm, prompt=book_name_prompt_template, output_key="book_names_list")
book_summary_prompt_template = PromptTemplate(
input_variables=["book_names_list"],
template="""
Please take one book from the books list {book_names_list}. Start with the book title in capitals.
Please provide a comprehensive summary of the book, in 10 bullet points
"""
)
# Create an LLM chain with the new prompt template and LLM
book_summary_chain = LLMChain(llm=llm, prompt=book_summary_prompt_template, output_key="book_summary")
from langchain.chains import SequentialChain
# Create a sequential chain that first gets the book names based on the theme and then gets the summary of a specific book
book_chain = SequentialChain(
chains=[book_name_chain, book_summary_chain],
input_variables=["theme"],
output_variables=["book_names_list", "book_summary"]
)
# Get the book summary for a specific book based on the theme
book_summary = book_chain.invoke(theme)
return(book_summary)
if __name__ == "__main__":
theme = "personality development"
book_summary = book_summary_generator(theme)
print(book_summary)