OpenAI
ಈ ಪುಟವನ್ನು ಯಂತ್ರದ ಮೂಲಕ ಅನುವಾದಿಸಲಾಗಿದೆ. ಮೂಲ ಇಂಗ್ಲಿಷ್ ಲೇಖನವನ್ನು ನೋಡಿ.

ಟೋಕನ್‌ಗಳು ಎಂದರೇನು ಮತ್ತು ಅವನ್ನು ಹೇಗೆ ಎಣಿಸಬೇಕು?

ನವೀಕರಿಸಲಾಗಿದೆ: 8 days ago

ಟೋಕನ್‌ಗಳು ಎಂದರೇನು?

ಟೋಕನ್‌ಗಳು OpenAI ಮಾಡೆಲ್‌ಗಳು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುವ ಪಠ್ಯದ ಮೂಲ ಘಟಕಗಳಾಗಿವೆ. ಭಾಷೆ ಮತ್ತು ಸಂದರ್ಭವನ್ನು ಅವಲಂಬಿಸಿ, ಅವು ಒಂದೇ ಅಕ್ಷರದಷ್ಟು ಚಿಕ್ಕದಾಗಿರಬಹುದು ಅಥವಾ ಪೂರ್ಣ ಪದದಷ್ಟು ಉದ್ದವಾಗಿರಬಹುದು. ಸ್ಪೇಸ್‌ಗಳು, ವಿರಾಮಚಿಹ್ನೆಗಳು ಮತ್ತು ಅಪೂರ್ಣ ಪದಗಳು ಎಲ್ಲವೂ ಟೋಕನ್ ಎಣಿಕೆಗೆ ಕೊಡುಗೆ ನೀಡುತ್ತವೆ. ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ರಚಿಸುವ ಮೊದಲು API ನಿಮ್ಮ ಪಠ್ಯವನ್ನು ಆಂತರಿಕವಾಗಿ ವಿಭಜಿಸುವ ವಿಧಾನ ಇದು.

ಇಂಗ್ಲಿಷ್‌ಗಾಗಿ ಉಪಯುಕ್ತ ಅಂದಾಜು ನಿಯಮಗಳು:

  • 1 ಟೋಕನ್ ≈ 4 ಅಕ್ಷರಗಳು

  • 1 ಟೋಕನ್ ≈ ಪದದ ¾

  • 100 ಟೋಕನ್‌ಗಳು ≈ 75 ಪದಗಳು

  • 1–2 ವಾಕ್ಯಗಳು ≈ 30 ಟೋಕನ್‌ಗಳು

  • 1 ಪ್ಯಾರಾಗ್ರಾಫ್ ≈ 100 ಟೋಕನ್‌ಗಳು

  • ~1,500 ಪದಗಳು ≈ 2,048 ಟೋಕನ್‌ಗಳು

ಟೋಕನೈಜೇಶನ್ ಮಾಡೆಲ್ ಮತ್ತು ಎನ್ಕೋಡಿಂಗ್ ಪ್ರಕಾರ ಬದಲಾಗುತ್ತದೆ. ನಿಮ್ಮ ಗುರಿ ಮಾಡೆಲ್‌ಗಾಗಿ ನಿಖರ ಎಣಿಕೆಯನ್ನು ಪಡೆಯಲು Tokenizer ಟೂಲ್ ಅಥವಾ tiktoken.encoding_for_model(model) ಅನ್ನು ಬಳಸಿ.

ಉದಾಹರಣೆಗಳು

ಅಂದಾಜು ಟೋಕನ್ ಎಣಿಕೆಗಳೊಂದಿಗೆ ಕೆಲವು ನೈಜ ಜಗತ್ತಿನ ಪಠ್ಯ ಮಾದರಿಗಳು ಇಲ್ಲಿವೆ:

  • Wayne Gretzky ಅವರ ಉಲ್ಲೇಖ “ನೀವು ತೆಗೆದುಕೊಳ್ಳದ ಶಾಟ್‌ಗಳಲ್ಲಿ 100% ಅನ್ನು ತಪ್ಪಿಸುತ್ತೀರಿ” = 11 ಟೋಕನ್‌ಗಳು

  • OpenAI Charter = 476 ಟೋಕನ್‌ಗಳು

  • US Declaration of Independence = 1,695 ಟೋಕನ್‌ಗಳು

ಟೋಕನ್ ಎಣಿಕೆಗಳನ್ನು ಹೇಗೆ ಲೆಕ್ಕಹಾಕಲಾಗುತ್ತದೆ

ನೀವು API ಗೆ ಪಠ್ಯವನ್ನು ಕಳುಹಿಸಿದಾಗ:

  1. ಪಠ್ಯವನ್ನು ಟೋಕನ್‌ಗಳಾಗಿ ವಿಭಜಿಸಲಾಗುತ್ತದೆ.

  2. ಮಾಡೆಲ್ ಈ ಟೋಕನ್‌ಗಳನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸುತ್ತದೆ.

  3. ಪ್ರತಿಕ್ರಿಯೆಯನ್ನು ಟೋಕನ್‌ಗಳ ಅನುಕ್ರಮವಾಗಿ ರಚಿಸಲಾಗುತ್ತದೆ, ನಂತರ ಅದನ್ನು ಮತ್ತೆ ಪಠ್ಯಕ್ಕೆ ಪರಿವರ್ತಿಸಲಾಗುತ್ತದೆ.

ಟೋಕನ್ ಬಳಕೆಯನ್ನು ಹಲವು ವರ್ಗಗಳಲ್ಲಿ ಟ್ರ್ಯಾಕ್ ಮಾಡಲಾಗುತ್ತದೆ:

  • ಇನ್‌ಪುಟ್ ಟೋಕನ್‌ಗಳು – ನಿಮ್ಮ ವಿನಂತಿಯಲ್ಲಿನ ಟೋಕನ್‌ಗಳು.

  • ಔಟ್‌ಪುಟ್ ಟೋಕನ್‌ಗಳು – ಪ್ರತಿಕ್ರಿಯೆಯಲ್ಲಿ ರಚಿಸಲಾದ ಟೋಕನ್‌ಗಳು.

  • ಕ್ಯಾಶ್ ಮಾಡಿದ ಟೋಕನ್‌ಗಳು – ಸಂಭಾಷಣೆ ಇತಿಹಾಸದಲ್ಲಿ ಮರುಬಳಕೆ ಮಾಡಿದ ಟೋಕನ್‌ಗಳು (ಸಾಮಾನ್ಯವಾಗಿ ಕಡಿಮೆ ದರದಲ್ಲಿ ಬಿಲ್ ಮಾಡಲಾಗುತ್ತದೆ).

  • ರೀಜನಿಂಗ್ ಟೋಕನ್‌ಗಳು – ಕೆಲವು ಸುಧಾರಿತ ಮಾಡೆಲ್‌ಗಳಲ್ಲಿ, ಅಂತಿಮ ಔಟ್‌ಪುಟ್ ಉತ್ಪಾದಿಸುವ ಮೊದಲು ಹೆಚ್ಚುವರಿ “ಆಲೋಚನಾ ಹಂತಗಳು” ಆಂತರಿಕವಾಗಿ ಸೇರಿರುತ್ತವೆ.

ಈ ಎಣಿಕೆಗಳು ನಿಮ್ಮ API ಪ್ರತಿಕ್ರಿಯೆಯ ಮೆಟಾಡೇಟಾದಲ್ಲಿ ಕಾಣಿಸುತ್ತವೆ ಮತ್ತು ಬಿಲ್ಲಿಂಗ್ ಹಾಗೂ ಬಳಕೆ ಟ್ರ್ಯಾಕಿಂಗ್‌ಗಾಗಿ ಬಳಸಲಾಗುತ್ತವೆ.

ಟೋಕನೈಜೇಶನ್ ಅನ್ನು ಇನ್ನಷ್ಟು ಅನ್ವೇಷಿಸಲು, ನೀವು ನಮ್ಮ ಸಂವಾದಾತ್ಮಕ Tokenizer ಟೂಲ್ ಅನ್ನು ಬಳಸಬಹುದು; ಇದು ಟೋಕನ್‌ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಲೆಕ್ಕಹಾಕಲು ಮತ್ತು ಪಠ್ಯವನ್ನು ಟೋಕನ್‌ಗಳಾಗಿ ಹೇಗೆ ವಿಭಜಿಸಲಾಗಿದೆ ಎಂಬುದನ್ನು ನೋಡಲು ನಿಮಗೆ ಅವಕಾಶ ನೀಡುತ್ತದೆ.

ಪರ್ಯಾಯವಾಗಿ, ನೀವು ಪ್ರೋಗ್ರಾಮ್ಯಾಟಿಕ್ ರೀತಿಯಲ್ಲಿ ಪಠ್ಯವನ್ನು ಟೋಕನೈಸ್ ಮಾಡಲು ಬಯಸಿದರೆ, OpenAI ಮಾಡೆಲ್‌ಗಳಿಗಾಗಿ ವಿಶೇಷವಾಗಿ ಬಳಸುವ ವೇಗದ BPE ಟೋಕನೈಜರ್ ಆಗಿ Tiktoken ಅನ್ನು ಬಳಸಿ.

ಟೋಕನ್ ಮಿತಿಗಳು

ಪ್ರತಿ ಮಾಡೆಲ್ ಗರಿಷ್ಠ ಸಂಯೋಜಿತ ಟೋಕನ್ ಮಿತಿಯನ್ನು (ಇನ್‌ಪುಟ್ + ಔಟ್‌ಪುಟ್) ಹೊಂದಿರುತ್ತದೆ. ಪ್ರಸ್ತುತ ಹೆಚ್ಚಿನ ಸಾಮರ್ಥ್ಯದ ಮಾಡೆಲ್‌ಗಳು ಸಂದರ್ಭದಲ್ಲಿನ ಲಕ್ಷಾಂತರ ಟೋಕನ್‌ಗಳವರೆಗೆ ಬೆಂಬಲಿಸುತ್ತವೆ, ಆದರೆ ಪ್ರಾಯೋಗಿಕ ಮಿತಿಗಳು ಮಾಡೆಲ್ ಆವೃತ್ತಿ ಮತ್ತು ನಿಮ್ಮ ಬಳಕೆ ಶ್ರೇಣಿಯನ್ನು ಅವಲಂಬಿಸಿ ಬದಲಾಗಬಹುದು.

ನೀವು ಮಿತಿಯನ್ನು ಮೀರಿದರೆ, ನೀವು ಹೀಗೆ ಮಾಡಬಹುದು:

  • ಪ್ರಾಂಪ್ಟ್‌ಗಳನ್ನು ಚಿಕ್ಕದಾಗಿಸಿ ಅಥವಾ ಮರುಪದಗೊಳಿಸಿ.

  • ದೊಡ್ಡ ಪಠ್ಯವನ್ನು ಚಿಕ್ಕ ಭಾಗಗಳಾಗಿ ವಿಭಜಿಸಿ.

  • ಕಳುಹಿಸುವ ಮೊದಲು ಇನ್‌ಪುಟ್‌ಗಳನ್ನು ಸಾರಾಂಶಗೊಳಿಸಿ ಅಥವಾ ಪೂರ್ವ-ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಿ.

ಟೋಕನ್ ಬೆಲೆ ನಿಗದಿ

API ಬಳಕೆಗೆ ಪ್ರತಿ ಟೋಕನ್‌ಗೆ ಬೆಲೆ ವಿಧಿಸಲಾಗುತ್ತದೆ; ಇದು ಮಾಡೆಲ್ ಮತ್ತು ಟೋಕನ್‌ಗಳು ಇನ್‌ಪುಟ್, ಔಟ್‌ಪುಟ್ ಅಥವಾ ಕ್ಯಾಶ್ ಮಾಡಿದವುಗಳೇ ಎಂಬುದರ ಪ್ರಕಾರ ಬದಲಾಗುತ್ತದೆ. ಪ್ರಸ್ತುತ ದರಗಳಿಗಾಗಿ OpenAI ನ ಬೆಲೆ ಪುಟ ನೋಡಿ. ಕೆಲವು ರೀಜನಿಂಗ್ ಮಾಡೆಲ್‌ಗಳು ಆಂತರಿಕವಾಗಿ ಹೆಚ್ಚು ಟೋಕನ್‌ಗಳನ್ನು ಬಳಸಬಹುದು, ಆದರೆ ಪೂರ್ಣಗೊಂಡ ಪ್ರತಿ ಕಾರ್ಯಕ್ಕೆ ಬೇಕಾಗುವ ಟೋಕನ್‌ಗಳ ಸಂಖ್ಯೆಯನ್ನು ಕಡಿಮೆ ಮಾಡುವ ಮೂಲಕ ದಕ್ಷತೆಯನ್ನು ಸುಧಾರಿಸುವ ಗುರಿ ಹೊಂದಿರುತ್ತವೆ.

ಟೋಕನ್‌ಗಳನ್ನು ಅನ್ವೇಷಿಸುವುದು

API ಕಾರ್ಪಸ್ ಡೇಟಾದಲ್ಲಿನ ಸಂದರ್ಭಕ್ಕೆ ಅನುಗುಣವಾಗಿ ಪದಗಳನ್ನು ಪರಿಗಣಿಸುತ್ತದೆ. ಮಾಡೆಲ್‌ಗಳು ಪ್ರಾಂಪ್ಟ್ ಅನ್ನು ತೆಗೆದುಕೊಂಡು, ಇನ್‌ಪುಟ್ ಅನ್ನು ಟೋಕನ್‌ಗಳ ಪಟ್ಟಿಯಾಗಿ ಪರಿವರ್ತಿಸಿ, ಪ್ರಾಂಪ್ಟ್ ಅನ್ನು ಪ್ರಕ್ರಿಯೆಗೊಳಿಸಿ, ಊಹಿಸಲಾದ ಟೋಕನ್‌ಗಳನ್ನು ಪ್ರತಿಕ್ರಿಯೆಯಲ್ಲಿ ನಾವು ನೋಡುವ ಪದಗಳಾಗಿ ಮರಳಿ ಪರಿವರ್ತಿಸುತ್ತವೆ.

ನಮಗೆ ಒಂದೇ ರೀತಿಯ ಎರಡು ಪದಗಳಂತೆ ಕಾಣುವುದನ್ನು, ಅವು ಪಠ್ಯದೊಳಗೆ ಹೇಗೆ ರಚಿಸಲ್ಪಟ್ಟಿವೆ ಎಂಬುದರ ಆಧಾರದ ಮೇಲೆ ಬೇರೆ ಬೇರೆ ಟೋಕನ್‌ಗಳಾಗಿ ರಚಿಸಬಹುದು. ಪಠ್ಯದೊಳಗಿನ ಸಂದರ್ಭದ ಆಧಾರದ ಮೇಲೆ ‘red’ ಪದಕ್ಕೆ API ಟೋಕನ್ ಮೌಲ್ಯಗಳನ್ನು ಹೇಗೆ ರಚಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ಪರಿಗಣಿಸಿ:

Sentence split into color-coded tokens with Text selected over Token IDs
Token ID output as a list of integers with the Token IDs tab selected

ಮೇಲಿನ ಮೊದಲ ಉದಾಹರಣೆಯಲ್ಲಿ ‘ red’ ಗಾಗಿ ಟೋಕನ್ “2266” ಕೊನೆಯಲ್ಲಿ ಸ್ಪೇಸ್ ಅನ್ನು ಒಳಗೊಂಡಿದೆ (ಗಮನಿಸಿ, ಇವು ಪ್ರದರ್ಶನ ಉದ್ದೇಶಗಳಿಗಾಗಿ ಉದಾಹರಣೆಯ ಟೋಕನ್ ID ಗಳು).

Sentence split into color-coded token blocks: My favorite color is Red.
Tokenizer output with Token IDs selected and a list of numeric token IDs

‘ Red’ ಗಾಗಿ ಟೋಕನ್ “2296” (ಮುಂಭಾಗದ ಸ್ಪೇಸ್ ಜೊತೆಗೆ ಮತ್ತು ದೊಡ್ಡ ಅಕ್ಷರದಿಂದ ಆರಂಭವಾಗುವುದು) ಸಣ್ಣ ಅಕ್ಷರದಲ್ಲಿರುವ ‘ red’ ಗಾಗಿ ಟೋಕನ್ “2266” ಕ್ಕಿಂತ ಭಿನ್ನವಾಗಿದೆ.

Tokenizer example splitting “Red is my favorite color.” into color-coded tokens
Tokenizer output with Token IDs selected and a list of token ID numbers

‘Red’ ಅನ್ನು ವಾಕ್ಯದ ಆರಂಭದಲ್ಲಿ ಬಳಸಿದಾಗ, ರಚಿಸಲಾದ ಟೋಕನ್ ಮುಂಭಾಗದ ಸ್ಪೇಸ್ ಅನ್ನು ಒಳಗೊಂಡಿರುವುದಿಲ್ಲ. ಟೋಕನ್ “7738” ಪದದ ಹಿಂದಿನ ಎರಡು ಉದಾಹರಣೆಗಳಿಗಿಂತ ಭಿನ್ನವಾಗಿದೆ.

ಗಮನಿಸಿದ ಅಂಶಗಳು:

ಒಂದು ಟೋಕನ್ ಎಷ್ಟು ಹೆಚ್ಚು ಸಂಭವನೀಯ/ಆಗಾಗ್ಗೆ ಬಳಕೆಯಾಗುವುದೋ, ಅದಕ್ಕೆ ನಿಯೋಜಿಸಲಾದ ಟೋಕನ್ ಸಂಖ್ಯೆ ಅಷ್ಟೇ ಕಡಿಮೆಯಾಗಿರುತ್ತದೆ:

  • ಪೂರ್ಣವಿರಾಮಕ್ಕಾಗಿ ರಚಿಸಲಾದ ಟೋಕನ್ ಎಲ್ಲಾ 3 ವಾಕ್ಯಗಳಲ್ಲೂ ಒಂದೇ ಆಗಿದೆ (“13”). ಇದಕ್ಕೆ ಕಾರಣ, ಸಂದರ್ಭದ ದೃಷ್ಟಿಯಿಂದ, ಪೂರ್ಣವಿರಾಮವನ್ನು ಕಾರ್ಪಸ್ ಡೇಟಾದಾದ್ಯಂತ ಬಹುತೇಕ ಒಂದೇ ರೀತಿಯಲ್ಲಿ ಬಳಸಲಾಗುತ್ತದೆ.

  • ವಾಕ್ಯದೊಳಗಿನ ಸ್ಥಾನವನ್ನು ಅವಲಂಬಿಸಿ ‘red’ ಗಾಗಿ ರಚಿಸಲಾದ ಟೋಕನ್ ಬದಲಾಗುತ್ತದೆ:

    • ವಾಕ್ಯದ ಮಧ್ಯದಲ್ಲಿ ಸಣ್ಣ ಅಕ್ಷರ: ‘ red’ - (ಟೋಕನ್: “2266”)

    • ವಾಕ್ಯದ ಮಧ್ಯದಲ್ಲಿ ದೊಡ್ಡ ಅಕ್ಷರ: ‘ Red’ - (ಟೋಕನ್: “2297”)

    • ವಾಕ್ಯದ ಆರಂಭದಲ್ಲಿ ದೊಡ್ಡ ಅಕ್ಷರ: ‘Red’ - (ಟೋಕನ್: “7738”)

ಈ ಲೇಖನವು ಉಪಯುಕ್ತವಾಗಿತ್ತೇ?