| 書名: | OpenAI API基礎必修課--使用Python(GPT-3.5、GPT-4、GPT-4o、DALL·E、TTS、Whisper模型) (1版) (1版) | |||
| 作者: | 蔡文龍 等 | |||
| 版次: | 1 | |||
| ISBN: | 9786263248106 | |||
| 出版社: | 碁峰資訊 | |||
| 出版日期: | 2024/06 | |||
| 書籍開數、尺寸: | 23*17 | |||
| 頁數: | 240 | |||
|
#資訊
#AI人工智慧與機器學習 |
||||
【簡介】 💡 從觀念理解到開發實戰! 💡 使用OpenAI API x Python與GPT-3.5、GPT-4、GPT-4o、DALL•E、TTS、Whisper模型 開發聊天服務、文本生成、AI繪圖、視覺、語音的AI應用程式! *專家資深教師執筆 由教授OpenAI API、Python與人工智慧專業教師共同編著,針對初學者學習OpenAI API使用Python開發人工智慧軟體服務所應具備知識技能所編寫的實務教材。 *循序漸進無痛上手 內容兼具理論與實務,利用大量OpenAI API實例說明並引申教材,所舉的專題範例淺顯易懂且具代表性和實用性,非常適合教學和自學,使初學者快速進入OpenAI API人工智慧軟體服務的開發殿堂。 *內容多元範例豐富 介紹 Open AI 的金鑰申請、Colab 編輯環境、Gradio 互動式網頁、GPT-3.5、GPT-4與GPT-4o的使用、Chat Completions API 參數、ChatGPT 聊天機器人、整合搜尋讓聊天機器人突破時空限制、自動串接、函式呼叫和微調模型讓文本生成符合事實。 以Images API 進行AI繪圖、語音API與GPT-4o進行電腦視覺,讓AI應用程式擁有讀、畫、看、聽、說等功能。 *實務專題打下基礎 使用Gradio 互動式網頁、Tkinter視窗套件結合OpenAI API開發生成式人工智慧飯店客服機器人、考卷產生器、網頁產生器三大專題。透過實務專題開發,將Python的相關技術與OpenAI API完美整合,提升初學者人工智慧軟體開發的專業能力。 【目錄】 Chapter 1 Open AI API 申請與入門 1.1 Open AI API 簡介 1.2 申請 Open AI API 金鑰 1.3 付費使用 Open AI API 1.4 Playground Chapter 2 第一個 Open AI API 程式 2.1 認識 Colab 程式編輯環境 2.2 第一個 OpenAI API 程式 2.3 回覆訊息說明 Chapter 3 Chat Completions API 參數說明 3.1 認識 token 3.2 設定終止生成回覆訊息的參數 3.3 設定生成回覆的訊息數量 3.4 調整特定 token 生成的可能性 3.5 控制回覆單詞或語句的預測概率 3.6 控制回覆文本詞彙的重複性 3.7 流式傳輸 Chapter 4 Gradio 互動式網頁 4.1 認識 Gradio 4.2 Gradio 基本語法介紹 4.3 Gradio 常用的輸出入元件 4.4 運用實例 Chapter 5 打造 ChatGPT 聊天網頁 5.1 簡易的 ChatGPT 聊天網頁 5.2 暫存聊天記錄維持聊天連繫訊息 5.3 可迭代物件與生成器 5.4 使用生成器的流式傳輸聊天 5.5 流式傳輸的 ChatGPT 聊天網頁 Chapter 6 整合搜尋 - 無礙於時空限制 6.1 聊天資料的時空限制 6.2 使用 Google 搜尋增長 AI 知識 6.3 結合 Google 搜索生成聊天回覆 6.4 結合 Google 搜索的完整聊天網頁 6.5 Google Search JSON API 6.6 使用搜尋引擎進行網頁搜尋 6.7 使用搜尋引擎生成聊天回覆 Chapter 7 自動串接、函式呼叫與微調 7.1 自動串接 7.2 函式呼叫 7.3 微調 Chapter 8 Images API AI 圖形生成 8.1 認識 Images API 8.2 自然語言生成圖形 8.3 圖形變化 8.4 編輯圖形 8.5 運用實例 Chapter 9 電腦視覺 9.1 認識GPT-4o 的視覺功能 9.2 電腦視覺功能解析圖像 9.3 運用實例 Chapter 10 語音 API 10.1 認識語音 API 10.2 語音 API 10.3 語音 API進階應用 Chapter 11 OpenAI API 專題實戰 11.1 飯店客服機器人 11.2 考卷產生器 11.3 網頁產生器
還沒有人留下心得,快來搶頭香!
為您推薦
相關熱銷的書籍推薦給您
書名:人工智慧:智慧型系統導論(第三版) 作者:李聯旺 出版社:全華 ISBN:9789862800959
相關熱銷的書籍推薦給您
書名:機器學習:類神經網路、模糊系統以及基因演算法則(第四版) 作者:蘇木春、張孝德 出版社:全華 出版日期:2016/05/00 ISBN:9789864632060 內容簡介 ■ 本書優點特色 1.將三種與機械學習相關的技術-類神經網路、模糊系統及基因演繹法作一通盤介紹。 2.以深入淺出的方式建立類神經網路與生物神經網路的關聯性,以便讓讀者更能發揮想像力。 3.每一種理論都儘可能配合書中範例及圖表加以說明。 ■ 內容簡介 本書將三種與機械學習相關的技術-類神經網路、模糊系統及基因演繹法作一通盤介紹。此外,作者以深入淺出的方式建立類神經網路與生物神經網路的關聯性,以便讓讀者更能發揮想像力。 目錄 第1章 類神經網路之簡介 第2章 感知機 第3章 多層感知機 第4章 非監督式類神經網路 第5章 聯想記憶 第6章 增強式學習 第7章 模糊集合 第8章 模糊關係及推論 第9章 模糊系統 第10章 基因演算法則
類似書籍推薦給您
【簡介】 本書共分九章。 第一章介紹GPT模型歷程、原理與API介面。第二章說明OpenAI文字與語音轉換功能、API端點設計與請求庫封裝。第三章展示ChatGPT應用構建,包括互動區域、聊天快取與角色設定。第四章實作飛書機器人與OpenAI結合,開發多種回應與通知功能。第五章說明VSCode外掛程式開發流程與Webview通訊技術。第六章實作AI程式輔助模組,包含語言轉換、程式診斷與自動修復。第七章說明如何部署ChatGLM等開源模型與進行P-Tuning微調。第八章介紹RAG技術,實作文字向量化與Chroma向量資料庫整合,建構查詢式知識庫。第九章為提示詞工程與LLM社群工具介紹,說明提示詞模式、模型回應最佳化與Coze平台應用。 本書特色 ☆GPT模型歷史、架構與API功能解析 ☆OpenAI文字轉語音與語音轉文字實作 ☆Chat系列API端點與流式回應設計 ☆ChatGPT應用介面建構與訊息狀態處理 ☆System Prompt建構與角色扮演範例 ☆ChatGPT跨平台部署與Vercel整合 ☆飛書機器人API連接與事件回應開發 ☆VSCode外掛模組開發流程與通訊機制 ☆AI程式輔助:自動生成、語言轉換、程式診斷 ☆Hugging Face模型私有部署與P-Tuning微調 ☆文本向量化技術與嵌入式匹配範例 ☆向量資料庫Chroma操作與距離計算方式 ☆ChatGPT外掛知識庫系統建構與查詢設計 ☆提示詞工程模組化設計與Coze平台整合 【目錄】 ▌第1 章 緒論 1.1 AGI 的新時代已經到來 1.2 ChatGPT 全景介紹:歷史、原理與API 1.2.1 GPT 模型的基本概念和發展歷程 1.2.2 GPT 為什麼能做到跨領域與人互動 1.2.3 OpenAI API 簡介 1.3 生成式AI 應用的市場前景 1.4 本書的內容安排 ▌第2 章 OpenAI API 請求函式庫 2.1 OpenAI API 2.1.1 OpenAI API 提供的模型類別 2.1.2 在瀏覽器端實現文字轉音訊 2.1.3 在Node.js 執行時期實現文字轉音訊 2.1.4 音訊轉文字的實現 2.2 Chat 系列OpenAI API 端點 2.2.1 Chat 系列API 端點參數及使用 2.2.2 Chat API 的串流回應 2.3 API 請求函式庫 2.3.1 使用OpenAI 請求函式庫 2.3.2 實戰:封裝並發佈一個大語言模型API 的請求函式庫 2.3.3 ChatGPT 可用免費API 轉發開放原始碼倉庫:GPT-API-free 2.4 本章小結 ▌第3 章 基礎應用:ChatGPT 的實現 3.1 專案初始化和產品功能拆解 3.1.1 專案初始化 3.1.2 產品功能拆解 3.2 ChatGPT 靜態互動的實現 3.2.1 右側ChatGPT 對話區域 3.2.2 左側邊欄區域(Chat 資訊和API_KEY 填寫) 3.3 ChatGPT 可互動功能的補充 3.3.1 使用llm-request 連線OpenAI API 3.3.2 New Chat 事件的綁定 3.3.3 聊天記錄的快取 3.3.4 回應內容的豐富文字處理(換行、程式突顯、程式複製) 3.3.5 思考題:如何避免在請求中暴露API_KEY 3.4 建立不同角色類別的聊天 3.4.1 什麼是System Prompt 3.4.2 為ChatGPT 專案放開System Prompt 的填寫 3.4.3 範例:建立布布熊的虛擬女友一二熊 3.5 社區功能:跨平臺ChatGPT 應用—ChatGPT Next Web 3.5.1 初識ChatGPT Next Web 3.5.2 使用Vercel 把ChatGPT Next Web 部署到公網 3.6 本章小結 ▌第4 章 互動應用:整合AI 模型功能到飛書機器人 4.1 建立飛書機器人 4.1.1 飛書開放平臺 4.1.2 建立一個飛書機器人一二熊 4.2 飛書機器人的API 服務 4.2.1 飛書機器人API 服務的事件訂閱 4.2.2 開發階段:使用反向代理工具Ngrok 對本機服務進行內網穿透 4.2.3 訂閱message 接收事件並回應 4.2.4 部署上線:使用Vercel Serverless Functions 輕服務部署 4.3 支援一二熊的訊息回覆 4.3.1 支援一二熊的單聊回覆訊息 4.3.2 支援一二熊在群聊中回覆訊息 4.3.3 使用自訂訊息卡片配置說明文件 4.4 結合AI 實現一二熊的辦公協助工具 4.4.1 支援對飛書文件內容進行總結 4.4.2 支援向指定人員發送訊息通知 4.4.3 支援向指定群發送訊息通知 4.4.4 支援自動拉群並說明拉群用意 4.4.5 支援建立任務並自動生成任務摘要 4.5 本章小結 ▌第5 章 VSCode 自訂外掛程式 5.1 AI 在程式輔助領域的實施 5.1.1 ChatGPT 出色的程式協助工具 5.1.2 OpenAI API 與IDE 外掛程式的結合 5.2 初識VSCode 外掛程式開發 5.2.1 VSCode 外掛程式初始化 5.2.2 VSCode 外掛程式的目錄結構及檔案剖析 5.2.3 VSCode 外掛程式的啟動與本地偵錯 5.2.4 VSCode 外掛程式中單元測試的環境API mock 5.3 VSCode 外掛程式開發常用擴充功能 5.3.1 外掛程式命令 5.3.2 選單項 5.3.3 外掛程式配置項 5.3.4 按鍵綁定 5.3.5 訊息通知 5.3.6 收集使用者輸入 5.3.7 檔案選擇器 5.3.8 建立進度指示器 5.3.9 診斷和快速修復 5.4 特殊判斷值when 子句 5.4.1 when 子句運算子 5.4.2 when 子句內建環境變數 5.4.3 自訂when 子句環境變數 5.5 VSCode 外掛程式支援的工作環境空間 5.5.1 活動欄區域:視圖容器 5.5.2 側邊欄區域:樹狀檢視 5.5.3 狀態列區域:狀態列項目 5.5.4 編輯器組區域:網頁視圖 5.6 使用React 開發Webview 5.6.1 Webview 的React 開發配置 5.6.2 Webview 和Extension 的相互通訊 5.6.3 Webview 的開發者偵錯 5.7 VSCode 外掛程式的聯動與發佈 5.7.1 擴充相依外掛程式 5.7.2 VSCode 外掛程式的發佈 5.8 本章小結 ▌第6 章 程式設計應用:AI 程式開發輔助外掛程式 6.1 在VSCode 外掛程式中實現ChatGPT 6.1.1 專案初始化 6.1.2 外掛程式功能剖析 6.1.3 外掛程式功能配置項註冊 6.1.4 工作列註冊 6.1.5 快取首頁的實現 6.1.6 聊天頁面的實現 6.2 程式語言轉換工具 6.2.1 外掛程式功能剖析 6.2.2 外掛程式功能配置項註冊 6.2.3 支援全檔案語言轉換 6.2.4 支援對全檔案語言轉換結果的追問 6.2.5 支援局部程式語言轉換 6.3 程式審查工具 6.3.1 外掛程式功能剖析 6.3.2 外掛程式功能的配置項註冊 6.3.3 支援單檔案粒度程式AI 診斷 6.3.4 人工的診斷行列匹配 6.3.5 支援對問題程式的AI 快速修復 6.3.6 支援狀態列狀態顯示 6.4 本章小結 ▌第7 章 Hugging Face 開放原始碼模型的私有化部署和微調 7.1 模型私有化部署 7.1.1 什麼是模型私有化部署 7.1.2 使用Anaconda 管理Python 環境 7.1.3 私有化部署ChatGLM3-6B 模型 7.1.4 ChatGLM3-6B 模型的低成本部署 7.2 模型微調 7.2.1 什麼是模型微調 7.2.2 對ChatGLM3-6B 模型進行單機單卡P-Tuning 7.3 開放原始碼AI 社區Hugging Face 7.3.1 什麼是Hugging Face 7.3.2 機器學習函式庫Transformers 7.4 本章小結 ▌第8 章 檢索增強生成技術:向量化與大模型的結合 8.1 檢索增強生成技術介紹 8.1.1 訓練模型是一個高成本的過程 8.1.2 檢索增強生成技術:低成本資訊穿透的實現 8.2 文字向量化 8.2.1 什麼是文字向量化 8.2.2 OpenAI 提供的文字向量化功能 8.2.3 私有化部署Hugging Face 向量化模型 8.3 向量資料庫Chroma 8.3.1 什麼是向量資料庫Chroma 8.3.2 文字向量化及相似度匹配的範例 8.3.3 集合API 8.3.4 相似度距離計算方法 8.3.5 embeddings 向量化函式 8.4 實戰:為ChatGPT 提供知識庫功能 8.4.1 知識庫整體功能剖析 8.4.2 支援檔案上傳至知識庫 8.4.3 支援包含相似搜尋的詢問模式 8.5 本章小結 ▌第9 章 提示詞工程與LL 社區生態 9.1 提示詞工程 9.1.1 英文組織提示詞 9.1.2 明確輸入和輸出 9.1.3 輔助推理鍵 9.1.4 特殊或生僻場景提供範例 9.1.5 分治法:減小模型介入問題的粒度 9.1.6 結構化組織提示詞 9.2 Chat 大模型 9.2.1 文心一言 9.2.2 通義千問 9.2.3 豆包 9.2.4 元寶 9.2.5 Kimi 9.3 AI 應用架設平臺Coze 9.3.1 什麼是Coze 9.3.2 基礎使用 9.3.3 高階功能 9.3.4 Coze 應用的API 呼叫 9.4 本章小結
類似書籍推薦給您
【簡介】 ChatGPT × OpenAI API 加持,學習、開發、認證一次到位! 扎實Java程式設計訓練,搭配ChatGPT學習,開發OpenAI API聊天機器人;培養程式設計與運算思維能力,為您打下輕鬆考取ITS Java國際認證能力。 ※資深教師聯合編撰 由OCJP與ITS Java認證講師、科技大學教授Java程式設計資深教師共同編著,針對目前初學者學習Java程式設計必備技能所撰寫的教材。 ※多元內容實用範例 內容由Java程式設計流程控制、陣列、方法、物件導向程式設計、介面與泛型、多執行緒、例外處理、檔案處理、Lambda運算式、Swing視窗應用程式。並附上拉霸遊戲機與記憶大考驗專題電子書供初學者練習。每個單元由淺入深、循序漸進、範例貼近日常生活,讓初學者能學以致用。 ※ChatGPT協作開發 × OpenAI API聊天機器人實戰 第16章帶你掌握ChatGPT的特色與應用,實際操作如何透過對話生成程式碼,並與ChatGPT協作開發Java專案。 第17章手把手示範OpenAI API申請與使用,帶你打造專屬的Java聊天機器人應用程式。 ※ITS Java實例導入與國際認證能力訓練 內文融入Certiport ITS Java解題技巧,書末更附上兩組模擬試題,完整對應國際認證需求,讓初學者的程式設計訓練更加扎實,同時也是教師培訓學生考取ITS Java國際認證的最佳教材。 ※更多新知可訂閱「程式享樂趣」YouTube頻道www.youtube.com/@happycodingfun 【目錄】 第1 章 Java 概述 1.1 Java 的興起 1.2 Java 的特性 1.3 安裝 Java SE 1.4 使用記事本編寫Java 程式 1.5 安裝 Eclipse 1.6 在 Eclipse 整合開發環境下編寫Java 程式 1.7 Java 程式架構 1.8 建立說明文件檔 1.9 認證實例演練 第2 章 資料型別與運算子 2.1 識別字與關鍵字 2.2 基本資料型別 2.3 變數與常數 2.4 運算子與運算式 2.5 Java 資料型別的轉換 2.6 基本資料型別與參考資料型別 2.7 主控台輸入與輸出 2.8 認證實例演練 第3 章 控制敘述 – 選擇 3.1 前言 3.2 if 選擇敘述 3.3 switch 多重選擇敘述 3.4 認證實例演練 第4 章 控制敘述 – 重複 4.1 重複敘述 - for 迴圈 4.2 重複敘述 - while 和 do…while 迴圈 4.3 分支敘述 4.4 認證實例演練 第5 章 陣列 5.1 前言 5.2 陣列的宣告及使用 5.3 多維陣列 5.4 陣列的排序與搜尋 5.5 認證實例演練 第6 章 方法(Method) 6.1 前言 6.2 方法 6.3 傳值呼叫與參考呼叫 6.4 方法間傳遞陣列引數 6.5 方法多載 6.6 遞迴 6.7 認證實例演練 第7 章 物件與類別 7.1 物件導向程式設計概述 7.2 類別與物件的關係 7.3 方法多載 7.4 建構式 7.5 靜態成員 7.6 this 參考自身類別 7.7 認證實例演練 第8 章 繼承 8.1 繼承 8.2 方法覆蓋 8.3 預設建構式的繼承 8.4 使用 super 8.5 使用 final 8.6 靜態成員的限制 8.7 抽象類別與抽象方法 8.8 認證實例演練 第9 章 介面與多型 9.1 介面 9.2 多型 9.3 套件 9.4 認證實例演練 第10 章 例外處理 10.1 例外 10.2 例外處理 10.3 Java 常用的內建例外類別 10.4 自行拋出例外 10.5 自定例外類別 10.6 認證實例演練 第11 章 I/O 常用類別 11.1 Java I/O 處理 11.2 File 類別 11.3 檔案讀取類別 11.4 檔案寫入類別 11.5 二進位檔讀取類別 11.6 二進位檔寫入類別 11.7 認證實例演練 第12 章 集合與泛型 12.1 集合物件 12.2 Collection 介面 12.3 Set 介面與 HashSet 類別 12.4 SortedSet 介面與 TreeSet 類別 12.5 List 介面與實作類別 12.6 Map 介面與 HashMap 類別 12.7 SortedMap 介面與 TreeMap 類別 12.8 Collections 集合工具類別 12.9 集合的走訪器 12.10 認證實例演練 第13 章 多執行緒 13.1 執行緒簡介 13.2 執行緒的生命週期 13.3 如何建立執行緒 13.4 Thread 類別常用的方法 13.5 執行緒的同步(Synchronized) 13.6 執行緒的等待和喚醒 第14 章 Lambda 運算式 14.1 Lambda 簡介與使用 14.2 Lambda 語法說明 14.3 方法參考 第15 章 Swing 視窗應用程式 15.1 Swing 簡介 15.2 JFrame 類別 15.3 版面配置 15.4 事件處理 15.5 事件來源 第16 章 與 ChatGPT 協作開發 16.1 認識 ChatGPT 16.2 ChatGPT 聊天初體驗 16.3 ChatGPT 協作開發 Java 程式 第17 章 使用 OpenAI API 開發聊天機器人 17.1 OpenAI API 服務申請 17.2 Java 呼叫 OpenAI API 開發聊天機器人 附錄A ITS Java 國際認證模擬試題 - 1 附錄B ITS Java 國際認證模擬試題 - 2
類似書籍推薦給您
【簡介】 不要再問『為什麼 ChatGPT 可以?』,你寫的程式也可以! 開發生成式 AI 應用程式時總是在想『為什麼 ChatGPT 有這個功能?』,現在你也可以。本書帶你學會 OpenAI API 關鍵元素,達到跟 ChatGPT 類似的功能。 |用 Realtime API 提供進階語音模式| 開發直接語音交談,隨時插話的應用,再加上其他章節介紹的 function calling 與 MCP 等,實現真正出一張嘴、連打字都不用就可以操控的應用程式。書中會帶你實踐桌面版與網頁版的語音交談程式,各種情境都能派上用場。 |透過 MCP 介接全世界| MCP 雖然不是 OpenAI API 的一部分,但卻可以接上各式各樣的輸入與控制功能,本書會教你設計可分享功能給他人使用的 MCP 伺服器,也會實作具備 MCP 用戶端的主控程式,介接你自己或別人提供的 MCP 伺服器幫模型長出感官與手腳。 |用 Responses API+內建工具快速實作 RAG 應用| Responses API 可以使用多種內建工具,搜尋網路、文字生圖、撰寫並執行 Python 程式碼都難不倒它,還可以檢索檔案,提供檢索片段內容幫模型增長知識,快速設計 RAG 應用。 |可運作多 agent 的 Agnets SDK| 實現讓程式自主決策並執行任務、達成代理人(agent)的理想,Agents SDK 還可以協調多個 agent 彼此合作,把任務交棒給最合適的 agent 處理。 |運用推理模型解決複雜數理問題| 透過 API 使用推理模型,還可以像是 ChatGPT 那樣呈現推理過程,不再需要撰寫複雜的提示內容或是指示,就可以解決數理或是邏輯問題。 |深度瞭解 function calling 機制| 不論是 Agents SDK 還是 MCP,底層的運作關鍵就是 function calling,你不一定會直接使用它,但瞭解它卻是延伸模型能力的必備基礎。 |直指核心設計的範例| 學習 API 當然可以直接看官方文件與範例,不過官方範例有時候因為想要有漂亮的 UI 呈現等原因,採用了你不一定熟悉的框架,使得範例本身摻雜太多非必要的元素,混淆了真正的關鍵主題,在設計範例時我們就特意保留最精簡的架構,高度聚焦提升成效。 |能踩的雷我們都先幫你踩過一遍| 使用 API 光看文件是一回事,實際測試又是一回事,尤其像是 MCP 要介接其他人提供的服務,更容易遇到不相容的問題;還有文件上寫了但可能使用上有問題,或是文件上可能沒寫,但其實可以這樣用的,我們都先盡量測過一遍,節省你的時間。 本書特色 ChatGPT 做得到、你也能做到 Do what ChatGPT can do □ 使用 Realtime API 提供即時交談、隨時插話的進階語音模式 □ 串接各種 MCP 伺服器,幫 AI 生出五官手腳與真實世界接軌 □ 自己設計 MCP 伺服器補完 AI 欠缺的功能,還可以分享給別人使用 □ 用 Responses API 快速設計 RAG 系統 □ 使用 Agents SDK 設計自主決策完成任務的 agent □ 套用推理模型、呈現推理過程解決複雜數理問題 □ 針對核心元素設計範例,避免官方範例旁枝末節增加無謂複雜度 【目錄】 | CHAPTER 1 OpenAI API 入門 1-1 為什麼要使用 API - 學習 OpenAI API 的好處 1-2 從零開始使用 OpenAI API - 認識 Open AI API 家族 - 牛刀小試 1-3 認識 token - 使用 OpenAI 的視覺化網頁觀察 token 轉換結果 - 使用程式取得 token 轉換結果 - 計算實際傳送的 token 數 1-4 認識訊息角色 - 訊息與角色 - 幫模型制訂規則 1-5 錯誤處理 1-6 非同步方式使用 API - 幫 API 的使用加上等待動畫 1-7 在沒有 openai 套件的環境中使用 API - 透過 requests 套件以 HTTP POST 使用 API - 透過 HTTPX 套件以非同步方式使用 API - 連 Python 都沒有的環境下使用 API | CHAPTER 2 AI 聊天功能的基礎–Responses API 2-1 更換模型--使用推理模型 - 調整推理強度 - 觀察推理過程 2-2 控制生成結果 - 限制生成的 token 數量 - 控制回覆內容的變化性--temperature - 控制生成內容的可能性--top_p 2-3 控制回覆格式--生成 JSON - 生成 JSON 格式 - 使用 Pydantic 標準化 JSON 格式生成步驟 2-4 輸入圖片/檔案當提示 - 輸入圖片 - 輸入 PDF 檔案 | CHAPTER 3 有記憶的簡易聊天程式–串接記錄與串流回應 3-1 文字形式的簡易聊天程式 - 建立輔助函式與聊天程式雛形 3-2 串接對話記錄 - 使用回應識別碼提供對談內容 - 幫聊天輔助函式串接對話過程 3-3 使用串流功能即時顯示回覆內容 - 啟用串流功能 - 加入串流選項的聊天類別 3-4 具有記憶的聊天程式 - 將回應識別碼儲存到檔案以及從檔案讀回的方法 - 可延續討論串交談的應用程式 - 透過網頁檢視儲存的回應 - 利用程式碼管理對談記錄 3-5 手動建立對話記錄 - 自行建立對話記錄 - 儲存對話紀錄 | CHAPTER 4 RAG 的基礎–用搜尋與檢索幫 AI 長知識 4-1 使用內建搜尋工具幫 AI 走遍全世界 - 啟用內建的搜尋功能 - 設定搜尋地區 - 設定提供給模型的搜尋資料量 - 串流方式使用工具 - 搜尋工具的計價方式 4-2 幫簡易聊天程式加上搜尋功能 - 設計處理指令的類別 - 修改 Chat 類別 - 建立處理內建搜尋工具指令的類別 4-3 使用內建檔案檢索 RAG 工具 - RAG 簡介 - 上傳檔案進行 RAG - 使用內建的檔案檢索工具 - 查看檢索結果 - 限制檢索筆數 - 限制相似度 - 檔案檢索工具的計費方式 4-4 利用程式碼動態管理要檢索的檔案 - 動態上傳檔案 - 建立向量儲存區同時加入檔案 - 動態加入檔案到向量儲存區 - 顯示向量儲存區內的檔案 - 移除向量儲存區 4-5 幫簡易聊天程式加上檔案檢索功能 - 設計處理檔案檢索指令的類別 - 測試具備網頁搜尋與檔案檢索功能的聊天程式 - 加上可以檢視工具執行結果的功能 | CHAPTER 5 Agent 的基礎 – 用 Function Calling 幫 AI 長手腳 5-1 認識 function calling 機制 5-2 提供客製搜尋功能 - 提供 Google 搜尋的函式 - 使用 JSON Schema 描述函式 - 使用 function calling - 依據模型指示叫用函式 - 建立方便進行 function calling 的輔助函式 - 同時叫用多個函式(parallel function calling) - 串流模式下的 function calling 5-3 幫簡易聊天應用程式加入 function calling 功能 - 設計處理自訂函式工具的類別 - 修改 Chat 類別搭配 function calling 運作 - 測試使用自訂函式工具聊天 - 檢視函式叫用的指示 - 強制使用內建工具 - 不允許單回叫用多個函式 5-4 讓 AI 長出手腳打造智慧 CLI 指令介面 - 執行 shell 指令的自訂函式工具 - 提供模型自訂的 shell 指令執行函式 - 測試用說的就可以操控電腦的樂趣 - 處理 IPython 特有的問題 - 設立防護機制 | CHAPTER 6 會寫程式與生圖的內建工具 6-1 使用內建工具執行 shell 指令 6-2 Code Interpreter 內建工具 - 取得程式碼輸出結果 - 使用串流方式 - 由 Code Interpreter 處理檔案 - 手動建立容器 6-3 文字生圖內建工具 - 串接回應持續修改 - 以串流模式取得生成過程的變化圖 - 在背景執行 Responses API 6-4 幫聊天程式加入寫程式與生圖功能 - 修改 Chat 類別 - 處理 Code Interpreter 指令的類別 - 處理生圖指令的類別 - 測試全功能的聊天程式 | CHAPTER 7 Agent 的橋樑–用 MCP 介接外部工具 7-1 MCP 協定簡介 - MCP 的組成要素 7-2 MCP 伺服器開發 - 安裝 uv 工具並建置 Python 環境 - 可在本機執行指令的 MCP 伺服器 - 測試 MCP 伺服器 - 多個 MCP 伺服器共同運作 7-3 MCP 用戶端 - 使用單一 MCP 伺服器的應用程式 - 同時使用多個 MCP 伺服器 - 使用其他人設計的 MCP 伺服器 | CHAPTER 8 遠端 MCP 與遙控應用程式 8-1 使用 SSE 將 MCP 伺服器部署在網路上 - 使用 SSE 的 MCP 伺服器 - 測試採用 SSE 傳輸的 MCP 伺服器 - 使用 SSE 傳輸的 MCP 用戶端 - 使用 Streamable HTTP 在網路上部署 MCP 伺服器 8-2 使用公開在網路上的 MCP 伺服器 - GitMCP 使用方法 - 手動修正 MCP 伺服器提供的 JSON Schema - 使用 OpenAI 內建工具連接部署在公開網路上的 MCP 伺服器 - 先讓使用者同意才執行 MCP 工具 - 讓用戶端程式使用內建 MCP 工具 8-3 使用環境變數傳遞機密資訊給 MCP 伺服器 - 預設揭露給 MCP 伺服器的環境變數 - 使用 env 項目傳遞環境變數給 MCP 伺服器 8-4 操控其他應用程式的 MCP 伺服器 - 建立 Spotify App - 撰寫 MCP 伺服器 - 測試控制 Spotify 的 MCP 伺服器 | CHAPTER 9 即時語音 Realtime API - 進階語音模式體驗 9-1 Realtime API 多模態輸入輸出 - Realtime API 的運作方式 - 準備工作 9-2 Realtime API 基本架構 - 修改交談階段的參數 - 傳送文字並取得回應 - 在 Realtime API 中使用 function calling 9-3 進入 Realtime API 的語音世界 - 準備工作 - 從聲音檔傳送語音 - 進入即時語音交談的世界 - 顯示輸入語音的文字轉換結果 - 加入 function calling 功能 - 用語音控制 MCP 伺服器 9-4 手動控制語音段落 - 關閉 VAD 功能 - 取消正在進行中的回覆 9-5 網頁版的 Realtime API 應用程式 - 派發臨時金鑰 - 網站主頁面 - 建立 WebRTC 連線 - 計價方式 | CHAPTER 10 Agents SDK – 邁向代理人最後一哩路 10-1 Agents SDK 簡介 10-2 建立基本的 agent 架構 - 以同步方式執行 - 以串流方式執行 - 串接結果建立討論串 10-3 在 agent 中使用工具 - 使用內建工具 - 使用 MCP 伺服器 - 使用自訂函式工具 10-4 Guardrail(防護欄) - 自訂 agent 的輸出格式 - 建立 guardrail - 使用 traces 頁面觀察 agent 執行結果 10-5 agent 的交棒(handoff)機制 - 建立可以抓取網頁文字的 agent - 把 agent 當工具使用 - 使用 handoff 交棒機制 - 顯示交棒的理由 10-6 使用語音交談的 agent - 前置工作 - 撰寫第一個語音版的 agent 程式 - 顯示輸入內容 - 同時顯示輸入內容與回覆內容 - 啟動 VAD 自動偵測講話機制 - 使用 MCP 伺服器
類似書籍推薦給您
【簡介】 由微軟MVP、MCSD認證專家與大學教師共同編著,是一本適合大專院校教學,以及MTA、MCSD認證課程的先修教材。內容豐富從基礎到進階,從地端到雲端,進而邁向AI影像辨識與OpenAI API開發,範例解說詳細,讓初學者學習完全無障礙。 ■ C#物件導向程式設計篇 以深入淺出方式讓初學者具有物件導向的觀念,並以主控台專案介紹C#資料型別、流程控制、陣列與方法(函式)、類別與物件、繼承、多型、介面、檔案存取、例外處理…等,進而領會出物件導向程式設計的要領。 ■ 視窗應用程式設計篇 介紹視窗程式開發,例如清單與容器、對話方塊、鍵盤與滑鼠事件、功能表與工具列、多表單與MDI 多表單的應用,使初學者具備建構豐富的視窗應用程式。 ■ 資料庫程式設計篇 介紹ADO.NET資料庫存取、交易處理、預存程序等議題。同時介紹 LINQ 和 Entity Framework存取陣列、集合物件、DataSet、SQL 資料庫等資料來源。 ■ 網路應用程式與跨平台行動裝置網站設計篇 介紹 ASP.NET MVC Web應用程式開發,讓初學者理解MVC的開發方式,並透過jQuery Mobile整合ASP.NET MVC建置跨平台書籍管理系統與書籍查詢行動網站。 ■ Azure雲端服務、影像辨識與OpenAI API應用篇 介紹Microsoft Azure雲端運算平台、OpenAI API與C#整合,透過App Services部署雲端網站、建置Azure SQL Database雲端資料庫,使用Azure認知服務分析影像資訊與臉部偵測,以及利用OpenAI API開發ChatGPT聊天機器人與AI繪圖程式,進而建置智慧化的商用應用程程式。 【目錄】 ch01 Visual Studio環境建置與C#程式架構 1.1 Visual Studio簡介 1.2 安裝Visual Studio 1.3 C#程式架構 ch02 資料型別與主控台應用程式 2.1 C#資料型別 2.2 C# 運算子 2.3 主控台應用程式 2.4 主控台應用程式格式化輸出入 2.5 資料型別轉換 2.6 列舉資料型別 2.7 結構資料型別 ch03 流程控制 3.1 選擇結構 3.2 重複結構 ch04 陣列與方法 4.1 陣列 4.2 規則與不規則陣列 4.3 結構與結構陣列 4.4 方法 4.5 方法的使用 4.6 引數的傳遞方式 4.7 如何在方法間傳遞陣列 4.8 方法多載 4.9 區塊變數、區域變數、靜態變數與類別欄位 ch05 視窗應用程式 5.1 Windows Forms App視窗應用程式專案 5.2 物件導向程式設計觀念 5.3 第一個Windows Forms App視窗應用程式 5.4 表單檔的組成 5.5 認識整合開發環境 5.6 控制項的操作 ch06 物件與類別 6.1 前言 6.2 物件與類別 6.3 物件導向程式設計的特性 6.4 物件與類別的建立 6.5 實例 - 堆疊 ch07 繼承、多型、介面 7.1 繼承 7.2 靜態成員 7.3 多型 7.4 介面與實作 7.5 delegate委派型別 7.6 結構與類別的關係 7.7 List泛型類別 7.8 視窗應用程式 ch08 列舉器與集合 8.1 使用列舉器瀏覽陣列內容 8.2 集合類別 8.3 泛型與非泛型集合類別實作 ch09 例外與檔案處理 9.1 try{...}catch{...}finally{...}語法 9.2 例外類別 9.3 自訂例外處理 - 使用throw敘述 9.4 例外類別繼 9.5 System.IO命名空間常用類別介紹 9.6 DirectoryInfo類別 9.7 FileInfo類別 9.8 檔案讀寫 9.9 Path類別 9.10 Drivelnfo類別 ch10 表單與基礎控制項 10.1 Form表單介紹 10.2 Label標籤控制項 10.3 LinkLabel連結標籤控制項 10.4 ToolTip提示控制項 10.5 Button按鈕控制項 10.6 TextBox文字方塊控制項 10.7 MessageBox.Show顯示對話方塊方法 ch11 常用控制項(一) 11.1 RadioButton選項按鈕控制項 11.2 CheckBox核取方塊控制項 11.3 容器控制項 11.4 清單控制項 ch12 常用控制項(二) 12.1 圖片控制項 12.2 上下按鈕控制項 12.3 捲軸控制項 12.4 計時器與日期時間控制項 ch13 豐富文字方塊與工具列 13.1 RichTextBox豐富文字方塊控制項 13.2 ToolStrip工具列控制項 13.3 ToolStripContainer工具列容器控制項 13.4 StatusStrip狀態列控制項 13.5 MenuStrip功能表控制項 13.6 ContextMenuStrip快顯功能表控制項 ch14 滑鼠鍵盤與共用事件 14.1 鍵盤事件 14.2 滑鼠事件 14.3 控制項共用事件 ch15 對話方塊與多表單應用 15.1 FontDialog字型對話方塊控制項 15.2 ColorDialog色彩對話方塊控制項 15.3 檔案對話方塊 15.4 多表單開發 15.5 MDI多表單開發 ch16 ADO.NET簡介與SQL Express資料庫設計 16.1 資料庫概念 16.2 SQL Server Express LocalDB資料庫介紹 16.3 SQL語法 16.4 ADO.NET簡介 16.5 .NET Framework Data Provider ch17 ADO.NET資料庫存取(一) 17.1 如何引用ADO.NET命名空間 17.2 如何使用Connection物件 17.3 如何使用DataReader物件 17.4 使用SQL語法的注意事項 cH18 ADO.NET 資料庫存取(二) 18.1 如何使用DataSet物件 18.2 如何使用Command物件 18.3 ADO .NET交易處理 ch19 資料繫結與預存程序的使用 19.1 資料繫結 19.2 如何將DataTable進行關聯 19.3 使用BindingManagerBase巡覽資料表記錄 19.4 如何使用預存程序 ch20 LINQ資料查詢技術 20.1 LINQ簡介 20.2 如何撰寫LINQ查詢 20.3 LINQ to Objects 20.4 LINQ to XML 20.5 LINQ方法 20.6 LINQ to DataSet 20.7 ADO .NET Entity Framework ch21 ASP.NET MVC應用程式 21.1 ASP.NET MVC應用程式簡介 21.2 ASP.NET MVC專案架構 21.3 ASP.NET MVC書籍管理網站實作 ch22 jQuery Mobile跨平台行動裝置應用程式開發 【PDF電子書,請線上下載】 22.1 Query Mobile簡介 22.2 jQuery Mobile開發 22.3 jQuery Mobile與ASP.NET MVC整合 ch23 Azure雲端服務 - 雲端網站與雲端資料庫 23.1 Azure雲端平台簡介與服務申請 23.2 App Service建立雲端網站 23.3 SQL Database建立雲端資料庫 23.4 Azure雲端圖書管理網站 ch24 Azure認知服務 - Computer Vision與Face API 24.1 認知服務簡介 24.2 Computer Vision電腦視覺服務 24.3 Face API臉部服務 ch25 OpenAI API開發 - 聊天機器人與AI 繪圖程式【NEW!!】 25.1 認識ChatGPT 25.2 OpenAI API申請付費帳戶 25.3 OpenAI API服務金鑰申請 25.4 使用Open AI製作聊天機器人 25.5 OpenAI繪圖 附錄A:C#常用類別 【PDF電子書,請線上下載】 附錄B:DataView物件的使用 【PDF電子書,請線上下載】 附錄C:讀寫XML文件 【PDF電子書,請線上下載】 附錄D:ASP.NET Web Form應用程式 【PDF電子書,請線上下載】
類似書籍推薦給您
內容簡介 從入門到活用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版語音聊天程式