prompt_env / tutorial_1.py
vivekdabhi80's picture
Upload 6 files
efb560d verified
raw
history blame
No virus
6.88 kB
import openai
import os
from dotenv import load_dotenv, find_dotenv
_ = load_dotenv(find_dotenv())
openai.api_key = os.getenv('OPENAI_API_KEY')
def get_completion(prompt, model="gpt-3.5-turbo"):
messages = [{"role": "user", "content": prompt}]
response = openai.ChatCompletion.create(
model=model,
messages=messages,
temperature=0, # this is the degree of randomness of the model's output
)
return response.choices[0].message["content"]
# text = f"""
# You should express what you want a model to do by \
# providing instructions that are as clear and \
# specific as you can possibly make them. \
# This will guide the model towards the desired output, \
# and reduce the chances of receiving irrelevant \
# or incorrect responses. Don't confuse writing a \
# clear prompt with writing a short prompt. \
# In many cases, longer prompts provide more clarity \
# and context for the model, which can lead to \
# more detailed and relevant outputs.
# """
# prompt = f"""
# Summarize the text delimited by triple backticks \
# into a single sentence.
# ```{text}```
# """
# response = get_completion(prompt)
# print(response)
# prompt = f"""
# Generate a list of three made-up book titles along \
# with their authors and genres.
# Provide them in JSON format with the following keys:
# book_id, title, author, genre.
# """
# response = get_completion(prompt)
# print(response)
# text_1 = f"""
# Making a cup of tea is easy! First, you need to get some \
# water boiling. While that's happening, \
# grab a cup and put a tea bag in it. Once the water is \
# hot enough, just pour it over the tea bag. \
# Let it sit for a bit so the tea can steep. After a \
# few minutes, take out the tea bag. If you \
# like, you can add some sugar or milk to taste. \
# And that's it! You've got yourself a delicious \
# cup of tea to enjoy.
# """
# prompt = f"""
# You will be provided with text delimited by triple quotes.
# If it contains a sequence of instructions, \
# re-write those instructions in the following format:
# Step 1 - ...
# Step 2 - …
# …
# Step N - …
# If the text does not contain a sequence of instructions, \
# then simply write \"No steps provided.\"
# \"\"\"{text_1}\"\"\"
# """
# response = get_completion(prompt)
# print("Completion for Text 1:")
# print(response)
# prompt = f"""
# Your task is to answer in a consistent style.
# <child>: Teach me about patience.
# <grandparent>: The river that carves the deepest \
# valley flows from a modest spring; the \
# grandest symphony originates from a single note; \
# the most intricate tapestry begins with a solitary thread.
# <child>: Teach me about resilience.
# """
# response = get_completion(prompt)
# print(response)
# text = f"""
# In a charming village, siblings Jack and Jill set out on \
# a quest to fetch water from a hilltop \
# well. As they climbed, singing joyfully, misfortune \
# struck—Jack tripped on a stone and tumbled \
# down the hill, with Jill following suit. \
# Though slightly battered, the pair returned home to \
# comforting embraces. Despite the mishap, \
# their adventurous spirits remained undimmed, and they \
# continued exploring with delight.
# """
# # example 1
# prompt_1 = f"""
# Perform the following actions:
# 1 - Summarize the following text delimited by triple \
# backticks with 1 sentence.
# 2 - Translate the summary into French.
# 3 - List each name in the French summary.
# 4 - Output a json object that contains the following \
# keys: french_summary, num_names.
# Separate your answers with line breaks.
# Text:
# ```{text}```
# """
# response = get_completion(prompt_1)
# print("Completion for prompt 1:")
# print(response)
# prompt_2 = f"""
# Your task is to perform the following actions:
# 1 - Summarize the following text delimited by
# <> with 1 sentence.
# 2 - Translate the summary into French.
# 3 - List each name in the French summary.
# 4 - Output a json object that contains the
# following keys: french_summary, num_names.
# Use the following format:
# Text: <text to summarize>
# Summary: <summary>
# Translation: <summary translation>
# Names: <list of names in summary>
# Output JSON: <json with summary and num_names>
# Text: <{text}>
# """
# response = get_completion(prompt_2)
# print("\nCompletion for prompt 2:")
# print(response)
# prompt = f"""
# Determine if the student's solution is correct or not.
# Question:
# I'm building a solar power installation and I need \
# help working out the financials.
# - Land costs $100 / square foot
# - I can buy solar panels for $250 / square foot
# - I negotiated a contract for maintenance that will cost \
# me a flat $100k per year, and an additional $10 / square \
# foot
# What is the total cost for the first year of operations
# as a function of the number of square feet.
# Student's Solution:
# Let x be the size of the installation in square feet.
# Costs:
# 1. Land cost: 100x
# 2. Solar panel cost: 250x
# 3. Maintenance cost: 100,000 + 100x
# Total cost: 100x + 250x + 100,000 + 100x = 450x + 100,000
# """
# response = get_completion(prompt)
# print(response)
# prompt = f"""
# Your task is to determine if the student's solution \
# is correct or not.
# To solve the problem do the following:
# - First, work out your own solution to the problem including the final total.
# - Then compare your solution to the student's solution \
# and evaluate if the student's solution is correct or not.
# Don't decide if the student's solution is correct until
# you have done the problem yourself.
# Use the following format:
# Question:
# ```
# question here
# ```
# Student's solution:
# ```
# student's solution here
# ```
# Actual solution:
# ```
# steps to work out the solution and your solution here
# ```
# Is the student's solution the same as actual solution \
# just calculated:
# ```
# yes or no
# ```
# Student grade:
# ```
# correct or incorrect
# ```
# Question:
# ```
# I'm building a solar power installation and I need help \
# working out the financials.
# - Land costs $100 / square foot
# - I can buy solar panels for $250 / square foot
# - I negotiated a contract for maintenance that will cost \
# me a flat $100k per year, and an additional $10 / square \
# foot
# What is the total cost for the first year of operations \
# as a function of the number of square feet.
# ```
# Student's solution:
# ```
# Let x be the size of the installation in square feet.
# Costs:
# 1. Land cost: 100x
# 2. Solar panel cost: 250x
# 3. Maintenance cost: 100,000 + 100x
# Total cost: 100x + 250x + 100,000 + 100x = 450x + 100,000
# ```
# Actual solution:
# """
# response = get_completion(prompt)
# print(response)
prompt = f"""
Tell me about AeroGlide UltraSlim Smart Toothbrush by Boie
"""
response = get_completion(prompt)
print(response)