Integracja Token Estimator | Botpress Hub

Estymator tokenów

v0.2.0
Utrzymywany przez Simply Great Bots

# Integracja z Tiktoken Estimator

Szacowanie liczby tokenów dla tekstu przy użyciu biblioteki tiktoken, umożliwiając dokładne zliczanie tokenów dla modeli OpenAI .

Funkcje

  • Dokładne zliczanie tokenów: Wykorzystuje oficjalną bibliotekę tiktoken, aby zapewnić precyzyjne szacunki tokenów
  • Obsługa wielu modeli**: Obsługuje różne modele OpenAI (gpt-3.5-turbo, gpt-4 itp.).
  • Limity bezpieczeństwa**: Opcjonalne sprawdzanie limitów bezpieczeństwa, aby zapobiec przekroczeniu limitu tokenów
  • Zero konfiguracji**: Nie wymaga konfiguracji - działa od razu po wyjęciu z pudełka
  • Obsługa błędów**: Łaskawa obsługa błędów z komunikatami opisowymi

Użycie

Szacowanie działania tokenów

Integracja zapewnia pojedynczą akcję: estimateTokens.

Parametry wejściowe:

  • text (wymagane): tekst do oszacowania tokenów
  • model (opcjonalne): model OpenAI , który ma być użyty do tokenizacji (domyślnie "gpt-3.5-turbo").
  • safetyLimit (opcjonalnie): Limit bezpieczeństwa dla szacowania liczby tokenów. Jeśli pozostanie puste, limit nie zostanie zastosowany

Wyjście:

  • tokenCount: Szacowana liczba tokenów w tekście.
  • tokenizerName: Nazwa użytego tokenizera
  • model: Model, na którym oparto tokenizację
  • limitExceeded: Wskazuje, czy szacowana liczba tokenów przekroczyła limit bezpieczeństwa (obecne tylko wtedy, gdy podano safetyLimit).

Przykład użycia

Podstawowe użycie:

Tekst: "Hello, world!"
Model: "gpt-3.5-turbo"

Wynik:
- tokenCount: 4
- tokenizerName: "tiktoken"
- model: "gpt-3.5-turbo"

Z limitem bezpieczeństwa:

Tekst: "To jest dłuższy tekst, który może przekroczyć nasz limit bezpieczeństwa...".
Model: "gpt-3.5-turbo"
SafetyLimit: 10

Wynik:
- tokenCount: 15
- tokenizerName: "tiktoken"
- model: "gpt-3.5-turbo"
- limitExceeded: true

Obsługiwane modele

  • gpt-3.5-turbo
  • gpt-4
  • gpt-4-turbo
  • text-davinci-003
  • text-davinci-002
  • code-davinci-002
  • Oraz inne modele OpenAI obsługiwane przez tiktoken

Zalecane limity bezpieczeństwa

Przy ustalaniu limitów bezpieczeństwa należy wziąć pod uwagę, że rzeczywiste wywołania API będą zawierać dodatkowe tokeny dla podpowiedzi systemowych, historii konwersacji i generowania odpowiedzi. Oto konserwatywne zalecenia:

GPT.5-Turbo (limit 4096 tokenów)

  • Konserwatywne: 2,500 tokenów (pozostawia ~1,600 na podpowiedzi systemowe + odpowiedź)
  • Umiarkowany: 3,000 tokenów (pozostawia ~1,100 na podpowiedzi systemu + odpowiedź)
  • Agresywny: 3 500 tokenów (pozostawia ~600 na podpowiedzi systemowe + odpowiedź)

GPT(limit 8 192 tokenów)

  • Konserwatywny: 5,000 tokenów (pozostawia ~3,200 na podpowiedzi systemu + odpowiedź)
  • Umiarkowany: 6,000 tokenów (pozostawia ~2,200 na podpowiedzi systemu + odpowiedź)
  • Agresywny: 7,000 tokenów (pozostawia ~1,200 na podpowiedzi systemowe + odpowiedź)

GPT Turbo (limit 128 000 tokenów)

  • Konserwatywny: 100 000 tokenów (pozostawia ~28 000 na podpowiedzi systemu + odpowiedź)
  • Umiarkowany: 110 000 tokenów (pozostawia ~18 000 na monity systemu + odpowiedź)
  • Agresywny: 120 000 tokenów (pozostawia ~8 000 na podpowiedzi systemowe + odpowiedź)

Uwaga: Zalecenia te zakładają typowe rozmiary monitów systemowych (200-800 tokenów) i pożądane długości odpowiedzi (500-2000 tokenów). Dostosuj w oparciu o konkretny przypadek użycia.

Obsługa błędów

Integracja obsługuje różne scenariusze błędów:

  • Invalid Input: Zwraca jasne komunikaty o błędach dla brakującego lub nieprawidłowego tekstu.
  • Pusty tekst**: Zwraca 0 tokenów dla pustych ciągów znaków.
  • Nieobsługiwany model**: Zwraca błąd dla modeli nieobsługiwanych przez tiktoken.
  • Błędy tokenizacji**: obsługuje błędy biblioteki tiktoken z wdziękiem
  • Safety Limit Warnings: Rejestruje ostrzeżenia, gdy liczba tokenów przekracza limity bezpieczeństwa.

Korzyści

  • Optymalizacja kosztów: Szacowanie kosztów tokenów przed wykonaniem wywołań API
  • Ograniczenie stawek**: Zarządzanie budżetami tokenów i zapobieganie przekroczeniu limitów bezpieczeństwa
  • Logika przepływu pracy**: Włącz logikę warunkową w oparciu o liczbę tokenów i progi bezpieczeństwa
  • Przejrzystość**: Zapewnienie wglądu we wzorce użycia tokenów
  • Aktywne monitorowanie**: Ustaw limity bezpieczeństwa, aby wcześnie wychwycić potencjalne przekroczenia liczby tokenów