이 가이드에서는 힌트 엔지니어링을 사용하여 유용하고 고급 작업을 수행할 수 있는 몇 가지 고급적이고 흥미로운 방법을 다룹니다.
이 섹션은 열심히 개발 중입니다. 주제:
LLM에는 강력한 텍스트 생성 기능이 있습니다. 효과적인 프롬프트 전략을 사용하면 모델이 더 좋고, 더 일관되고, 더 사실적인 반응을 생성하도록 안내할 수 있습니다. LLM은 또한 다양한 실험을 실행하는 데 유용한 데이터를 생성하는 데 특히 유용합니다. 예를 들어 다음과 같이 감정 분류기에 대한 빠른 샘플을 생성하는 데 사용할 수 있습니다.
Swift:
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>
출력:
Q: 我刚得到了有史以来最好的消息! A: 积极的 Q: 我们刚刚在工作中得到了加薪! A: 积极的 Q: 我为今天所取得的成就感到非常自豪。 A: 积极的 Q: 我度过了有史以来最好的一天! A: 积极的 Q: 我非常期待周末的到来。 A: 积极的 Q: 我刚收到了有史以来最好的礼物! A: 积极的 Q: 我现在非常开心。 A: 积极的 Q: 我很幸运有这么一支了不起的家庭。 A: 积极的 Q: 外面的天气很阴暗。 A: 消极的 Q: 我刚得到了一些可怕的消息。 A: 消极的
이는 매우 유용합니다. 이 예제는 가이드의 다른 부분에서 다른 테스트에 사용됩니다.
Gao et al.(2022)은 LLM을 사용하여 자연어 질문을 읽고 중간 추론 단계로 프로그램을 생성하는 방법을 제안했습니다. 생성된 프로그램 지원 언어 모델(PAL)은 자유 형식 텍스트를 사용하여 솔루션에 도달하는 대신 솔루션 단계를 Python 인터프리터와 같은 프로그래밍 런타임으로 오프로드한다는 점에서 사고 체인 프롬프트와 다릅니다.
LangChain과 OpenAI GPT-3을 사용한 예를 살펴보겠습니다. 우리는 Python 인터프리터를 활용하여 질문을 해석하고 답변을 제공할 수 있는 간단한 애플리케이션을 개발하는 데 관심이 있습니다.
특히 우리는 LLM을 사용하여 날짜 이해가 필요한 질문에 답할 수 있는 기능을 만드는 데 관심이 있습니다. 여기에서 가져온 몇 가지 예를 포함하여 LLM에 대한 팁을 제공합니다.
우리에게 필요한 가져오기는 다음과 같습니다.
import openai from datetime import datetime from dateutil.relativedelta import relativedelta import os from langchain.llms import OpenAI from dotenv import load_dotenv
먼저 몇 가지를 구성해 보겠습니다.
load_dotenv()
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)
프롬프트 + 질문 설정:
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)
그러면 다음이 출력됩니다: 02/27/1998
위 내용은 훌륭한 알림 앱을 디자인하는 방법에 대해 이야기해 볼까요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!