Spaces:
No application file
No application file
| class CharacterTextSplitter: | |
| def __init__( | |
| self, | |
| chunk_size: int = 1000, | |
| chunk_overlap: int = 200, | |
| ): | |
| assert chunk_size > chunk_overlap, ( | |
| "Chunk size must be greater than chunk overlap" | |
| ) | |
| self.chunk_size = chunk_size | |
| self.chunk_overlap = chunk_overlap | |
| def split(self, text: str) -> list[str]: | |
| chunks = [] | |
| for i in range(0, len(text), self.chunk_size - self.chunk_overlap): | |
| chunks.append(text[i : i + self.chunk_size]) | |
| return chunks | |
| def split_texts(self, texts: list[str]) -> list[str]: | |
| chunks = [] | |
| for text in texts: | |
| chunks.extend(self.split(text)) | |
| return chunks | |