作業可能會設定為透過支援的服務供應商(如 OpenAI、Azure 或 Hugging Face)對一個或多個大型語言模型(LLM)部署進行操作。這些供應商提供一個 託管端點(API),我們可以使用正確的憑證(API 金鑰或令牌)以程式方式存取。在本課程中,我們討論以下供應商:
- OpenAI 提供多樣化模型,包括核心 GPT 系列。
- Azure OpenAI 專注於企業級的 OpenAI 模型。
- Hugging Face 提供開源模型及推理伺服器。
你需要使用自己的帳戶來完成這些練習。作業是選擇性的,因此你可以根據興趣選擇設定其中一個、全部或不設定任何供應商。以下是註冊指引:
| 註冊 | 費用 | API 金鑰 | Playground | 備註 |
|---|---|---|---|---|
| OpenAI | 價格 | 基於專案 | 無需程式碼,網頁版 | 多種模型可用 |
| Azure | 價格 | SDK 快速入門 | Studio 快速入門 | 必須事先申請存取權 |
| Hugging Face | 價格 | 存取令牌 | Hugging Chat | Hugging Chat 模型有限 |
請依照以下指示來 配置 本儲存庫以使用不同供應商。需要特定供應商的作業檔名會包含以下標籤之一:
aoai- 需要 Azure OpenAI 端點及金鑰oai- 需要 OpenAI 端點及金鑰hf- 需要 Hugging Face 令牌
你可以配置一個、沒有或全部供應商。相關作業若缺少憑證會直接報錯。
我們假設你已閱讀上述指引並已向相關供應商註冊,取得所需的認證憑證(API_KEY 或令牌)。對於 Azure OpenAI,我們假設你也有一個有效的 Azure OpenAI 服務部署(端點),且至少部署了一個 GPT 模型用於聊天完成。
下一步是配置你的 本地環境變數,步驟如下:
-
在根目錄尋找
.env.copy檔案,內容應類似如下:# OpenAI 供應商 OPENAI_API_KEY='<add your OpenAI API key here>' ## Azure OpenAI AZURE_OPENAI_API_VERSION='2024-02-01' # 預設已設定! AZURE_OPENAI_API_KEY='<add your AOAI key here>' AZURE_OPENAI_ENDPOINT='<add your AOIA service endpoint here>' AZURE_OPENAI_DEPLOYMENT='<add your chat completion model name here>' AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='<add your embeddings model name here>' ## Hugging Face HUGGING_FACE_API_KEY='<add your HuggingFace API or token here>'
-
使用以下指令將該檔案複製為
.env。此檔案已被 gitignore,可保護秘密資訊安全。cp .env.copy .env
-
按下一節說明填入數值(替換
=右側的佔位符)。 -
(選擇性)如果你使用 GitHub Codespaces,可以選擇將環境變數儲存為與本儲存庫關聯的 Codespaces 秘密。如此一來就不必設定本地 .env 檔案。但請注意,此選項僅適用於 GitHub Codespaces。 若使用 Docker Desktop,仍需設定 .env 檔案。
快速了解變數名稱及其代表意義:
| 變數名稱 | 說明 |
|---|---|
| HUGGING_FACE_API_KEY | 你在個人資料中設定的使用者存取令牌 |
| OPENAI_API_KEY | 用於非 Azure OpenAI 端點的授權金鑰 |
| AZURE_OPENAI_API_KEY | 用於 Azure OpenAI 服務的授權金鑰 |
| AZURE_OPENAI_ENDPOINT | Azure OpenAI 資源的部署端點 |
| AZURE_OPENAI_DEPLOYMENT | 文字生成 模型部署端點 |
| AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT | 文字嵌入 模型部署端點 |
注意:最後兩個 Azure OpenAI 變數分別對應聊天完成(文字生成)和向量搜尋(嵌入)的預設模型。設定指示會在相關作業中說明。
Azure OpenAI 端點及金鑰可在 Azure 入口網站 找到,以下開始說明。
- 前往 Azure 入口網站
- 點選側邊欄(左側選單)的 Keys and Endpoint 選項。
- 點選 Show Keys,你會看到 KEY 1、KEY 2 及 Endpoint。
- 使用 KEY 1 的值作為 AZURE_OPENAI_API_KEY
- 使用 Endpoint 的值作為 AZURE_OPENAI_ENDPOINT
接著,我們需要取得已部署模型的端點。
- 點選 Azure OpenAI 資源側邊欄(左選單)的 Model deployments 選項。
- 在目的頁面點選 Manage Deployments
這會帶你到 Azure OpenAI Studio 網站,我們會在那裡找到其他值,如下所述。
- 按上述說明,從你的資源進入 Azure OpenAI Studio。
- 點選左側邊欄的 Deployments 標籤,查看目前已部署的模型。
- 若尚未部署所需模型,使用 Create new deployment 來部署。
- 你需要一個 文字生成 模型,我們推薦:gpt-35-turbo
- 你需要一個 文字嵌入 模型,我們推薦 text-embedding-ada-002
現在更新環境變數以反映所使用的 部署名稱。通常這會與模型名稱相同,除非你有明確更改。例如,你可能會有:
AZURE_OPENAI_DEPLOYMENT='gpt-35-turbo'
AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT='text-embedding-ada-002'完成後別忘了儲存 .env 檔案。你現在可以關閉檔案,回到執行筆記本的指示。
你的 OpenAI API 金鑰可在你的 OpenAI 帳戶 中找到。如果還沒有,可以註冊帳戶並建立 API 金鑰。取得金鑰後,將其填入 .env 檔案中的 OPENAI_API_KEY 變數。
你的 Hugging Face 令牌可在個人資料的 Access Tokens 頁面找到。請勿公開或分享這些令牌。建議為本專案使用建立新的令牌,並將其複製到 .env 檔案中的 HUGGING_FACE_API_KEY 變數。注意: 這技術上不是 API 金鑰,但用於認證,因此我們保持此命名慣例以保持一致性。
免責聲明:
本文件由 AI 翻譯服務 Co-op Translator 進行翻譯。雖然我們致力於確保準確性,但請注意自動翻譯可能包含錯誤或不準確之處。原始文件的母語版本應被視為權威來源。對於重要資訊,建議採用專業人工翻譯。我們不對因使用本翻譯而引起的任何誤解或誤釋承擔責任。