Začněte nyníZačněte zdarma

Rozdělování podle znaků

Klíčovou součástí implementace Retrieval Augmented Generation (RAG) je rozdělování dokumentů na části (chunky) pro uložení do vektorové databáze.

V LangChainu je k dispozici několik strategií rozdělování – některé jsou jednodušší, jiné složitější. V tomto cvičení implementuješ character text splitter, který rozděluje dokumenty na základě znaků a délku chunku měří počtem znaků.

Měj na paměti, že neexistuje jedna ideální strategie – možná budeš muset vyzkoušet několik variant, než najdeš tu správnou pro svůj případ použití.

Toto cvičení je součástí kurzu

Vývoj LLM aplikací s LangChain

Zobrazit kurz

Pokyny k cvičení

  • Importuj třídu CharacterTextSplitter z langchain_text_splitters.
  • Vytvoř instanci CharacterTextSplitter s parametry separator="\n", chunk_size=24 a chunk_overlap=10.
  • Pomocí metody .split_text() rozděl proměnnou quote a vypiš chunky i jejich délky.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Import the character splitter
from langchain_text_splitters import ____

quote = 'Words are flowing out like endless rain into a paper cup,\nthey slither while they pass,\nthey slip away across the universe.'
chunk_size = 24
chunk_overlap = 10

# Create an instance of the splitter class
splitter = CharacterTextSplitter(
    separator=____,
    chunk_size=____,
    chunk_overlap=____)

# Split the string and print the chunks
docs = splitter.____(quote)
print(docs)
print([len(doc) for doc in docs])
Upravit a spustit kód