色综合久久亚洲国产日韩_日本在线观看_国产成人精品久久二区二区_免费观看一区二区

如何微調 GPT 以提高對話性能?GPT大模型微調指南全步驟詳解
發布時間: 2024-08-20 10:13

多年來,人工智能以各種形式盛行——從Alexa等虛擬助手到客戶服務聊天機器人——但隨著ChatGPT的推出,人工智能迎來了關鍵時刻。這款人工智能應用程序不僅吸引了數百萬人的想象力,還成為我們今天正在經歷的人工智能革命的催化劑。最近的估計顯示,ChatGPT 的用戶群超過 1.8 億,它不僅是最受歡迎的人工智能應用程序,而且是全球使用最廣泛的應用程序之一。它還獲得了歷史上增長最快的消費者應用程序的稱號。


盡管 ChatGPT 具有非凡的功能,或者更具體地說是 GPT(為其提供支持的生成式預訓練 Transformer 模型)仍具有某些局限性,尤其是在商業環境中應用時。


了解 GPT 在商業應用中的局限性


GPT 的第一個限制是缺乏專業知識。正如預期的那樣,一個在龐大但通用的數據上訓練的模型不可能知道一切,尤其是考慮到人類知識的快速擴展。此外,GPT 的知識是靜態的,當訓練結束時就會終止。例如,最新的 GPT-4-o 模型的知識庫在 2023 年 10 月結束。


另一個重大限制涉及專有或機密數據的使用。GPT 可能無法完全理解組織的獨特數據格式或用戶特定請求,從而導致專業任務的效果不佳。此外,還有數據隱私方面的擔憂。OpenAI 利用輸入 GPT 的數據來訓練未來的模型,這意味著使用敏感數據的組織可能會無意中共享機密信息,從而可能違反數據隱私法規。


盡管如此,生成式 AI 的變革潛力(提高生產力和成本效率)已促使組織尋求將 GPT 等 LLM 集成到其專業工作流程中并安全地整合專有數據的方法。這就是微調發揮作用的地方。


如何微調 GPT 以提高對話性能?


微調:根據您的特定需求定制 GPT


微調是采用預先訓練好的語言模型,并在針對特定任務或知識領域的專用數據集上進一步訓練它的過程。初始預訓練階段涉及向模型提供來自不同來源的大量非結構化數據。相比之下,微調利用針對目標領域或任務的較小、更精心策劃和標記的數據集。


在本指南中,我們將引導您逐步了解針對對話數據微調 GPT 的過程。這包括訪問 OpenAI 的界面、上傳適當的數據集、選擇正確的模型、對其進行微調、監控進度以及進行必要的調整。


步驟 1:設置開發環境


首先,您需要安裝 OpenAI SDK 來設置開發環境。我們將在本指南中使用 Python SDK 作為示例,但它也可以在 Node.js 和 .NET 中使用。此外,您還需要安裝python-dotenv來管理環境變量。


pip install openai python-dotenv

# For Python 3 and above

pip3 install openai python-dotenv


接下來,導入 OpenAI 類并創建一個客戶端對象來與 OpenAI 接口交互,該接口充當各種 API 調用的包裝器。


import os

from openai import OpenAI


client = OpenAI(

  api_key=os.environ['OPENAI_API_KEY'],

)


要訪問 OpenAI 的 API,您需要一個 API 密鑰,該密鑰可通過在 OpenAI 開發者平臺上注冊獲得。API 密鑰安全地存儲在一個.env文件中,可以使用os模塊訪問該文件,如上所示。


第 2 步:選擇正確的模型進行微調


設置好環境后,下一步是選擇要微調的模型。OpenAI 目前提供了幾種微調模型:


  • davinci-002

  • babbage-002

  • GPT-4-o-mini-2024-07-18

  • GPT-3.5-turbo


在研究OpenAI 的定價時,您會注意到,盡管最新模型 GPT-4-o-mini 是上下文長度最長的最新模型,但價格相對便宜,僅次于 babbage-002。成本較低的原因是 GPT-4-o-mini 是 GPT 的縮小版,參數更少,從而降低了計算需求。相比之下,GPT-3.5-turbo 和 davinci-002 是更大的模型,具有更多參數和更復雜的架構,這反映在它們更高的訓練成本上。最終,您選擇的模型應該符合您的特定對話需求和預算限制。


步驟 3:準備微調數據集


選擇模型后,下一個關鍵步驟是準備微調數據。在本指南中,我們將使用My_Custom_Conversational_DataHuggingFace 上提供的數據集,這是一個強大的 AI 開發資源平臺,包括數據集。


該數據集非常適合我們的微調場景,因為它包含廣泛的對話數據,并且格式化為符合 OpenAI 的聊天完成 API 所需的結構 - 提示完成對,如下所示:


{"prompt": "<prompt text>", "completion": "<ideal generated text>"}

{"prompt": "<prompt text>", "completion": "<ideal generated text>"}


此外,該數據集已分為訓練和評估子集,省去了我們手動拆分的任務。這種劃分對于確保模型在微調和評估期間接觸不同的數據至關重要,這有助于防止過度擬合(即模型無法推廣到新的、未見過的數據)。


要下載數據集,請使用以下命令從 HuggingFace 克隆其存儲庫:


git clone https://huggingface.co/datasets/Unified-Language-Model-Alignment/Anthropic_HH_Golden


步驟 4:上傳數據集進行微調


準備好數據集后,下一步是使用OpenAI 的文件 API上傳它們。下面是如何上傳訓練和評估數據集的示例,創建將在微調過程中使用的文件對象。


training_dataset = client.files.create(

  file=open("training.jsonl", "rb"),

  purpose="fine-tune"

)


evaluation_dataset = client.files.create(

  file=open("evaluation.jsonl", "rb"),

  purpose="fine-tune"

)


上傳成功后,返回的文件對象將包含一個id唯一標識該文件的屬性。


步驟 5:啟動微調過程


上傳數據集后,就可以使用微調 API 創建微調作業了。所需的主要參數是模型名稱和訓練文件的id。如果您還上傳了評估數據集,則可以將其包含在微調作業中,如下所示:


ft_job = client.fine_tuning.jobs.create(

  model="model_name",

  training_file=training_dataset.id,

  validation_file=evaluation_dataset.id,

)


您還可以指定超參數,例如 epoch 數、批處理大小和學習率乘數。但是,建議允許 OpenAI 的 API 根據您首次運行的數據集大小自動配置這些設置。如果您希望手動設置這些參數,您的代碼將如下所示:


ft_job = client.fine_tuning.jobs.create(

  model="model_name",

  training_file=training_dataset.id,

  validation_file=evaluation_dataset.id,

  hyperparameters={

    "n_epochs": 5,

    "batch_size": 16,

    "learning_rate_multiplier": 0.2

  }

)


一旦啟動,微調作業將返回一個包含 的作業對象id,這對于跟蹤作業的進度至關重要。完成后,您將收到一封電子郵件通知,但所需時間將根據模型和數據集大小而有所不同。


步驟 6:監控微調過程


在微調過程中,您可以通過列出與您的作業相關的事件來監控狀態。OpenAI 提供了幾個訓練指標:


  • 訓練損失:衡量模型預測值與訓練數據中的實際值之間的差異。損失越低,表示性能越好。

  • 訓練 token 準確率:訓練期間預測正確的 token 的百分比。

  • 驗證損失:評估模型在未見數據上的性能,表明其泛化能力。

  • 驗證令牌準確度:評估數據集上令牌預測的準確度。


您可以使用以下代碼檢索這些指標:


client.fine_tuning.jobs.list_events(

  fine_tuning_job_id=ft_job.id,

  limit=5

)


步驟 7:訪問和使用微調模型

微調作業完成后,可能需要一些時間才能完全訪問模型。如果模型無法立即使用,則可能仍在加載中。您可以使用其作業檢索微調后的模型id:


ft_retrieve = client.fine_tuning.jobs.retrieve(ft_job.id)

print(ft_retrieve)

該fine_tuned_model屬性現在將包含您定制的模型的名稱,并且該status屬性應該指示成功。


您現在可以通過在 GPT-3.5-turbo 和 GPT-4-o-mini 的聊天完成 API 中指定它或通過使用 babbage-002 或 davinci-002 的舊式完成 API 來使用此微調模型:


completion = client.chat.completions.create(

  model="your fine-tuned model",

  messages=[

    {"role": "system", "content": "You are a helpful assistant."},

    {"role": "user", "content": "Who won the 2024 World Series?"}

  ]

)


步驟 8:使用專有數據進行微調:確保隱私和安全


如果您使用專有或機密數據進行微調,則必須采取措施保護這些數據,因為 OpenAI 可能會使用它來訓練未來的模型。降低這種風險的一種方法是使用 OpenAI 的非訓練端點:


completion = client.chat.completions.create(

  model="your fine-tuned model",

  messages=[

    {"role": "system", "content": "You are a helpful assistant."},

    {"role": "user", "content": "Who won the 2024 World Series?"}

  ],

  do_not_train=True

)


另一個有效的策略是采用data on-premises開源開發人員的解決方案,從而實現對數據處理管道的完全控制。


增強你的微調模型


測試微調模型后,您可能會發現其性能不太符合您的期望,或者不如您所希望的那樣一致。在這種情況下,是時候完善和增強您的模型了。OpenAI 提供了幾種方法來幫助您改進微調模型,重點關注三個關鍵領域:


1. 質量:增強微調數據


確保格式正確:仔細檢查所有數據點的格式是否正確。結構正確的數據對于模型的學習過程至關重要。

解決弱點:如果您的模型在特定提示上遇到困難,請整合數據點來展示模型應如何應對這些場景。這種有針對性的方法可以顯著提高性能。

多樣化數據集:確保您的數據集包含各種各樣的示例,這些示例可以準確反映您的模型可能遇到的各種提示和響應。多樣化的數據集有助于模型在不同場景中更好地泛化。


2. 數量:擴大數據集


復雜任務處理:任務越復雜,所需的數據集就越大。增加數據集大小有助于模型處理更廣泛的情況。

邊緣案例包含:通過擴展數據集,您更有可能包含非常規數據點或邊緣案例。這有助于模型更有效地學習概括,增強其處理意外輸入的能力。

防止過度擬合:更大的數據集也可以減輕過度擬合,因為模型有更多不同的數據可供學習,確保它捕捉到真正的底層關系,而不僅僅是記住正確的響應。


3.超參數:微調訓練過程


調整微調作業的超參數是另一個關鍵步驟。以下是如何有效地調整它們:


歷元數:

  • 如果出現以下情況則增加:模型在訓練和驗證數據上的表現均不佳(欠擬合),或者模型的損失正在減少但尚未穩定(收斂緩慢)。

  • 如果:模型在訓練數據上表現良好,但在評估數據上表現不佳(過度擬合),或者在初始改進后損失增加(早期收斂),則減少。


學習率乘數:

  • 如果模型收斂緩慢或者您正在處理特別大的數據集,則增加。

  • 如果模型的損失出現大幅波動(振蕩)或出現過度擬合的跡象,則減少。


批次大小:

  • 如果出現以下情況則增加:模型微調成功,允許使用更大的批量來加快進程,或者損失正在波動。

  • 如果:模型收斂得不太好,則減少,因為較小的批次可以幫助模型更徹底地學習數據,或者盡管進行了其他調整,過度擬合仍然存在。


結論:微調之旅


微調是一個復雜但強大的過程,如果操作正確,可以顯著提高生成式AI應用程序的效率。我們鼓勵您通過進一步的實驗來加深您的理解和技能。這可能涉及調整不同的超參數、試驗各種數據集或嘗試 OpenAI 提供的不同模型。

粵公網安備 44030502006483號、 粵ICP備15047669號
  • 捷易科技聯系人
  • 色综合久久亚洲国产日韩_日本在线观看_国产成人精品久久二区二区_免费观看一区二区

                    国产精品日韩欧美大师| 国产精品久久999| 欧美成人资源网| 欧美日韩精品在线观看| 欧美视频在线一区二区三区| 国产精品卡一卡二卡三| 国内一区二区在线视频观看 | 欧美大尺度在线观看| 欧美日韩精品二区第二页| 国产精品国产自产拍高清av| 国产视频一区二区在线观看| 亚洲福利小视频| 亚洲一区二区不卡免费| 葵司免费一区二区三区四区五区| 欧美韩日亚洲| 国内精品免费午夜毛片| 一本色道精品久久一区二区三区 | 亚洲毛片在线| 欧美亚洲免费电影| 欧美精品系列| 国产午夜亚洲精品羞羞网站| 日韩亚洲一区在线播放| 久久精品国产欧美亚洲人人爽| 欧美美女喷水视频| 黄色成人在线网站| 亚洲综合日本| 欧美国产视频日韩| 一区二区三区在线免费播放| 99国产精品久久久久老师 | 久久综合久色欧美综合狠狠| 国产精品久久久亚洲一区| 在线观看91精品国产麻豆| 亚洲男人天堂2024| 欧美日韩国产123| 亚洲国产精品久久久久婷婷老年| 午夜精品久久| 欧美体内she精视频| 91久久精品国产91久久性色| 久久精品二区| 国产乱码精品一区二区三| 日韩西西人体444www| 免费不卡视频| 在线不卡中文字幕| 久久久亚洲欧洲日产国码αv| 国产精品久99| 亚洲一区二区视频| 欧美视频在线观看 亚洲欧| 亚洲精品久久| 欧美日韩国产小视频在线观看| 亚洲国产清纯| 欧美不卡视频一区发布| 极品少妇一区二区三区精品视频| 久久国产精品久久w女人spa| 国产乱码精品一区二区三区不卡 | 国模私拍视频一区| 欧美主播一区二区三区| 国产亚洲欧美一区在线观看| 小嫩嫩精品导航| 国产欧美亚洲一区| 久久精品免视看| 国内精品久久久久久久97牛牛| 久久美女性网| 亚洲经典三级| 欧美日韩一区二区三区在线观看免 | 久久电影一区| 一色屋精品视频在线看| 欧美福利电影在线观看| 亚洲美女啪啪| 国产精品推荐精品| 久久精品亚洲| 亚洲人成亚洲人成在线观看图片 | 西瓜成人精品人成网站| 国产在线精品一区二区中文| 女仆av观看一区| 99re这里只有精品6| 国产精品久久网| 久久久免费av| 99热在线精品观看| 国产精品一区二区你懂的| 久久午夜电影网| 一区二区欧美在线| 国产一区白浆| 欧美日韩www| 欧美在线视频在线播放完整版免费观看| 影音先锋另类| 国产精品久久久久久影院8一贰佰| 久久精品免费看| 日韩午夜av在线| 韩日欧美一区| 欧美亚州一区二区三区 | 久久精品麻豆| 日韩视频一区二区三区在线播放免费观看 | 国产精品免费看片| 麻豆成人91精品二区三区| 亚洲一区二区三区四区五区黄| 亚洲第一二三四五区| 国产精品国产一区二区| 欧美第一黄色网| 欧美有码视频| 亚洲一区二区三区免费视频| 激情六月婷婷久久| 国产精品永久免费观看| 欧美日韩视频在线一区二区 | 亚洲欧美bt| 日韩网站在线看片你懂的| 国内精品久久久久影院色| 欧美小视频在线观看| 欧美v日韩v国产v| 久久成人精品| 欧美与黑人午夜性猛交久久久| 一区二区高清在线| 亚洲美女少妇无套啪啪呻吟| 亚洲电影免费观看高清完整版在线观看| 国产精品久久久久99| 欧美日本韩国在线| 欧美成人精品激情在线观看| 久久久国产成人精品| 性色av香蕉一区二区| 一区二区三区精品视频| 日韩视频在线一区| 亚洲精品你懂的| 亚洲高清不卡一区| 亚洲电影免费观看高清| 国内偷自视频区视频综合| 国产精品你懂的在线| 国产精品久久久99| 国产精品视频精品视频| 国产精品亚洲视频| 国产午夜精品全部视频在线播放| 国产精品一区久久| 国产日韩精品一区二区三区| 国产午夜精品理论片a级大结局| 国产目拍亚洲精品99久久精品| 国产精品呻吟| 国产婷婷一区二区| 国产中文一区| 伊人精品在线| 亚洲精品日韩激情在线电影| 一本色道久久综合亚洲二区三区| 9l国产精品久久久久麻豆| 夜夜夜久久久| 午夜免费在线观看精品视频| 性欧美精品高清| 久久综合给合久久狠狠狠97色69| 美女视频黄 久久| 欧美激情bt| 国产精品中文字幕欧美| 国产原创一区二区| 亚洲精品1区| 亚洲欧美日本国产专区一区| 久久精品一区二区三区四区| 免费观看亚洲视频大全| 欧美视频在线播放| 国产日韩一级二级三级| 伊人激情综合| 一二三区精品| 久久精品免费| 欧美日韩视频免费播放| 国产欧美91| 亚洲国产成人精品视频| 亚洲在线一区二区三区| 久久久久久久综合狠狠综合| 欧美三级视频| 悠悠资源网久久精品| 一本色道久久综合亚洲精品婷婷| 欧美在线观看一区二区| 欧美黑人在线观看| 国产美女扒开尿口久久久| 亚洲国产精品嫩草影院| 亚洲尤物在线视频观看| 麻豆国产精品va在线观看不卡 | 国产精品黄色在线观看| 樱桃成人精品视频在线播放| 在线亚洲观看| 麻豆国产va免费精品高清在线| 国产精品久久久久永久免费观看| 亚洲国产成人久久综合一区| 亚洲欧美在线免费观看| 欧美精品免费视频| 激情欧美一区二区三区| 亚洲一区二区在线播放| 欧美黄色aa电影| 韩国av一区二区| 亚洲免费影视第一页| 欧美人与性动交cc0o| 在线成人免费视频| 午夜精品久久久久久久99热浪潮| 欧美日韩国产一区二区三区| 亚洲国产精品一区制服丝袜 | 国产女主播在线一区二区| 99日韩精品| 欧美精品福利| 亚洲国产精品国自产拍av秋霞| 久久久不卡网国产精品一区| 国产精品亚洲美女av网站| 亚洲一区二区精品在线| 欧美日韩一区二区在线观看| 亚洲日本中文字幕| 欧美 日韩 国产 一区| 精品成人一区二区|