Kom igångKom igång gratis

Dela upp efter tokens

Att dela upp dokument med RecursiveCharacterTextSplitter eller CharacterTextSplitter är praktiskt och kan ge bra resultat i vissa fall, men det finns en nackdel: de delar upp text med tecken som basenhet, inte tokens, som är det modellen faktiskt bearbetar.

I den här övningen delar du upp dokument med en tokenbaserad textdelare, så att du kan kontrollera antalet tokens i varje del och säkerställa att de inte överskrider modellens kontextfönster. Ett PDF-dokument har laddats in som document.

tiktoken och alla nödvändiga klasser har redan importerats åt dig.

Den här övningen är en del av kursen

Retrieval Augmented Generation (RAG) med LangChain

Visa kurs

Övningsinstruktioner

  • Hämta kodningen för gpt-4o-mini från tiktoken så att du kan kontrollera antalet tokens i varje del.
  • Skapa en textdelare som delar upp text baserat på antal tokens med hjälp av GPT-4o-Mini encoding.
  • Dela upp PDF-filen, lagrad i document, i delar med hjälp av token_splitter.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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")
Redigera och kör kod