自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

離開OpenAI待業(yè)的Karpathy做了個大模型新項目,Star量一日破千

人工智能 新聞
過去幾天,OpenAI 非常熱鬧,先有 AI 大牛 Andrej Karpathy 官宣離職,后有視頻生成模型 Sora 撼動 AI 圈。

閑不下來的 Andrej Karpathy 又有了新項目!

過去幾天,OpenAI 非常熱鬧,先有 AI 大牛 Andrej Karpathy 官宣離職,后有視頻生成模型 Sora 撼動 AI 圈。

在宣布離開 OpenAI 之后,Karpathy 發(fā)推表示「這周可以歇一歇了?!?/span>

圖片

圖源:https://twitter.com/karpathy/status/1757986972512239665

這種無事要做的狀態(tài)讓馬斯克都羨慕(I am envious)了。

圖片

但是,如果你真的認為 Karpathy 會閑下來,那就有點「too young, too navie」了。

這不,有眼尖的網(wǎng)友發(fā)現(xiàn)了 Karpathy 的新項目 ——minbpe,致力于為 LLM 分詞中常用的 BPE(Byte Pair Encoding, 字節(jié)對編碼)算法創(chuàng)建最少、干凈以及教育性的代碼。

僅僅一天的時間,該項目的 GitHub 標星已經(jīng)達到了 1.2 k。

圖源:https://twitter.com/ZainHasan6/status/1758727767204495367

有人 P 了一張圖,表示 Karpathy 為大家「烹制了一頓大餐」。

圖片

圖源:https://twitter.com/andrewcyu/status/1758897928385561069

更有人歡呼,Karpathy is back。

圖源:https://twitter.com/fouriergalois/status/1758775281391677477

我們來看一看「minbpe」項目具體講了些什么。

項目介紹

圖片

GitHub 地址:https://github.com/karpathy/minbpe

我們知道,BPE 算法是「字節(jié)級」的,在 UTF-8 編碼的字符串上運行。該算法通過 GPT-2 論文和 GPT-2 相關的代碼在大語言模型(LLM)中得到推廣。

現(xiàn)如今,所有現(xiàn)代的 LLM(比如 GPT、Llama、Mistral)都使用 BPE 算法來訓練它們的分詞器(tokenizer)。

Karpathy 的 minbpe 項目存儲庫中提供了兩個 Tokenizer,它們都可以執(zhí)行分詞器的 3 個主要功能:1)訓練 tokenizer 詞匯并合并給指定文本,2)從文本編碼到 token,3)從 token 解碼到文本。

詳細的存儲庫文件分別如下:

  • minbpe/base.py:實現(xiàn) Tokenizer 類,是基類。它包含了訓練、編碼和解碼存根、保存 / 加載功能,還有一些常見的實用功能。不過,該類不應直接使用,而是要繼承。
  • minbpe/basic.py:實現(xiàn) BasicTokenizer,這是直接在文本上運行的 BPE 算法的最簡單實現(xiàn)。
  • minbpe/regex.py:實現(xiàn) RegexTokenizer,它通過正則表達式模式進一步拆分輸入文本。作為一個預處理階段,它在分詞之前按類別(例如字母、數(shù)字、標點符號)拆分輸入文本。這確保不會發(fā)生跨類別邊界的合并。它是在 GPT-2 論文中引入的,并繼續(xù)在 GPT-4 中使用。
  • minbpe/gpt4.py:實現(xiàn) GPT4Tokenizer。此類是 RegexTokenizer 的輕量級封裝,它精確地復現(xiàn)了 tiktoken(OpenAI 開源分詞神器)庫中 GPT-4 的分詞。封裝處理有關恢復 tokenizer 中精確合并的一些細節(jié),并處理一些 1 字節(jié)的 token 排列。需要注意,奇偶校驗尚未完全完成,沒有處理特殊的 token。

腳本 train.py 在輸入文本 tests/taylorswift.txt 上訓練兩個主要的 tokenizer,并將詞匯保存到磁盤以進行可視化。Karpathy 稱,該腳本在他的 MacBook (M1) 上運行大約需要 25 秒。

Karpathy 還表示,所有文件都非常短且注釋詳盡,并包含使用示例。如下為 BPE 維基百科文章的復現(xiàn)例子。

from minbpe import BasicTokenizer
tokenizer = BasicTokenizer()text = "aaabdaaabac"
tokenizer.train(text, 256 + 3) # 256 are the byte tokens, then do 3 merges
print(tokenizer.encode(text))# [258, 100, 258, 97, 99]
print(tokenizer.decode([258, 100, 258, 97, 99]))# aaabdaaabac
tokenizer.save("toy")# writes two files: toy.model (for loading) and toy.vocab (for viewing)

此外還提供了如何實現(xiàn) GPT4Tokenizer,以及它與 tiktoken 的比較。

text = "hello123!!!? (?????!) ??"
# tiktoken
import tiktoken
enc = tiktoken.get_encoding("cl100k_base")print(enc.encode(text))# [15339, 4513, 12340, 30, 320, 31495, 230, 75265, 243, 92245, 16715, 57037]
# ours
from minbpe import GPT4Tokenizer
tokenizer = GPT4Tokenizer()print(tokenizer.encode(text))# [15339, 4513, 12340, 30, 320, 31495, 230, 75265, 243, 92245, 16715, 57037]

當然,Karpathy 不滿足只推出 GitHub 項目,他表示視頻很快就會發(fā)布。

圖片

責任編輯:張燕妮 來源: 機器之心
相關推薦

2022-06-23 15:48:02

AI開源GitHub

2023-11-05 10:01:37

AI模型

2024-02-19 13:45:14

OpenAIGPT-2模型

2020-08-18 14:48:00

AI 數(shù)據(jù)人工智能

2019-11-26 14:47:59

機器學習人工智能計算機

2023-03-02 14:00:03

AI繪畫

2021-04-12 21:19:01

PythonMakefile項目

2023-11-24 14:05:00

AI訓練

2024-08-27 22:08:13

2024-10-16 21:47:15

2024-09-05 12:11:25

大模型抓取列表頁

2025-04-27 07:57:50

大模型工具JSON

2021-09-14 21:29:01

項目環(huán)境變量

2021-04-27 22:15:02

Selenium瀏覽器爬蟲

2023-04-25 11:31:33

智能AI

2024-07-08 08:15:00

2020-11-11 18:25:21

GitHub代碼 jQuery

2022-05-07 10:09:01

開發(fā)Java日志

2024-12-27 00:44:44

MarkdownPrompt大模型

2022-06-28 09:31:44

LinuxmacOS系統(tǒng)
點贊
收藏

51CTO技術棧公眾號