ÎncepețiÎncepe gratuit

Împărțirea după tokeni

Împărțirea documentelor cu RecursiveCharacterTextSplitter sau CharacterTextSplitter este convenabilă și poate oferi rezultate bune în anumite situații, însă are un dezavantaj: împarte textul folosind caractere ca unitate de bază, nu tokeni – unitățile procesate efectiv de model.

În acest exercițiu, vei împărți documente folosind un splitter bazat pe tokeni, astfel încât să poți verifica numărul de tokeni din fiecare fragment și să te asiguri că nu depășesc fereastra de context a modelului. Un document PDF a fost încărcat în variabila document.

tiktoken și toate clasele necesare au fost importate pentru tine.

Acest exercițiu face parte din cursul

Retrieval Augmented Generation (RAG) cu LangChain

Vezi cursul

Instrucțiuni pentru exercițiu

  • Obține codificarea pentru gpt-4o-mini din tiktoken, astfel încât să poți verifica numărul de tokeni din fiecare fragment.
  • Creează un splitter de text care să împartă documentul pe baza numărului de tokeni, folosind encoding-ul pentru GPT-4o-Mini.
  • Împarte documentul PDF, stocat în document, în fragmente folosind token_splitter.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Get the encoding for gpt-4o-mini
encoding = ____

# Create a token text splitter
token_splitter = ____(encoding_name=____, chunk_size=100, chunk_overlap=10)

# Split the PDF into chunks
chunks = ____

for i, chunk in enumerate(chunks[:3]):
    print(f"Chunk {i+1}:\nNo. tokens: {len(encoding.encode(chunk.page_content))}\n{chunk}\n")
Editează și rulează codul