Home >Backend Development >Python Tutorial >Let's talk about how to design a great reminder app?
In this guide, we will cover some advanced and interesting ways we can use hint engineering to perform useful and more advanced tasks.
Please note that this section is under heavy development. Topic:
LLM has powerful text generation capabilities. Using effective prompting strategies can guide the model to produce better, more consistent, and more factual responses. LLM is also particularly useful for generating data useful for running a variety of experiments. For example, we can use it to generate quick samples for a sentiment classifier like this:
Quick:
Produce 10 exemplars for sentiment analysis. Examples are categorized as either positive or negative. Produce 2 negative examples and 8 positive examples. Use this format for the examples: Q: <sentence> A: <sentiment>
Output:
Q: 我刚得到了有史以来最好的消息! A: 积极的 Q: 我们刚刚在工作中得到了加薪! A: 积极的 Q: 我为今天所取得的成就感到非常自豪。 A: 积极的 Q: 我度过了有史以来最好的一天! A: 积极的 Q: 我非常期待周末的到来。 A: 积极的 Q: 我刚收到了有史以来最好的礼物! A: 积极的 Q: 我现在非常开心。 A: 积极的 Q: 我很幸运有这么一支了不起的家庭。 A: 积极的 Q: 外面的天气很阴暗。 A: 消极的 Q: 我刚得到了一些可怕的消息。 A: 消极的
This is very useful. We use this example for a different test in another part of the guide.
Gao et al. (2022) proposed a method to use LLM to read natural language questions and generate programs as an intermediate reasoning step. The created program-assisted language model (PAL) differs from thought chain prompts in that instead of using free-form text to arrive at a solution, it offloads the solution steps to a programming runtime, such as the Python interpreter.
import openai from datetime import datetime from dateutil.relativedelta import relativedelta import os from langchain.llms import OpenAI from dotenv import load_dotenvLet’s configure something first:
load_dotenv()API configuration
openai.api_key = os.getenv("OPENAI_API_KEY")
os.environ["OPENAI_API_KEY"] = os.getenv("OPENAI_API_KEY")
llm = OpenAI(model_name='text-davinci-003', temperature=0)Set prompt question:
question = "Today is 27 February 2023. I was born exactly 25 years ago. What is the date I was born in MM/DD/YYYY?" DATE_UNDERSTANDING_PROMPT = """ # Q: 2015 is coming in 36 hours. What is the date one week from today in MM/DD/YYYY? # If 2015 is coming in 36 hours, then today is 36 hours before. today = datetime(2015, 1, 1) - relativedelta(hours=36) # One week from today, one_week_from_today = today + relativedelta(weeks=1) # The answer formatted with %m/%d/%Y is one_week_from_today.strftime('%m/%d/%Y') # Q: The first day of 2019 is a Tuesday, and today is the first Monday of 2019. What is the date today in MM/DD/YYYY? # If the first day of 2019 is a Tuesday, and today is the first Monday of 2019, then today is 6 days later. today = datetime(2019, 1, 1) + relativedelta(days=6) # The answer formatted with %m/%d/%Y is today.strftime('%m/%d/%Y') # Q: The concert was scheduled to be on 06/01/1943, but was delayed by one day to today. What is the date 10 days ago in MM/DD/YYYY? # If the concert was scheduled to be on 06/01/1943, but was delayed by one day to today, then today is one day later. today = datetime(1943, 6, 1) + relativedelta(days=1) # 10 days ago, ten_days_ago = today - relativedelta(days=10) # The answer formatted with %m/%d/%Y is ten_days_ago.strftime('%m/%d/%Y') # Q: It is 4/19/1969 today. What is the date 24 hours later in MM/DD/YYYY? # It is 4/19/1969 today. today = datetime(1969, 4, 19) # 24 hours later, later = today + relativedelta(hours=24) # The answer formatted with %m/%d/%Y is today.strftime('%m/%d/%Y') # Q: Jane thought today is 3/11/2002, but today is in fact Mar 12, which is 1 day later. What is the date 24 hours later in MM/DD/YYYY? # If Jane thought today is 3/11/2002, but today is in fact Mar 12, then today is 3/1/2002. today = datetime(2002, 3, 12) # 24 hours later, later = today + relativedelta(hours=24) # The answer formatted with %m/%d/%Y is later.strftime('%m/%d/%Y') # Q: Jane was born on the last day of Feburary in 2001. Today is her 16-year-old birthday. What is the date yesterday in MM/DD/YYYY? # If Jane was born on the last day of Feburary in 2001 and today is her 16-year-old birthday, then today is 16 years later. today = datetime(2001, 2, 28) + relativedelta(years=16) # Yesterday, yesterday = today - relativedelta(days=1) # The answer formatted with %m/%d/%Y is yesterday.strftime('%m/%d/%Y') # Q: {question} """.strip() + 'n'
llm_out = llm(DATE_UNDERSTANDING_PROMPT.format(question=question)) print(llm_out)
exec(llm_out) print(born)This will output the following: 02/27/1998
The above is the detailed content of Let's talk about how to design a great reminder app?. For more information, please follow other related articles on the PHP Chinese website!