검색
검색
회원가입로그인

크롬 확장앱에서 tiktoken으로 토큰 자르기

dqbd tiktoken으로 하다가 안돼서 js-tiktoken 으로 처리했다. import 를 하기 위해 빌드는 vite로 했다.

content.js

import { getEncoding } from "js-tiktoken";

function numTokensFromString(message, tokenLength) {
  const encoding = getEncoding("cl100k_base");
  const tokens = encoding.encode(message);
  let chunked = [];
  const n = tokenLength;
  const overwrap = 0;
  for (let i = 0; i < tokens.length; i += n - overwrap) {
    const slice = tokens.slice(i, i + n);
    let decoded = encoding.decode(slice);
    decoded = decoded.replace(//g, "");
    chunked.push(decoded);
  }
  return chunked;
}

const chunked = numTokensFromString("Hello, world!", 2);
console.log(chunked);
// ['Hello,', ' world!']

특이할만한 점은 프론트 환경이라서 그런지 encoding.free() 하는 함수가 아예 없다.

조회수 : 58
공유하기
카카오로 공유하기
페이스북 공유하기
트위터로 공유하기
url 복사하기