Python程式設計與OpenAI API應用:零基礎建構非同步GUI的AI聊天機器人 1/e 王進德 2023 博碩
▐ 自2024/1/1 00:00起,台灣樂天市場「屈臣氏」將不贈送 LINE POINTS 點數
▐ 自2023/2/1 00:00起,樂天Kobo電子書不贈送 LINE POINTS 點數,請會員多加留意。
▐ LINE POINT點數回饋依照樂天提供扣除折價券(優惠券)、與運費後之最終金額進行計算。
▐ 愛買與愛票網、a la sha(2023/8/1生效)、GAME休閒館(2023/8/1生效)、專品藥局(2023/8/1生效)等部分店家不參與全站加碼,請詳閱LINE Points 加碼店家清單:https://lin.ee/Y2CcVdk/rcfk
▐ 注意事項
(1)部分服務及店家不符合贈點資格,購買後將不贈送 LINE Points 點數,亦不得使用點數紅包,如:比漾廣場、神腦生活、MyCard、愛美麗福利社、展翔通訊、ezcook 美食廚房、葳豐數位商城、吉盈數位商城、森林巨人、包材中心、KABO佳麗寶家電批發、LuLuLu精品店、NewSTYLE新風尚潮流、0216零食會社、美寶家電、純米小鋪、LILY科技新櫃、登芳3C電子雜貨賣場、豐饌御鴨、鼎耀通訊、誠選3C、Smile、葳豐數位商城二店、米蘭寶、BoBo Outlet代購屋、楊家食品(2022/10/1生效)、樂天Kobo電子書(2023/2/1生效)、屈臣氏(2024/1/1生效)等,請詳閱LINE Points 加碼店家清單。
(2)需透過LINE購物前往台灣樂天市場,並在同一瀏覽器於24小時內結帳,才享有 LINE Points 回饋。
(3)若購買之訂單(包含預購商品)未符合樂天市場 45 天內完成訂單出貨及結帳,則不符合贈點資格。
(4)如使用App、或中途瀏覽比價網、回饋網、Google等其他網頁、或由網頁版(電腦版/手機版網頁)切換為App都將會造成追蹤中斷而無法進行 LINE Points 回饋。
(5) LINE 購物為購物資訊整合性平台,商品資料更新會有時間差,如顯示之商品規格、顏色、價位、贈品與台灣樂天市場銷售網頁不符,以銷售網頁標示為準。
(6)Pickup店家之有效訂單需於下單後40天內使用完畢才符合分潤條件
(7) 若上述或其他原因,致使消費者無接收到點數回饋或點數回饋有爭議,台灣樂天市場保有更改條款與法律追訴之權利,活動詳情以樂天市場網站公告為準。商品描述
內容簡介 從入門到活用Python程式設計,讓你成為Python專家 實作與應用OpenAI API,建構專屬的AI聊天機器人 ✦利用完整的程式範例,深入淺出說明Python程式設計 ✦進階學習Python多執行緒、多程序、非同步I/O及tkinter ✦完整理解Python非同步程式設計的核心觀念 Python是一種容易學習且功能強大的程式語言,跟著本書學習Python, 你不只可學會Python的基礎語法,還可學到進階的內容,例如:物件導向、多執行緒、多程序、非同步I/O及tkinter程式設計等。 ChatGPT是OpenAI開發的人工智慧聊天機器人,其會生成文字,回答各式問題,自推出以來即受到大家的喜愛。在本書中,你將可活用Python,以Python實作OpenAI API,設計開發出ChatGPT應用程式。 本書內容的安排由淺入深,對Python程式設計進行系統性的介紹,並詳細說明OpenAI API的應用。本書以程式範例來說明Python程式設計的概念,可有效幫助讀者的學習,並經由實作的過程,建構專屬非同步GUI版的語音聊天機器人。 【目標讀者】 ☛對Python程式設計有興趣的初學者,可讓讀者兼顧理論與實作。 ☛適用於大專院校「Python程式設計」課程的學生,可作為教師授課之用。 ☛程式設計工程師、專案設計者、AI工程師,也很適合閱讀本書。 目錄 |CHAPTER 01| Python基礎(一) 1.1 本章提要 1.2 安裝Python 1.3 Python基本語法 1.4 Python字串處理 1.5 條件敘述 1.6 迴圈敘述 1.7 自定義函式 1.8 串列(List) 1.9 串列表達式 1.10 元組(Tuple) 1.11 字典(Dictionary) |CHAPTER 02| Python基礎(二) 2.1 模組(Module) 2.2 random模組 2.3 套件(Package) 2.4 例外處理 2.5 讀取文字檔案 2.6 寫入文字檔案 2.7 文字檔案處理 2.8 JSON 2.9 PyPI簡介 2.10 建立虛擬環境 |CHAPTER 03| Python物件導向 3.1 類別與物件 3.2 類別屬性及類別方法 3.3 靜態方法 3.4 繼承 3.5 封裝 3.6 抽象類別 3.7 多型 3.8 迭代器 3.9 生成器 |CHAPTER 04| 多執行緒 4.1 本章提要 4.2 建立及執行執行緒 4.3 守護執行緒 4.4 建立執行緒類別 4.5 執行緒池 4.6 使用Lock同步執行緒 4.7 使用queue交換資料 |CHAPTER 05| 多程序 5.1 本章提要 5.2 執行耗時計算任務 5.3 使用Process物件執行耗時計算 5.4 使用Queue交換資料 5.5 使用Process物件建立圖像縮圖 5.6 使用Pool物件建立圖像縮圖 5.7 程序池 5.8 程序間共享記憶體 |CHAPTER 06| 非同步I/O 6.1 本章提要 6.2 平行與並行 6.3 定義協程函式 6.4 await關鍵字 6.5 建立任務 6.6 使用gather() 6.7 取消任務 6.8 使用超時取消任務 6.9 防止任務被取消 6.10 非同步產生器 6.11 aiohttp套件 |CHAPTER 07| tkinter 7.1 tkinker簡介 7.2 建立視窗 7.3 標籤控制元件 7.4 按鈕控制元件 7.5 文字方塊控制元件 7.6 Spinbox控制元件 7.7 文字區域控制元件 7.8 捲軸控制元件 7.9 列表控制元件 7.10 變數類別 7.11 單選按鈕 7.12 核取方塊 7.13 使用pack()設計問卷調查 7.14 使用grid()設計問卷調查 |CHAPTER 08| OpenAI簡介 8.1 自然語言處理 8.2 OpenAI GPT 8.3 取得OpenAI的API密鑰 8.4 提示、完成及標記 8.5 使用Playground |CHAPTER 09| OpenAI Chat API 9.1 本章提要 9.2 openai套件 9.3 decouple套件 9.4 使用Chat API 9.5 簡易聊天程式 9.6 具對話紀錄的聊天程式 9.7 具串流輸出的聊天程式 9.8 可儲存對話紀錄的串流聊天程式 9.9 以JSON儲存對話紀錄 |CHAPTER 10| 非同步GUI版聊天程式 10.1 本章提要 10.2 tkinter執行非同步I/O 10.3 協程中執行執行緒 10.4 設計非同步GUI版聊天程式 |CHAPTER 11| OpenAI Image API 11.1 本章提要 11.2 文字產生圖像 11.3 顯示圖像 11.4 圖像變形 11.5 GUI版顯示圖像 11.6 非同步GUI版文字生成圖像程式 |CHAPTER 12| OpenAI語音轉文字API 12.1 本章提要 12.2 線上錄音 12.3 使用轉錄API 12.4 Audio API結合Chat API 12.5 文字轉語音 12.6 gTTS結合ChatGPT API 12.7 Pyaudio套件 12.8 非同步GUI版語音聊天程式