Rumah >Peranti teknologi >AI >Tutorial Tiktoken: Perpustakaan Python Openai ' untuk Tekenisasi Teks

Tutorial Tiktoken: Perpustakaan Python Openai ' untuk Tekenisasi Teks

Jennifer Aniston
Jennifer Anistonasal
2025-03-05 10:30:11873semak imbas

Tiktoken Tutorial: OpenAI's Python Library for Tokenizing Text

Parti partikel adalah langkah asas dalam menangani tugas pemprosesan bahasa semulajadi (NLP). Ia melibatkan memecahkan teks ke dalam unit yang lebih kecil, yang dipanggil penanda, yang boleh menjadi kata -kata, subword, atau aksara.

Segmentasi perkataan yang cekap adalah penting untuk prestasi model bahasa, menjadikannya langkah penting dalam pelbagai tugas NLP seperti penjanaan teks, terjemahan, dan abstraksi.

Tiktoken adalah tesaurus yang cepat dan cekap yang dibangunkan oleh OpenAI. Ia menyediakan penyelesaian yang kuat untuk menukar teks ke dalam tag dan sebaliknya. Kelajuan dan kecekapannya menjadikannya pilihan yang sangat baik untuk pemaju dan saintis data yang bekerja dengan set data yang besar dan model kompleks.

Panduan ini direka untuk pemaju, saintis data, dan sesiapa yang merancang untuk menggunakan tiktoken dan memerlukan panduan praktikal yang mengandungi contoh.

Asas Openai

Bermula dengan Openai API dan banyak lagi!

mulakan sekarang bermula dengan tiktoken Untuk bermula dengan Tiktoken, kita perlu memasangnya dalam persekitaran Python kami (Tiktoken juga sesuai untuk bahasa pengaturcaraan lain). Ini boleh dilakukan dengan menggunakan arahan berikut: Anda boleh melihat kod untuk versi Python Sumber Open Tiktoken dalam repositori GitHub berikut.

Untuk mengimport perpustakaan, kami menjalankan:

<code>pip install tiktoken</code>

Model pengekodan

Model pengekodan dalam Tiktoken menentukan peraturan untuk memecahkan teks ke dalam tag. Model -model ini sangat penting kerana mereka menentukan bagaimana teks dibahagikan dan dikodkan, yang mempengaruhi kecekapan dan ketepatan tugas pemprosesan bahasa. Model terbuka yang berbeza menggunakan pengekodan yang berbeza.

<code>import tiktoken</code>
Tiktoken menyediakan tiga model pengekodan yang dioptimumkan untuk kes penggunaan yang berbeza:

  • O200K_Base: Pengekodan model GPT-4O-MINI terkini.
  • cl100k_base: Model pengekodan untuk model terbuka yang lebih baru seperti GPT-4 dan GPT-3.5-Turbo.
  • p50k_base: Model codex yang digunakan dalam aplikasi kod.
  • r50k_base: Pengekodan lama untuk versi GPT-3 yang berlainan.

Semua model ini tersedia untuk API OpenAI. Perhatikan bahawa API menyediakan lebih banyak model daripada yang disenaraikan di sini. Nasib baik, Perpustakaan Tiktoken menyediakan cara mudah untuk memeriksa pengekodan mana yang harus digunakan dengan model mana.

Sebagai contoh, jika saya perlu tahu model pengekodan yang digunakan oleh model-embedding-3-blall model, saya boleh menjalankan arahan berikut dan mendapatkan jawapan sebagai output:

<code>pip install tiktoken</code>

kita mendapat sebagai output. Sebelum kita menggunakan Tiktoken secara langsung, saya ingin menyebutkan bahawa OpenAI mempunyai aplikasi web yang tokenized di mana anda dapat melihat bagaimana rentetan yang berbeza ditarik - anda boleh mengaksesnya di sini. Terdapat juga tagger dalam talian pihak ketiga, Tiktokenizer, yang menyokong model bukan Openai.

encode teks sebagai penanda

Untuk menyandikan teks sebagai tag menggunakan tiktoken, anda perlu mendapatkan objek yang dikodkan terlebih dahulu. Terdapat dua cara untuk memulakannya. Pertama, anda boleh melakukan ini menggunakan nama tokenizer:

<code>import tiktoken</code>

Sebagai alternatif, anda boleh menjalankan fungsi encoding_for_model yang disebut sebelum ini untuk mendapatkan encoder untuk model tertentu:

<code>print(tiktoken.encoding_for_model('text-embedding-3-small'))</code>

Sekarang, kita boleh menjalankan kaedah encode objek encode untuk menyandikan rentetan. Sebagai contoh, kita boleh menyandikan rentetan "I Love DataCamp" seperti berikut - Di sini saya menggunakan pengekod CL100K_BASE:

<code>encoding = tiktoken.get_encoding("[标记器名称]")</code>

Kami mendapat [40, 3021, 2956, 34955] sebagai output.

menyahkod tanda ke dalam teks

Untuk menyahkod tanda kembali ke teks, kita boleh menggunakan kaedah .decode () pada objek yang dikodkan.

Let's Decode Tag berikut [40, 4048, 264, 2763, 505, 2956, 34955]:

<code>encoding = tiktoken.encoding_for_model("[模型名称]")</code>

Tanda -tanda ini dikodkan sebagai "Saya banyak belajar dari DataCamp".

kes penggunaan praktikal dan petua

Selain pengekodan dan penyahkodan, saya juga memikirkan dua kes penggunaan lain.

Anggaran dan Pengurusan Kos

Memahami pengiraan tag sebelum menghantar permintaan ke API OpenAI dapat membantu anda menguruskan kos dengan cekap. Oleh kerana pengebilan OpenAI didasarkan pada bilangan tag yang diproses, teks pra-tag membolehkan anda menganggarkan kos penggunaan API. Inilah cara mengira tag dalam teks menggunakan tiktoken:

<code>print(encoding.encode("我爱 DataCamp"))</code>

kita hanya perlu menyemak panjang array untuk melihat berapa banyak tanda yang kita dapat. Dengan mengetahui bilangan tag terlebih dahulu, anda boleh memutuskan sama ada untuk memendekkan teks atau menyesuaikan penggunaan untuk kekal dalam anggaran anda.

Anda boleh membaca lebih lanjut mengenai kaedah ini dalam tutorial ini untuk menganggarkan kos GPT menggunakan Perpustakaan Tiktoken di Python.

Pengesahan panjang input

Apabila menggunakan model OpenAI dari API, anda dibatasi oleh bilangan maksimum input dan output penanda. Melebihi had ini boleh mengakibatkan kesilapan atau output dipotong. Dengan Tiktoken, anda boleh mengesahkan panjang input dan pastikan ia mematuhi had penandaan.

Kesimpulan

Tiktoken adalah sumber terbuka sumber yang menyediakan kelajuan dan kecekapan yang disesuaikan dengan model bahasa terbuka.

belajar cara menggunakan tiktoken untuk mengekod dan menyahkod teks dan pelbagai model pengekodannya dapat meningkatkan kerja anda dengan model bahasa yang besar.

Dapatkan pensijilan AI Top

Buktikan bahawa anda boleh menggunakan AI dengan berkesan dan bertanggungjawab. Dapatkan Bersertifikat, Dapatkan Diupah

Atas ialah kandungan terperinci Tutorial Tiktoken: Perpustakaan Python Openai ' untuk Tekenisasi Teks. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn