토큰별 분할 - 텍스트 스플리터 통합 가이드
토큰별 분할 - 텍스트 스플리터 통합 가이드
언어 모델에는 토큰 제한이 있어요. 토큰 제한을 초과해서는 안 됩니다. 텍스트를 청크로 분할할 때 토큰 수를 세는 것이 좋은 아이디어입니다. 토크나이저는 많습니다. 텍스트의 토큰을 셀 때는 언어 모델에서 사용하는 것과 동일한 토크나이저를 사용해야 합니다.
js-tiktoken
js-tiktoken은
OpenAI가 만든BPE토크나이저의 JavaScript 버전입니다.
TokenTextSplitter로 tiktoken을 사용해 사용된 토큰을 추정할 수 있습니다. OpenAI 모델에 대해 더 정확할 것입니다.
- 텍스트 분할 방법: 전달된 문자로 분할.
- 청크 크기 측정 방법:
tiktoken토크나이저로 측정.
npm install @langchain/textsplitters
pnpm install @langchain/textsplitters
yarn add @langchain/textsplitters
bun add @langchain/textsplitters
import { TokenTextSplitter } from "@langchain/textsplitters";
import { readFileSync } from "fs";
// Example: read a long document
const stateOfTheUnion = readFileSync("state_of_the_union.txt", "utf8");
TokenTextSplitter로 분할한 다음 tiktoken으로 청크를 병합하려면 TokenTextSplitter를 초기화할 때 encodingName(예: cl100k_base)을 전달하세요. 이 메서드의 분할은 tiktoken 토크나이저가 측정한 청크 크기보다 클 수 있습니다.
import { TokenTextSplitter } from "@langchain/textsplitters";
// Example: use cl100k_base encoding
const splitter = new TokenTextSplitter({ encodingName: "cl100k_base", chunkSize: 10, chunkOverlap: 0 });
const texts = splitter.splitText(stateOfTheUnion);
console.log(texts[0]);
Madam Speaker, Madam Vice President, our First Lady and Second Gentleman. Members of Congress and the Cabinet. Justices of the Supreme Court. My fellow Americans.
Last year COVID-19 kept us apart. This year we are finally together again.
Tonight, we meet as Democrats Republicans and Independents. But most importantly as Americans.
With a duty to one another to the American people to the Constitution.
출처: 문서
더 알아보기 (Learn more)
- 이 문서를 MCP로 연결하면 Claude, VSCode 등에서 실시간 답변을 받을 수 있어요.
- GitHub에서 이 페이지 편집하기 또는 이슈 제출하기.