1.概述
最近,比較火熱的ChatGPT很受歡迎。今天,筆者爲大家來介紹一下ChatGPT能做哪些事情。
2.內容
ChatGPT是一款由OpenAI開發的專門從事對話的AI聊天機器人。它的目標是讓AI系統更加自然的與之交互,但它也可以在我們編寫代碼的時候提供一些幫助。
2.1 使用ChatGPT來繪製線性迴歸
如果你想繪製線性迴歸,你可以簡單的告訴ChatGPT:使用 matplotlib 用 Python 繪製線性迴歸
接下來,ChatGPT對話框內就會給你聽繪製線性迴歸的步驟和實現代碼,如下如所示:
我們使用這段代碼,來執行看看最終的結果,代碼如下:
import matplotlib.pyplot as plt import numpy as np # 準備數據 x = np.array([1, 2, 3, 4, 5]) y = np.array([1, 2, 1.5, 3, 2.5]) # 繪製散點圖 plt.scatter(x, y) # 計算線性迴歸模型 slope, intercept = np.polyfit(x, y, 1) # 繪製線性迴歸直線 plt.plot(x, slope * x + intercept, color='r') # 添加 x 軸、y 軸和圖標題 plt.xlabel('X') plt.ylabel('Y') plt.title('Linear Regression') # 顯示圖像 plt.show()
執行結果如下所示:
這裏需要注意是,如果執行代碼出現如下錯誤:
Non-ASCII character '\xe5'
可以在代碼開頭裏面添加如下代碼:
# -*- coding: UTF-8 -*-
這個任務是比較簡單的,接下來我們來提升一下難度。
2.2 使用Python給微信發信息
然後,我們在ChatGPT對話框中輸入:使用Python給微信發信息
ChatGPT給出解決方案如下圖所示:
2.3 使用Python發送電子郵件
我們使用搜索引擎尋找相關發送郵件的代碼片段,搜索出來的結果可能會有很多代碼片段展示如何使用Python發送電子郵件。我們可以使用ChatGPT來更具體一些,比如我們輸入:從“email_1”發送一封電子郵件到“email_2”,主題爲“ChatGPT 發送的電子郵件”,內容爲“ChatGPT Test Email!” 使用 Python
然後,ChatGPT給出的解決方案如下圖所示:
實現代碼如下所示:
import smtplib # 創建 SMTP 客戶端對象 smtp_client = smtplib.SMTP('smtp.example.com') # 連接到郵件服務器 smtp_client.login('email_1', 'password') # 發送電子郵件 smtp_client.sendmail( 'email_1', 'email_2', 'Subject: ChatGPT Send Email\n\nChatGPT Test Email!' ) # 關閉客戶端 smtp_client.quit()
2.4 使用Python開發一個爬蟲程序
使用ChatGPT最有難度的應該就是抓取網站信息,因爲網站具有不同的HTML,因此抓取網站的步驟因站點而異。這裏我們抓取Scrape上的商品名稱和價格,在ChatGPT輸入關鍵字:Python抓取https://books.toscrape.com/商品名稱和價格
ChatGPT給出的解決方案如下所示:
實現代碼如下所示:
import requests from bs4 import BeautifulSoup # 發送 HTTP 請求並獲取網頁內容 response = requests.get('https://books.toscrape.com/') html = response.text # 使用 BeautifulSoup 解析 HTML soup = BeautifulSoup(html, 'html.parser') # 提取商品名稱和價格信息 items = soup.find_all('h3') prices = soup.find_all('p', class_='price_color') # 遍歷商品信息,打印商品名稱和價格 for item, price in zip(items, prices): print(item.text, price.text)
執行上述Python代碼,抓取結果如下所示:
無需編寫代碼,即可通過ChatGPT生成來獲取數據。
3.總結
ChatGPT是基於GPT-3模型的衍生品,因爲這一點ChatGPT也被稱爲GPT-3.5。ChatGPT背後的訓練除了常規的萬億級語料支持之前,還依賴了更爲強大的算力。這也使得ChatGPT可以在不斷積累數據的同時,通過不斷的強化訓練,讓自己變得更加智能。另外,ChatGPT和其他搜索引擎就相同的問題進行檢索,通過對比發現ChatGPT往往可以給出用戶最想要的答案,並且呈現的方式也非常的直接,如ChatGPT可以根據用戶編程的需求直接生成代碼,同時也可以幫助用戶檢索已有代碼存在的錯誤。而面對同樣的問題其他搜索引擎卻只能給用戶提供一堆網頁鏈接,需要用戶花費更多的時間來篩選出自己想要的答案。從時間成本和效率上ChatGPT無疑比現有的一些搜索引擎更有優勢。