Text summarization and expansion

ChatGPT Prompt Engineering for Developers

Fouad Trad

Machine Learning Engineer

Text summarization

  • Condenses text into shorter format
  • Streamlines business processes
    • Finance -> summarizes lengthy reports
    • Marketing -> transforms customer feedback into actionable insights
  • LLMs can summarize texts with effective prompts

Image showing how summarization changes a pile of books into a document containing a summary.

ChatGPT Prompt Engineering for Developers

Ineffective prompt

  • Only specifies text to summarize
text = "I recently purchased your XYZ Smart Watch and wanted to provide some feedback
based on my experience with the product. I must say that I'm impressed with the sleek design 
and build quality of the watch. It feels comfortable on the wrist and looks great with any 
outfit. The touchscreen is responsive and easy to navigate through the various features."

prompt = f"""Summarize the text delimited by triple backticks: ```{text}```""" print(get_response(prompt))
The author purchased the XYZ Smart Watch and is impressed with its sleek design, build 
quality, and comfortable fit on the wrist. They find the touchscreen responsive and 
user-friendly for navigating the watch's features.
ChatGPT Prompt Engineering for Developers

Prompt improvement

  • Output limits
  • Output structure
  • Summarization focus

Image showing a person moving from a step to a higher one as a sign of improvement.

ChatGPT Prompt Engineering for Developers

Effective prompt: output limits

  • Specify number of sentences, words, characters
text = "I recently purchased your XYZ Smart Watch and wanted to provide some feedback
based on my experience with the product. I must say that I'm impressed with the sleek design 
and build quality of the watch. It feels comfortable on the wrist and looks great with any 
outfit. The touchscreen is responsive and easy to navigate through the various features."

prompt = f"""Summarize the text delimited by triple backticks in one sentence: ```{text}```""" print(get_response(prompt))
The customer is impressed with the sleek design, build quality, comfort, and responsiveness 
of the XYZ Smart Watch's touch screen.
ChatGPT Prompt Engineering for Developers

Effective prompt: output structure

  • Specify output structure
text = "I recently purchased your XYZ Smart Watch and wanted to provide some feedback
based on my experience with the product. I must say that I'm impressed with the sleek design 
and build quality of the watch. It feels comfortable on the wrist and looks great with any 
outfit. The touchscreen is responsive and easy to navigate through the various features."

prompt = f"""Summarize the text delimited by triple backticks, in at most three bullet points. ```{text}```""" print(get_response(prompt))
- The XYZ Smart Watch has a sleek and impressive design with  excellent build quality.
- It feels comfortable on the wrist and complements any outfit.
- The touch screen is responsive and user-friendly for easy navigation through the features.
ChatGPT Prompt Engineering for Developers

Effective prompt: summarization focus

  • Ask model to focus on specific parts of text
text = "I recently purchased your XYZ Smart Watch and wanted to provide some feedback
based on my experience with the product. I must say that I'm impressed with the sleek design 
and build quality of the watch. It feels comfortable on the wrist and looks great with any 
outfit. The touchscreen is responsive and easy to navigate through the various features."

prompt = f"""Summarize the review delimited by triple backticks, in three sentences, focusing on the key features and user experience: ```{text}```""" print(get_response(prompt))
ChatGPT Prompt Engineering for Developers

Effective prompt: summarization focus

The customer purchased the XYZ Smart Watch and was impressed with its sleek design 
and build quality. 
They found it comfortable to wear and versatile enough to match any outfit. 
The touch screen was responsive and user-friendly, making it easy to navigate 
through the watch's features.
ChatGPT Prompt Engineering for Developers

Text expansion

  • Generates text from ideas or bullet points
  • Improves efficiency and productivity
  • LLMs can expand text with well-crafted prompts

Image explaining that text expansion is about generating a full text based on some small ideas of requirements.

ChatGPT Prompt Engineering for Developers

Text expansion prompts

  • Ask model to expand delimited text
  • Highlight aspects to focus on
  • Provide output requirements (tone, length, structure, audience)

Icon showing a pencil writing on a notebook.

ChatGPT Prompt Engineering for Developers

Expanding service description

service_description = """Service: Social XYZ
- Social Media Strategy Development
- Content Creation and Posting 
- Audience Engagement and Community Building
- Increased Brand Visibility
- Enhanced Customer Engagement
- Data-Driven Marketing Decisions"""
prompt = f"""Expand the description for the Social XYZ service delimited by triple 
backticks to provide an overview of its features and benefits, without bypassing 
the limit of two sentences. Use a professional tone.
```{service_description}```"""
print(get_response(prompt))
ChatGPT Prompt Engineering for Developers

Expanding service description

Social XYZ is a comprehensive social media service that offers strategic 
development, content creation, and posting to help businesses effectively engage 
with their target audience and build a strong online community. 

With a focus on increasing brand visibility and enhancing customer engagement, 
Social XYZ enables businesses to make data-driven marketing decisions for optimal 
results.
ChatGPT Prompt Engineering for Developers

Let's practice!

ChatGPT Prompt Engineering for Developers

Preparing Video For Download...