รูปภาพโดยบรรณาธิการ
เมื่อวันที่ 14 มีนาคม 2023 OpenAI ได้เปิดตัว GPT-4 ซึ่งเป็นโมเดลภาษาเวอร์ชันใหม่ล่าสุดและทรงพลังที่สุด
ภายในไม่กี่ชั่วโมงหลังจากเปิดตัว GPT-4 ทำให้ผู้คนตะลึงด้วยการพลิก ร่างที่วาดด้วยมือลงในเว็บไซต์ที่ใช้งานได้, ผ่านการสอบเนติบัณฑิตและ สร้างบทสรุปที่ถูกต้องแม่นยำของบทความวิกิพีเดีย.
นอกจากนี้ยังมีประสิทธิภาพดีกว่ารุ่นก่อนอย่าง GPT-3.5 ในการแก้ปัญหาทางคณิตศาสตร์และการตอบคำถามตามตรรกะและการใช้เหตุผล
ChatGPT ซึ่งเป็นแชทบอทที่สร้างขึ้นบน GPT-3.5 และเผยแพร่สู่สาธารณะนั้นมีชื่อเสียงในด้าน "ภาพหลอน" มันจะสร้างคำตอบที่ดูเหมือนถูกต้องและจะปกป้องคำตอบด้วย "ข้อเท็จจริง" แม้ว่าจะเต็มไปด้วยข้อผิดพลาดก็ตาม
ผู้ใช้รายหนึ่งโพสต์ทวิตเตอร์หลังจากนางแบบยืนยันว่าไข่ช้างเป็นสัตว์บกที่ใหญ่ที่สุดในบรรดาสัตว์บกทั้งหมด:
ภาพจาก ฟิออราเอเทอร์นา
และมันไม่ได้หยุดเพียงแค่นั้น อัลกอริทึมยังคงยืนยันการตอบสนองของมันด้วยข้อเท็จจริงที่สร้างขึ้นซึ่งเกือบจะทำให้ฉันเชื่อได้ชั่วขณะ
ในทางกลับกัน GPT-4 ได้รับการฝึกฝนให้ "ประสาทหลอน" น้อยลง รุ่นล่าสุดของ OpenAI นั้นยากกว่าที่จะหลอกลวงและไม่สร้างข้อผิดพลาดอย่างมั่นใจบ่อยเท่า
ในฐานะนักวิทยาศาสตร์ข้อมูล งานของฉันต้องการให้ฉันค้นหาแหล่งข้อมูลที่เกี่ยวข้อง ประมวลผลชุดข้อมูลขนาดใหญ่ล่วงหน้า และสร้างโมเดลแมชชีนเลิร์นนิงที่มีความแม่นยำสูงซึ่งจะขับเคลื่อนมูลค่าทางธุรกิจ
ฉันใช้เวลาส่วนใหญ่ในแต่ละวันในการดึงข้อมูลจากรูปแบบไฟล์ต่างๆ และรวมไว้ในที่เดียว
หลังจากที่ ChatGPT เปิดตัวครั้งแรกในเดือนพฤศจิกายน 2022 ฉันค้นหา Chatbot เพื่อดูคำแนะนำเกี่ยวกับขั้นตอนการทำงานในแต่ละวัน ฉันใช้เครื่องมือนี้เพื่อประหยัดเวลาในการทำงานเล็กๆ น้อยๆ เพื่อที่ฉันจะได้มุ่งเน้นไปที่การคิดไอเดียใหม่ๆ และการสร้างแบบจำลองที่ดีขึ้นแทน
เมื่อ GPT-4 เปิดตัว ฉันสงสัยว่ามันจะสร้างความแตกต่างในงานที่ฉันทำอยู่หรือไม่ มีประโยชน์ที่สำคัญในการใช้ GPT-4 เหนือรุ่นก่อนหรือไม่? GPT-3.5 ช่วยให้ฉันประหยัดเวลาได้มากกว่าเดิมหรือไม่
ในบทความนี้ ฉันจะแสดงให้คุณเห็นว่าฉันใช้ ChatGPT เพื่อทำให้เวิร์กโฟลว์วิทยาการข้อมูลเป็นไปโดยอัตโนมัติได้อย่างไร
ฉันจะสร้างข้อความแจ้งเดียวกันและป้อนลงในทั้ง GPT-4 และ GPT-3.5 เพื่อดูว่าข้อความแจ้งแบบแรกทำงานได้ดีกว่าจริงหรือไม่ และช่วยให้ประหยัดเวลาได้มากขึ้น
หากคุณต้องการทำตามทุกสิ่งที่ฉันทำในบทความนี้ คุณต้องมีสิทธิ์เข้าถึง GPT-4 และ GPT-3.5
จีพีที-3.5
GPT-3.5 เผยแพร่สู่สาธารณะบนเว็บไซต์ของ OpenAI เพียงไปที่ https://chat.openai.com/auth/loginกรอกรายละเอียดที่จำเป็น แล้วคุณจะสามารถเข้าถึงโมเดลภาษา:
ภาพจาก ChatGPT
จีพีที-4
ในทางกลับกัน GPT-4 นั้นซ่อนอยู่หลังเพย์วอลล์ หากต้องการเข้าถึงโมเดล คุณต้องอัปเกรดเป็น ChatGPTPlus โดยคลิก "อัปเกรดเป็น Plus"
มีค่าสมัครรายเดือน $20/เดือน ที่สามารถยกเลิกได้ตลอดเวลา:
ภาพจาก ChatGPT
หากคุณไม่ต้องการจ่ายค่าสมัครรายเดือน คุณสามารถเข้าร่วม รายการรอ API สำหรับ GPT-4 เมื่อคุณเข้าถึง API แล้ว คุณสามารถปฏิบัติตามได้ นี้ คู่มือการใช้งานใน Python
ไม่เป็นไรหากคุณไม่มีสิทธิ์เข้าถึง GPT-4 ในขณะนี้
คุณยังสามารถทำตามบทช่วยสอนนี้ด้วย ChatGPT เวอร์ชันฟรีที่ใช้ GPT-3.5 ในแบ็กเอนด์
1. การสร้างภาพข้อมูล
เมื่อทำการวิเคราะห์ข้อมูลเชิงสำรวจ การสร้างภาพอย่างรวดเร็วใน Python มักจะช่วยให้ฉันเข้าใจชุดข้อมูลได้ดีขึ้น
น่าเสียดายที่งานนี้อาจใช้เวลานานอย่างไม่น่าเชื่อ โดยเฉพาะอย่างยิ่งเมื่อคุณไม่ทราบไวยากรณ์ที่ถูกต้องเพื่อใช้เพื่อให้ได้ผลลัพธ์ที่ต้องการ
ฉันมักจะพบว่าตัวเองค้นหาผ่านเอกสารมากมายของ Seaborn และใช้ StackOverflow เพื่อสร้างพล็อต Python เดียว
มาดูกันว่า ChatGPT สามารถช่วยแก้ปัญหานี้ได้หรือไม่
เราจะใช้ Pima โรคเบาหวานอินเดียนแดง ชุดข้อมูลในส่วนนี้ คุณสามารถดาวน์โหลดชุดข้อมูลได้หากต้องการติดตามพร้อมกับผลลัพธ์ที่สร้างโดย ChatGPT
หลังจากดาวน์โหลดชุดข้อมูลแล้ว ให้โหลดลงใน Python โดยใช้ไลบรารี Pandas และพิมพ์ส่วนหัวของ dataframe:
import pandas as pd df = pd.read_csv('diabetes.csv')
df.head()
มีเก้าตัวแปรในชุดข้อมูลนี้ หนึ่งในนั้นคือ “ผลลัพธ์” คือตัวแปรเป้าหมายที่จะบอกเราว่าบุคคลนั้นจะเป็นโรคเบาหวานหรือไม่ ที่เหลือเป็นตัวแปรอิสระที่ใช้ทำนายผล
ตกลง! ดังนั้นฉันต้องการดูว่าตัวแปรใดเหล่านี้มีผลต่อการที่คน ๆ หนึ่งจะเป็นโรคเบาหวานหรือไม่
เพื่อให้บรรลุเป้าหมายนี้ เราสามารถสร้างแผนภูมิแท่งแบบกลุ่มเพื่อแสดงภาพตัวแปร "เบาหวาน" ในทุกตัวแปรตามในชุดข้อมูล
จริงๆ แล้วการเขียนโค้ดค่อนข้างง่าย แต่มาเริ่มง่ายๆ กันก่อน เราจะไปยังคำแนะนำที่ซับซ้อนมากขึ้นเมื่อเราดำเนินการผ่านบทความ
การแสดงข้อมูลด้วย GPT-3.5
เนื่องจากฉันสมัครใช้งาน ChatGPT แบบชำระเงิน เครื่องมือนี้จึงช่วยให้ฉันเลือกรุ่นที่ต้องการใช้ทุกครั้งที่เข้าถึงได้
ฉันจะเลือก GPT-3.5:
ภาพจาก ChatGPT Plus
หากคุณไม่ได้สมัครสมาชิก คุณสามารถใช้ ChatGPT เวอร์ชันฟรีได้ เนื่องจากแชทบอทใช้ GPT-3.5 เป็นค่าเริ่มต้น
ตอนนี้ ลองพิมพ์ข้อความต่อไปนี้เพื่อสร้างการแสดงภาพโดยใช้ชุดข้อมูลโรคเบาหวาน:
ฉันมีชุดข้อมูลที่มีตัวแปรอิสระ 8 ตัวและตัวแปรตาม 1 ตัว ตัวแปรตาม "ผลลัพธ์" บอกเราว่าบุคคลนั้นจะพัฒนาเป็นโรคเบาหวานหรือไม่
ตัวแปรอิสระ ได้แก่ "การตั้งครรภ์" "กลูโคส" "ความดันโลหิต" "ความหนาของผิวหนัง" "อินซูลิน" "ดัชนีมวลกาย" "ฟังก์ชันสายเลือดเบาหวาน" และ "อายุ" ถูกนำมาใช้ในการทำนายผลลัพธ์นี้
คุณสามารถสร้างโค้ด Python เพื่อแสดงภาพตัวแปรอิสระเหล่านี้ตามผลลัพธ์ได้หรือไม่? ผลลัพธ์ควรเป็นแผนภูมิแท่งแบบคลัสเตอร์เดียวที่ใส่สีด้วยตัวแปร "ผลลัพธ์" ควรมีทั้งหมด 16 แท่ง โดย 2 แท่งสำหรับแต่ละตัวแปรอิสระ
นี่คือการตอบสนองของโมเดลต่อข้อความด้านบน:
สิ่งหนึ่งที่โดดเด่นในทันทีคือโมเดลสันนิษฐานว่าเราต้องการนำเข้าชุดข้อมูลจาก Seaborn มันอาจจะตั้งสมมติฐานนี้เพราะเราขอให้ใช้ห้องสมุดซีบอร์น
นี่ไม่ใช่ปัญหาใหญ่ เราแค่ต้องเปลี่ยนหนึ่งบรรทัดก่อนที่จะเรียกใช้โค้ด
นี่คือข้อมูลโค้ดที่สมบูรณ์ที่สร้างโดย GPT-3.5:
import seaborn as sns
import matplotlib.pyplot as plt # Load the dataset
dataset = pd.read_csv("diabetes.csv") # Create the bar chart
sns.barplot( x="variable", y="value", hue="Outcome", data=pd.melt(dataset, id_vars=["Outcome"]), ci=None,
) # Set the title and labels
plt.title("Dependent Variables by Outcome")
plt.xlabel("Independent Variables")
plt.ylabel("Value") # Show the chart
plt.show()
คุณสามารถคัดลอกและวางลงใน Python IDE ของคุณได้
นี่คือผลลัพธ์ที่สร้างขึ้นหลังจากรันโค้ดด้านบน:
แผนภูมินี้ดูสมบูรณ์แบบ! เป็นวิธีที่ฉันจินตนาการไว้เมื่อพิมพ์ข้อความแจ้งลงใน ChatGPT
อย่างไรก็ตาม ปัญหาหนึ่งที่โดดเด่นคือข้อความในแผนภูมินี้ทับซ้อนกัน ฉันจะถามโมเดลว่าสามารถช่วยเราแก้ไขปัญหานี้ได้หรือไม่ โดยพิมพ์ข้อความต่อไปนี้:
อัลกอริทึมอธิบายว่าเราสามารถป้องกันการทับซ้อนนี้ได้โดยการหมุนป้ายชื่อแผนภูมิหรือปรับขนาดตัวเลข นอกจากนี้ยังสร้างรหัสใหม่เพื่อช่วยให้เราบรรลุเป้าหมายนี้
ลองเรียกใช้โค้ดนี้เพื่อดูว่าจะให้ผลลัพธ์ตามที่ต้องการหรือไม่:
import seaborn as sns
import matplotlib.pyplot as plt # Load the dataset
dataset = pd.read_csv("diabetes.csv") # Create the bar chart
sns.barplot( x="variable", y="value", hue="Outcome", data=pd.melt(dataset, id_vars=["Outcome"]), ci=None,
) # Set the title and labels
plt.title("Dependent Variables by Outcome")
plt.xlabel("Independent Variables")
plt.ylabel("Value") # Rotate the x-axis labels by 45 degrees and set horizontal alignment to right
plt.xticks(rotation=45, ha="right") # Show the chart
plt.show()
บรรทัดโค้ดด้านบนควรสร้างผลลัพธ์ต่อไปนี้:
ดูดีมาก!
ตอนนี้ฉันเข้าใจชุดข้อมูลดีขึ้นมากเพียงแค่ดูที่แผนภูมินี้ ดูเหมือนว่าคนที่มีระดับกลูโคสและอินซูลินสูงกว่ามีแนวโน้มที่จะเป็นโรคเบาหวาน
นอกจากนี้ โปรดสังเกตด้วยว่าตัวแปร “DiabetesPedigreeFunction” ไม่ได้ให้ข้อมูลใดๆ แก่เราในแผนภูมินี้ เนื่องจากคุณลักษณะนี้มีขนาดเล็กกว่า (ระหว่าง 0 ถึง 2.4) หากคุณต้องการทดลองเพิ่มเติมกับ ChatGPT คุณสามารถขอให้สร้างแผนย่อยหลายรายการภายในแผนภูมิเดียวเพื่อแก้ปัญหานี้
การแสดงข้อมูลด้วย GPT-4
ตอนนี้ เรามาป้อนข้อความแจ้งเดียวกันใน GPT-4 เพื่อดูว่าเราได้รับการตอบกลับที่ต่างออกไปหรือไม่ ฉันจะเลือกรุ่น GPT-4 ภายใน ChatGPT และพิมพ์พร้อมท์เหมือนเดิม:
สังเกตว่า GPT-4 ไม่ถือว่าเราจะใช้ dataframe ที่สร้างขึ้นใน Seaborn ได้อย่างไร
มันบอกเราว่าจะใช้ดาต้าเฟรมที่เรียกว่า “df” เพื่อสร้างการแสดงภาพ ซึ่งเป็นการปรับปรุงจากการตอบสนองที่สร้างโดย GPT-3.5
นี่คือรหัสที่สมบูรณ์ที่สร้างโดยอัลกอริทึมนี้:
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt # Assuming your DataFrame is called df
# First, you need to melt the DataFrame to make # it suitable for creating a clustered bar chart
melted_df = pd.melt( df, id_vars=["Outcome"], var_name="Independent Variable", value_name="Value",
) # Create the clustered bar chart
plt.figure(figsize=(12, 6))
sns.barplot( data=melted_df, x="Independent Variable", y="Value", hue="Outcome", ci=None,
) # Customize the plot
plt.title("Independent Variables by Outcome")
plt.ylabel("Average Value")
plt.xlabel("Independent Variables")
plt.legend(title="Outcome", loc="upper right") # Show the plot
plt.show()
รหัสด้านบนควรสร้างพล็อตต่อไปนี้:
มันสมบูรณ์แบบ!
แม้ว่าเราจะไม่ได้ร้องขอ แต่ GPT-4 ได้รวมบรรทัดของโค้ดเพื่อเพิ่มขนาดพล็อต ป้ายกำกับในแผนภูมินี้มองเห็นได้ชัดเจนทั้งหมด ดังนั้นเราจึงไม่ต้องกลับไปแก้ไขโค้ดเหมือนที่เราทำก่อนหน้านี้
นี่เป็นขั้นตอนที่อยู่เหนือการตอบสนองที่สร้างโดย GPT-3.5
อย่างไรก็ตาม โดยรวมแล้วดูเหมือนว่า GPT-3.5 และ GPT-4 ทั้งคู่มีประสิทธิภาพในการสร้างโค้ดเพื่อดำเนินการต่างๆ เช่น การแสดงภาพข้อมูลและการวิเคราะห์
โปรดทราบว่าเนื่องจากคุณไม่สามารถอัปโหลดข้อมูลไปยังอินเทอร์เฟซของ ChatGPT ได้ คุณจึงควรให้โมเดลที่มีคำอธิบายที่ถูกต้องเกี่ยวกับชุดข้อมูลของคุณเพื่อให้ได้ผลลัพธ์ที่เหมาะสมที่สุด
2. การทำงานกับเอกสาร PDF
แม้ว่านี่จะไม่ใช่กรณีการใช้งานทั่วไปของวิทยาศาสตร์ข้อมูล แต่ฉันต้องดึงข้อมูลข้อความจากไฟล์ PDF หลายร้อยไฟล์เพื่อสร้างแบบจำลองการวิเคราะห์ความรู้สึกในครั้งเดียว ข้อมูลไม่มีโครงสร้าง และฉันใช้เวลามากในการแยกและประมวลผลล่วงหน้า
ฉันมักจะทำงานร่วมกับนักวิจัยที่อ่านและสร้างเนื้อหาเกี่ยวกับเหตุการณ์ปัจจุบันที่เกิดขึ้นในอุตสาหกรรมเฉพาะ พวกเขาจำเป็นต้องติดตามข่าว แยกวิเคราะห์รายงานของบริษัท และอ่านเกี่ยวกับแนวโน้มที่อาจเกิดขึ้นในอุตสาหกรรม
แทนที่จะอ่านรายงานของบริษัท 100 หน้า ง่ายกว่าไหมที่จะแยกคำที่คุณสนใจและอ่านเฉพาะประโยคที่มีคีย์เวิร์ดเหล่านั้น
หรือหากคุณสนใจเทรนด์ คุณสามารถสร้างเวิร์กโฟลว์อัตโนมัติที่แสดงการเติบโตของคำหลักในช่วงเวลาหนึ่ง แทนที่จะทำรายงานแต่ละฉบับด้วยตนเอง
ในส่วนนี้ เราจะใช้ ChatGPT เพื่อวิเคราะห์ไฟล์ PDF ใน Python เราจะขอให้แชทบอทแยกเนื้อหาของไฟล์ PDF และเขียนลงในไฟล์ข้อความ
อีกครั้ง การดำเนินการนี้จะทำได้โดยใช้ทั้ง GPT-3.5 และ GPT-4 เพื่อดูว่ามีความแตกต่างอย่างมีนัยสำคัญในโค้ดที่สร้างขึ้นหรือไม่
อ่านไฟล์ PDF ด้วย GPT-3.5
ในส่วนนี้ เราจะวิเคราะห์เอกสาร PDF ที่เปิดเผยต่อสาธารณะในชื่อ ข้อมูลเบื้องต้นเกี่ยวกับการเรียนรู้ของเครื่องสำหรับวิศวกร. อย่าลืมดาวน์โหลดไฟล์นี้หากคุณต้องการเขียนโค้ดในส่วนนี้
ก่อนอื่น ขอให้อัลกอริทึมสร้างโค้ด Python เพื่อดึงข้อมูลจากเอกสาร PDF นี้และบันทึกลงในไฟล์ข้อความ:
นี่คือรหัสที่สมบูรณ์โดยอัลกอริทึม:
import PyPDF2 # Open the PDF file in read-binary mode
with open("Intro_to_ML.pdf", "rb") as pdf_file: # Create a PDF reader object pdf_reader = PyPDF2.PdfFileReader(pdf_file) # Get the total number of pages in the PDF file num_pages = pdf_reader.getNumPages() # Create a new text file with open("output_file.txt", "w") as txt_file: # Loop through each page in the PDF file for page_num in range(num_pages): # Get the text from the current page page_text = pdf_reader.getPage(page_num).extractText() # Write the text to the text file txt_file.write(page_text)
(หมายเหตุ: อย่าลืมเปลี่ยนชื่อไฟล์ PDF เป็นชื่อที่คุณบันทึกไว้ก่อนที่จะรันโค้ดนี้)
ขออภัย หลังจากเรียกใช้รหัสที่สร้างโดย GPT-3.5 ฉันพบข้อผิดพลาด Unicode ต่อไปนี้:
กลับไปที่ GPT-3.5 และดูว่าโมเดลสามารถแก้ไขปัญหานี้ได้หรือไม่:
ฉันวางข้อผิดพลาดลงใน ChatGPT และโมเดลตอบว่าสามารถแก้ไขได้โดยเปลี่ยนการเข้ารหัสที่ใช้เป็น “utf-8” มันยังให้รหัสที่แก้ไขซึ่งสะท้อนถึงการเปลี่ยนแปลงนี้แก่ฉันด้วย:
import PyPDF2 # Open the PDF file in read-binary mode
with open("Intro_to_ML.pdf", "rb") as pdf_file: # Create a PDF reader object pdf_reader = PyPDF2.PdfFileReader(pdf_file) # Get the total number of pages in the PDF file num_pages = pdf_reader.getNumPages() # Create a new text file with utf-8 encoding with open("output_file.txt", "w", encoding="utf-8") as txt_file: # Loop through each page in the PDF file for page_num in range(num_pages): # Get the text from the current page page_text = pdf_reader.getPage(page_num).extractText() # Write the text to the text file txt_file.write(page_text)
รหัสนี้ดำเนินการสำเร็จและสร้างไฟล์ข้อความชื่อ “output_file.txt” เนื้อหาทั้งหมดในเอกสาร PDF ถูกเขียนลงในไฟล์:
อ่านไฟล์ PDF ด้วย GPT-4
ตอนนี้ฉันจะวางพรอมต์เดียวกันลงใน GPT-4 เพื่อดูว่าโมเดลนี้มาพร้อมกับอะไร:
นี่คือรหัสที่สมบูรณ์ที่สร้างโดย GPT-4:
import PyPDF2 def pdf_to_text(input_pdf, output_txt): with open(input_pdf, "rb") as pdf_file: pdf_reader = PyPDF2.PdfFileReader(pdf_file) num_pages = pdf_reader.numPages text = "" for page_num in range(num_pages): page = pdf_reader.getPage(page_num) text += page.extractText() with open(output_txt, "w", encoding="utf-8") as text_file: text_file.write(text) input_pdf = "Intro_to_ML.pdf"
output_txt = "output_gpt4.txt"
pdf_to_text(input_pdf, output_txt)
ดูนั่นสิ!
ซึ่งแตกต่างจาก GPT-3.5, GPT-4 ได้ระบุไว้แล้วว่าควรใช้การเข้ารหัส "utf-8" เพื่อเปิดไฟล์ข้อความ เราไม่ต้องกลับไปแก้ไขโค้ดเหมือนที่ผ่านมา
โค้ดที่ได้รับจาก GPT-4 ควรทำงานได้สำเร็จ และคุณควรเห็นเนื้อหาของเอกสาร PDF ในไฟล์ข้อความที่สร้างขึ้น
มีเทคนิคอื่นๆ อีกมากมายที่คุณสามารถใช้เพื่อทำให้เอกสาร PDF เป็นอัตโนมัติด้วย Python หากคุณต้องการสำรวจเพิ่มเติม ต่อไปนี้เป็นข้อความแจ้งอื่นๆ ที่คุณสามารถพิมพ์ลงใน ChatGPT:
- คุณสามารถเขียนโค้ด Python เพื่อรวมไฟล์ PDF สองไฟล์ได้หรือไม่
- ฉันจะนับการเกิดขึ้นของคำหรือวลีเฉพาะในเอกสาร PDF ด้วย Python ได้อย่างไร
- คุณสามารถเขียนโค้ด Python เพื่อแยกตารางจาก PDF และเขียนลงใน Excel ได้หรือไม่?
ฉันขอแนะนำให้ลองใช้สิ่งเหล่านี้ในช่วงเวลาว่าง คุณจะแปลกใจที่ GPT-4 สามารถช่วยให้คุณทำงานที่ไม่สำคัญซึ่งโดยปกติจะใช้เวลาหลายชั่วโมงในการดำเนินการได้รวดเร็วเพียงใด
3. การส่งอีเมลอัตโนมัติ
ฉันใช้เวลาทำงานหลายชั่วโมงในการอ่านและตอบอีเมล ไม่เพียงแต่ใช้เวลานานเท่านั้น แต่ยังอาจทำให้เครียดได้อย่างไม่น่าเชื่อที่ต้องติดตามอีเมลเมื่อคุณต้องไล่ตามกำหนดเวลาที่กระชั้นชิด
และแม้ว่าคุณจะไม่สามารถให้ ChatGPT เขียนอีเมลทั้งหมดให้คุณ (ฉันต้องการ) คุณก็ยังสามารถใช้มันเพื่อเขียนโปรแกรมที่ส่งอีเมลตามกำหนดเวลาในเวลาที่กำหนด หรือแก้ไขเทมเพลตอีเมลเดียวที่สามารถส่งออกไปยังหลายคนได้ .
ในส่วนนี้ เราจะได้ GPT-3.5 และ GPT-4 มาช่วยเราเขียนสคริปต์ Python เพื่อส่งอีเมลอัตโนมัติ
การส่งอีเมลอัตโนมัติด้วย GPT-3.5
ขั้นแรก ให้พิมพ์ข้อความต่อไปนี้เพื่อสร้างรหัสเพื่อส่งอีเมลอัตโนมัติ:
นี่คือรหัสที่สมบูรณ์ที่สร้างโดย GPT-3.5 (อย่าลืมเปลี่ยนที่อยู่อีเมลและรหัสผ่านก่อนที่จะเรียกใช้รหัสนี้):
import smtplib # Set up SMTP connection
smtp_server = "smtp.gmail.com"
smtp_port = 587
sender_email = "your_email@gmail.com"
sender_password = "your_password"
receiver_email = "receiver_email@example.com" with smtplib.SMTP(smtp_server, smtp_port) as smtp: # Start TLS encryption smtp.starttls() # Log in to your Gmail account smtp.login(sender_email, sender_password) # Compose your email message subject = "Automated email" body = "Hello,nnThis is an automated email sent from Python." message = f"Subject: {subject}nn{body}" # Send the email smtp.sendmail(sender_email, receiver_email, message)
น่าเสียดายที่โค้ดนี้ทำงานไม่สำเร็จสำหรับฉัน มันสร้างข้อผิดพลาดต่อไปนี้:
ลองวางข้อผิดพลาดนี้ใน ChatGPT แล้วดูว่าโมเดลสามารถช่วยเราแก้ไขได้หรือไม่:
เอาล่ะ อัลกอริทึมได้ชี้ให้เห็นสาเหตุสองสามประการว่าทำไมเราถึงพบข้อผิดพลาดนี้
ฉันทราบข้อเท็จจริงที่ว่าข้อมูลรับรองการเข้าสู่ระบบและที่อยู่อีเมลของฉันถูกต้อง และไม่มีการพิมพ์ผิดในรหัส ดังนั้นเหตุผลเหล่านี้สามารถตัดออกได้
GPT-3.5 ยังแนะนำว่าการอนุญาตแอปที่มีความปลอดภัยน้อยอาจช่วยแก้ปัญหานี้ได้
อย่างไรก็ตาม หากคุณลองทำเช่นนี้ คุณจะไม่พบตัวเลือกในบัญชี Google ของคุณเพื่ออนุญาตให้เข้าถึงแอปที่มีความปลอดภัยน้อย
นี่เป็นเพราะ Google ไม่มีอีกต่อไป ให้ผู้ใช้อนุญาตแอปที่มีความปลอดภัยน้อยเนื่องจากปัญหาด้านความปลอดภัย
สุดท้าย GPT-3.5 ยังระบุด้วยว่าควรสร้างรหัสผ่านสำหรับแอปหากเปิดใช้การตรวจสอบสิทธิ์แบบสองปัจจัย
ฉันไม่ได้เปิดใช้งานการตรวจสอบสิทธิ์สองปัจจัย ดังนั้นฉันจะเลิกใช้โมเดลนี้ (ชั่วคราว) และดูว่า GPT-4 มีวิธีแก้ไขหรือไม่
การส่งอีเมลอัตโนมัติด้วย GPT-4
โอเค ถ้าคุณพิมพ์พรอมต์เดียวกันใน GPT-4 คุณจะพบว่าอัลกอริทึมสร้างโค้ดที่คล้ายกับที่ GPT-3.5 มอบให้เรามาก สิ่งนี้จะทำให้เกิดข้อผิดพลาดเดียวกันกับที่เราพบก่อนหน้านี้
มาดูกันว่า GPT-4 สามารถช่วยเราแก้ไขข้อผิดพลาดนี้ได้หรือไม่:
คำแนะนำของ GPT-4 คล้ายกับสิ่งที่เราเห็นก่อนหน้านี้มาก
อย่างไรก็ตาม ในครั้งนี้ เราจะแจกแจงวิธีการทำแต่ละขั้นตอนให้สำเร็จทีละขั้นตอน
GPT-4 ยังแนะนำให้สร้างรหัสผ่านสำหรับแอปด้วย ดังนั้นมาลองดูกัน
ขั้นแรก ไปที่บัญชี Google ของคุณ ไปที่ "ความปลอดภัย" และเปิดใช้งานการตรวจสอบสิทธิ์แบบสองปัจจัย จากนั้น ในส่วนเดียวกัน คุณควรเห็นตัวเลือกที่ระบุว่า “รหัสผ่านสำหรับแอป”
คลิกที่มันแล้วหน้าจอต่อไปนี้จะปรากฏขึ้น:
คุณสามารถป้อนชื่อใดก็ได้ที่คุณต้องการ แล้วคลิก "สร้าง"
รหัสผ่านสำหรับแอปใหม่จะปรากฏขึ้น
แทนที่รหัสผ่านที่มีอยู่ในรหัส Python ด้วยรหัสผ่านสำหรับแอปนี้และเรียกใช้รหัสอีกครั้ง:
import smtplib # Set up SMTP connection
smtp_server = "smtp.gmail.com"
smtp_port = 587
sender_email = "your_email@gmail.com"
sender_password = "YOUR_APP_PASSWORD"
receiver_email = "receiver_email@example.com" with smtplib.SMTP(smtp_server, smtp_port) as smtp: # Start TLS encryption smtp.starttls() # Log in to your Gmail account smtp.login(sender_email, sender_password) # Compose your email message subject = "Automated email" body = "Hello,nnThis is an automated email sent from Python." message = f"Subject: {subject}nn{body}" # Send the email smtp.sendmail(sender_email, receiver_email, message)
ควรจะทำงานได้สำเร็จในครั้งนี้ และผู้รับของคุณจะได้รับอีเมลที่มีลักษณะดังนี้:
Perfect!
ต้องขอบคุณ ChatGPT ที่ทำให้เราส่งอีเมลอัตโนมัติด้วย Python ได้สำเร็จ
หากคุณต้องการก้าวไปอีกขั้น ฉันขอแนะนำให้สร้างข้อความแจ้งที่ช่วยให้คุณ:
- ส่งอีเมลจำนวนมากไปยังผู้รับหลายคนในเวลาเดียวกัน
- ส่งอีเมลตามกำหนดเวลาไปยังรายการที่อยู่อีเมลที่กำหนดไว้ล่วงหน้า
- ส่งอีเมลที่ปรับแต่งตามอายุ เพศ และสถานที่ให้ผู้รับ
นาทัสชา เซลวาราช เป็นนักวิทยาศาสตร์ข้อมูลที่เรียนรู้ด้วยตนเองและมีใจรักในการเขียน คุณสามารถเชื่อมต่อกับเธอได้ที่ LinkedIn.
- เนื้อหาที่ขับเคลื่อนด้วย SEO และการเผยแพร่ประชาสัมพันธ์ รับการขยายวันนี้
- เพลโตบล็อคเชน Web3 Metaverse ข่าวกรอง ขยายความรู้. เข้าถึงได้ที่นี่.
- ที่มา: https://www.kdnuggets.com/2023/03/automate-boring-stuff-chatgpt-python.html?utm_source=rss&utm_medium=rss&utm_campaign=automate-the-boring-stuff-with-chatgpt-and-python
- :เป็น
- $ ขึ้น
- 1
- 100
- 2022
- 2023
- 7
- 8
- a
- เกี่ยวกับเรา
- ข้างบน
- เข้า
- บรรลุผล
- ลงชื่อเข้าใช้
- ถูกต้อง
- บรรลุ
- ข้าม
- จริง
- ที่อยู่
- หลังจาก
- ขั้นตอนวิธี
- ทั้งหมด
- การอนุญาต
- ช่วยให้
- แล้ว
- แม้ว่า
- จำนวน
- การวิเคราะห์
- วิเคราะห์
- วิเคราะห์
- และ
- สัตว์
- คำตอบ
- API
- app
- ปรากฏ
- ปพลิเคชัน
- เป็น
- บทความ
- AS
- สันนิษฐาน
- ข้อสมมติ
- At
- การยืนยันตัวตน
- โดยอัตโนมัติ
- อัตโนมัติ
- ใช้ได้
- เฉลี่ย
- กลับ
- แบ็กเอนด์
- บาร์
- ราว
- ตาม
- BE
- เพราะ
- กลายเป็น
- ก่อน
- หลัง
- ประโยชน์ที่ได้รับ
- ดีกว่า
- ระหว่าง
- ค่าดัชนีมวลกาย
- ร่างกาย
- เจาะ
- รายละเอียด
- สร้าง
- สร้าง
- ธุรกิจ
- by
- ที่เรียกว่า
- CAN
- ยกเลิก
- ไม่ได้
- ก่อให้เกิด
- เปลี่ยนแปลง
- เปลี่ยนแปลง
- แผนภูมิ
- chatbot
- ChatGPT
- อย่างเห็นได้ชัด
- คลิก
- รหัส
- COM
- มา
- ร่วมกัน
- บริษัท
- บริษัท
- สมบูรณ์
- ซับซ้อน
- ความกังวลเกี่ยวกับ
- มั่นใจ
- เชื่อมต่อ
- การเชื่อมต่อ
- รวม
- เนื้อหา
- เนื้อหา
- ยืนยัน
- ได้
- สร้าง
- ที่สร้างขึ้น
- การสร้าง
- หนังสือรับรอง
- อยากรู้อยากเห็น
- ปัจจุบัน
- ขณะนี้
- ปรับแต่ง
- การปรับแต่ง
- ประจำวัน
- ข้อมูล
- การวิเคราะห์ข้อมูล
- วิทยาศาสตร์ข้อมูล
- นักวิทยาศาสตร์ข้อมูล
- การสร้างภาพข้อมูล
- ชุดข้อมูล
- วัน
- ค่าเริ่มต้น
- ขึ้นอยู่กับ
- ลักษณะ
- รายละเอียด
- พัฒนา
- โรคเบาหวาน
- DID
- ความแตกต่าง
- ต่าง
- เอกสาร
- เอกสาร
- เอกสาร
- ไม่
- การทำ
- Dont
- ดาวน์โหลด
- ขับรถ
- ในระหว่าง
- แต่ละ
- ก่อน
- ง่ายดาย
- มีประสิทธิภาพ
- ไข่
- ทั้ง
- ช้าง
- อีเมล
- อีเมล
- ทำให้สามารถ
- เปิดการใช้งาน
- การเข้ารหัสลับ
- เข้าสู่
- ความผิดพลาด
- ข้อผิดพลาด
- โดยเฉพาะอย่างยิ่ง
- อีเธอร์ (ETH)
- เหตุการณ์
- ทุกๆ
- ทุกอย่าง
- เผง
- Excel
- ดำเนินการ
- ที่มีอยู่
- การทดลอง
- อธิบาย
- การวิเคราะห์ข้อมูลเชิงสำรวจ
- สำรวจ
- กว้างขวาง
- สารสกัด
- ลักษณะ
- ค่าธรรมเนียม
- สองสาม
- รูป
- เนื้อไม่มีมัน
- ไฟล์
- ใส่
- หา
- ชื่อจริง
- แก้ไขปัญหา
- การแก้ไข
- โฟกัส
- ปฏิบัติตาม
- ดังต่อไปนี้
- สำหรับ
- อดีต
- ฟรี
- มัก
- ราคาเริ่มต้นที่
- การทำงาน
- ต่อไป
- เพศ
- สร้าง
- สร้าง
- สร้าง
- การสร้าง
- ได้รับ
- ให้
- จะช่วยให้
- Gmail
- Go
- ไป
- การเจริญเติบโต
- คำแนะนำ
- ให้คำแนะนำ
- มือ
- มี
- หัว
- ช่วย
- จะช่วยให้
- โปรดคลิกที่นี่เพื่ออ่านรายละเอียดเพิ่มเติม
- ซ่อนเร้น
- สูงกว่า
- อย่างสูง
- ตามแนวนอน
- ชั่วโมง
- สรุป ความน่าเชื่อถือของ Olymp Trade?
- ทำอย่างไร
- อย่างไรก็ตาม
- HTTPS
- ใหญ่
- ร้อย
- i
- ความคิด
- ทันที
- ส่งผลกระทบ
- นำเข้า
- สำคัญ
- การปรับปรุง
- in
- รวม
- เพิ่ม
- เหลือเชื่อ
- อิสระ
- อุตสาหกรรม
- อุตสาหกรรม
- ข้อมูล
- แทน
- สนใจ
- อินเตอร์เฟซ
- บทนำ
- ปัญหา
- IT
- ITS
- การสัมภาษณ์
- ร่วม
- KD นักเก็ต
- ทราบ
- ป้ายกำกับ
- ที่ดิน
- ภาษา
- ใหญ่
- ใหญ่ที่สุด
- ล่าสุด
- เปิดตัว
- เปิดตัว
- การเรียนรู้
- ช่วยให้
- ระดับ
- ห้องสมุด
- กดไลก์
- น่าจะ
- Line
- เส้น
- รายการ
- โหลด
- ที่ตั้ง
- มอง
- ที่ต้องการหา
- LOOKS
- Lot
- เครื่อง
- เรียนรู้เครื่อง
- ทำ
- ทำ
- ด้วยมือ
- หลาย
- มีนาคม
- คณิตศาสตร์
- matplotlib
- กล่าวถึง
- ผสาน
- ข่าวสาร
- อาจ
- โหมด
- แบบ
- โมเดล
- การแก้ไข
- แก้ไข
- ขณะ
- รายเดือน
- สมัครสมาชิกรายเดือน
- ข้อมูลเพิ่มเติม
- มากที่สุด
- ย้าย
- หลาย
- ชื่อ
- นำทาง
- จำเป็นต้อง
- ใหม่
- แอปใหม่
- ล่าสุด
- ข่าว
- ฉาวโฉ่
- พฤศจิกายน
- จำนวน
- วัตถุ
- of
- ถูก
- on
- ONE
- เปิด
- OpenAI
- สูงสุด
- ตัวเลือกเสริม (Option)
- อื่นๆ
- ผล
- ประสิทธิภาพเหนือกว่า
- เอาท์พุต
- หน้า
- ต้องจ่าย
- หมีแพนด้า
- กิเลส
- รหัสผ่าน
- รหัสผ่าน
- ชำระ
- รูปแบบไฟล์ PDF
- คน
- ดำเนินการ
- ที่มีประสิทธิภาพ
- คน
- สถานที่
- เพลโต
- เพลโตดาต้าอินเทลลิเจนซ์
- เพลโตดาต้า
- บวก
- ที่มีศักยภาพ
- ที่มีประสิทธิภาพ
- บรรพบุรุษ
- คาดการณ์
- สวย
- ป้องกัน
- ก่อนหน้านี้
- พิมพ์
- อาจ
- ปัญหา
- ปัญหาที่เกิดขึ้น
- โปรแกรม
- ความคืบหน้า
- ให้
- ให้
- สาธารณะ
- สาธารณชน
- หลาม
- คำถาม
- รวดเร็ว
- อย่างรวดเร็ว
- อ่าน
- ผู้อ่าน
- การอ่าน
- เหตุผล
- รับ
- ผู้รับ
- สะท้อนให้เห็นถึง
- การเผยแพร่
- ตรงประเด็น
- ที่เหลืออยู่
- รายงาน
- รายงาน
- จำเป็นต้องใช้
- ต้อง
- นักวิจัย
- การตอบสนอง
- คำตอบ
- ผล
- ผลสอบ
- วิ่ง
- วิ่ง
- เดียวกัน
- ลด
- เงินออม
- พูดว่า
- ขนาด
- ที่กำหนดไว้
- วิทยาศาสตร์
- นักวิทยาศาสตร์
- จอภาพ
- ทะเลบอร์น
- ค้นหา
- Section
- ปลอดภัย
- ความปลอดภัย
- การส่ง
- ความรู้สึก
- ชุด
- น่า
- โชว์
- สำคัญ
- คล้ายคลึงกัน
- ง่าย
- ง่ายดาย
- ตั้งแต่
- เดียว
- ขนาด
- มีขนาดเล็กกว่า
- So
- ทางออก
- แก้
- การแก้
- บาง
- แหล่งที่มา
- โดยเฉพาะ
- ที่ระบุไว้
- ใช้จ่าย
- การใช้จ่าย
- ยืน
- เริ่มต้น
- เข้าพัก
- ขั้นตอน
- ยังคง
- หยุด
- หรือ
- การสมัครสมาชิก
- ประสบความสำเร็จ
- ชี้ให้เห็นถึง
- เหมาะสม
- ประหลาดใจ
- วากยสัมพันธ์
- ปรับปรุง
- เอา
- การ
- เป้า
- งาน
- งาน
- เทคนิค
- บอก
- เทมเพลต
- ที่
- พื้นที่
- ของพวกเขา
- พวกเขา
- ที่นั่น
- ล้อยางขัดเหล่านี้ติดตั้งบนแกน XNUMX (มม.) ผลิตภัณฑ์นี้ถูกผลิตในหลายรูปทรง และหลากหลายเบอร์ความแน่นหนาของปริมาณอนุภาคขัดของมัน จะทำให้ท่านได้รับประสิทธิภาพสูงในการขัดและการใช้งานที่ยาวนาน
- สิ่ง
- ตลอด
- เวลา
- ต้องใช้เวลามาก
- ชื่อหนังสือ
- หัวข้อ
- TLS
- ไปยัง
- เครื่องมือ
- ด้านบน
- รวม
- ผ่านการฝึกอบรม
- แนวโน้ม
- การหมุน
- เกี่ยวกับการสอน
- พูดเบาและรวดเร็ว
- พื้นฐาน
- เข้าใจ
- Unicode
- อัพเกรด
- us
- ใช้
- ผู้ใช้งาน
- ผู้ใช้
- มักจะ
- ความคุ้มค่า
- รุ่น
- มองเห็นได้
- เยี่ยมชมร้านค้า
- การสร้างภาพ
- W
- อยาก
- Website
- อะไร
- ว่า
- ที่
- WHO
- วิกิพีเดีย
- จะ
- กับ
- ภายใน
- คำ
- คำ
- งาน
- เวิร์กโฟลว์
- ขั้นตอนการทำงาน
- การทำงาน
- จะ
- เขียน
- การเขียน
- เขียน
- ของคุณ
- ลมทะเล