OpenAI開源了:Transformer自動Debug工具上線GitHub
最近時常被吐槽不夠開源的 OpenAI,突然開放了一次。
今天一早,OpenAI 機器學(xué)習(xí)研究員 Jan Leike 宣布,OpenAI 開放了自己內(nèi)部一直用于分析 Transformer 內(nèi)部結(jié)構(gòu)的工具。

GitHub 鏈接:https://github.com/openai/transformer-debugger
該項目開放才幾個小時,雖然沒有經(jīng)過太多宣傳,star 數(shù)量上漲得也挺快。

Transformer Debugger 介紹
Transformer Debugger (TDB) 是 OpenAI 對齊團隊(Superalignment)開發(fā)的一種工具,旨在支持對小體量語言模型的特定行為進行檢查。據(jù)介紹,該工具把自動可解釋性技術(shù)與稀疏自動編碼器進行了結(jié)合。
具體來說,TDB 能夠在需要編寫代碼之前進行快速探索,并能夠干預(yù)前向傳遞,幫助人們查看它是如何影響模型特定行為的。TDB 可用于回答諸如「為什么模型在此提示(prompt)中輸出 token A 而不是 token B?」之類的問題或「為什么注意力頭 H 會在這個提示下關(guān)注 token T?」
它通過識別對行為有貢獻的特定組件(神經(jīng)元、注意力頭、自動編碼器 latents),顯示自動生成的解釋來分析導(dǎo)致這些組件最強烈激活的原因,并跟蹤組件之間的連接以幫助人們發(fā)現(xiàn)聯(lián)系,以此來幫助人們進行 Transformer 的 debug 工作。
OpenAI 放出了幾段視頻概述了 TDB 的能力,并展示了如何使用它來進行論文《Interpretability in the Wild: a Circuit for Indirect Object Identification in GPT-2 small》中的工作:
本次,OpenAI 的開源內(nèi)容包括:
- Neuron viewer:一個 React 應(yīng)用程序,用于托管 TDB 以及包含有關(guān)各個模型組件(MLP 神經(jīng)元、注意力頭和兩者的自動編碼器 latents)信息的頁面。
 - Activation server:對主題模型進行推理,為 TDB 提供數(shù)據(jù)的后端服務(wù)器。它還從公共 Azure 存儲桶讀取和提供數(shù)據(jù)。
 - Models:GPT-2 模型及其自動編碼器的簡單推理庫,帶有捕獲激活的 hook。
 - 整理好的激活數(shù)據(jù)集:包含 MLP 神經(jīng)元、注意力頭和自動編碼器 latents 的頂級激活數(shù)據(jù)集示例。
 
安裝設(shè)置
請按照以下步驟安裝存儲庫。請注意,在此之前你需要 python/pip 以及 node/npm。
雖然不是必要,但 OpenAI 建議使用虛擬環(huán)境進行操作:
# If you're already in a venv, deactivate it.
deactivate# Create a new venv.
python -m venv ~/.virtualenvs/transformer-debugger# Activate the new venv.
source ~/.virtualenvs/transformer-debugger/bin/activate設(shè)置好環(huán)境后,請按照以下步驟操作:
git clone git@github.com:openai/transformer-debugger.gitcd transformer-debugger
# Install neuron_explainer
pip install -e .
# Set up the pre-commit hooks.
pre-commit install
# Install neuron_viewer.
cd neuron_viewer
npm installcd ..要運行 TDB 應(yīng)用程序,你需要按照說明設(shè)置激活服務(wù)器后端和神經(jīng)元查看器前端。
要驗證更改,你需要:
- 運行 pytest;
 - 運行 mypy —cnotallow=mypy.ini;
 - 運行激活服務(wù)器和神經(jīng)元查看器,并確認 TDB 和神經(jīng)元查看器頁面等基本功能仍然有效。
 
Jan Leike 表示,TDB 目前仍然是一個早期階段的研究工具,OpenAI 希望通過開源的方式讓更多人受益,并期待社區(qū)在其基礎(chǔ)上不斷改進。















 
 
 














 
 
 
 