Transformers 文件

DialoGPT

Hugging Face's logo
加入 Hugging Face 社群

並獲得增強的文件體驗

開始使用

DialoGPT

PyTorch TensorFlow Flax

概述

DialoGPT 由 Yizhe Zhang、Siqi Sun、Michel Galley、Yen-Chun Chen、Chris Brockett、Xiang Gao、Jianfeng Gao、Jingjing Liu 和 Bill Dolan 在論文 DialoGPT: Large-Scale Generative Pre-training for Conversational Response Generation 中提出。它是一個 GPT2 模型,在從 Reddit 提取的 1.47 億個類似對話的交流資料上訓練而成。

論文摘要如下:

我們提出了一個大型、可調的神經對話響應生成模型,DialoGPT(對話式生成預訓練變換器)。DialoGPT 在 2005 年至 2017 年間從 Reddit 評論鏈中提取的 1.47 億個類似對話的交流資料上進行訓練,它擴充套件了 Hugging Face PyTorch Transformer,在單輪對話場景中,無論是自動評估還是人工評估,其效能都接近人類水平。我們表明,利用 DialoGPT 的對話系統比強大的基線系統生成的響應更相關、內容更豐富且上下文更一致。我們公開發布了預訓練模型和訓練流程,以促進神經響應生成的研究和更智慧的開放領域對話系統的開發。

原始程式碼可以在這裡找到。

使用技巧

  • DialoGPT 是一個具有絕對位置嵌入的模型,因此通常建議在輸入的右側而不是左側進行填充。
  • DialoGPT 是在對話資料上以因果語言建模(CLM)為目標進行訓練的,因此在開放領域的對話系統中,它在響應生成方面表現強大。
  • DialoGPT 的模型卡 所示,DialoGPT 使使用者能夠僅用 10 行程式碼建立一個聊天機器人。

訓練

為了訓練或微調 DialoGPT,可以使用因果語言建模訓練。引用官方論文:“我們遵循 OpenAI GPT-2 的方法,將多輪對話會話建模為一個長文字,並將生成任務框架化為語言建模。我們首先將對話會話中的所有對話輪次連線成一個長文字 x_1,…, x_N(N 是序列長度),並以文字結束標記結尾。” 更多資訊請參閱原始論文。

DialoGPT 的架構基於 GPT2 模型,有關 API 參考和示例,請參閱 GPT2 的文件頁面

< > 在 GitHub 上更新

© . This site is unofficial and not affiliated with Hugging Face, Inc.