From 99aea5226eabd024cdfa766737574e3958528230 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Mon, 5 Jan 2026 16:35:14 -0800 Subject: [PATCH 01/30] Update input factory to match other factories --- .../graphrag_cache/cache_factory.py | 2 +- packages/graphrag/graphrag/config/enums.py | 4 +- .../config/models/graph_rag_config.py | 2 +- .../graphrag/config/models/input_config.py | 8 +- packages/graphrag/graphrag/index/input/csv.py | 4 +- .../graphrag/graphrag/index/input/factory.py | 26 ------ .../graphrag/index/input/input_reader.py | 40 ++++++--- .../index/input/input_reader_factory.py | 82 +++++++++++++++++++ .../graphrag/graphrag/index/input/json.py | 4 +- .../graphrag/graphrag/index/input/text.py | 2 +- .../graphrag/graphrag/index/input/util.py | 24 +++--- .../index/workflows/load_input_documents.py | 9 +- .../index/workflows/load_update_documents.py | 7 +- .../graphrag/prompt_tune/loader/input.py | 7 +- tests/unit/indexing/input/test_csv_loader.py | 33 +++----- tests/unit/indexing/input/test_json_loader.py | 37 +++------ tests/unit/indexing/input/test_txt_loader.py | 23 ++---- tests/verbs/test_create_community_reports.py | 9 +- 18 files changed, 176 insertions(+), 147 deletions(-) delete mode 100644 packages/graphrag/graphrag/index/input/factory.py create mode 100644 packages/graphrag/graphrag/index/input/input_reader_factory.py diff --git a/packages/graphrag-cache/graphrag_cache/cache_factory.py b/packages/graphrag-cache/graphrag_cache/cache_factory.py index f8bbd65dcc..6e4bc32813 100644 --- a/packages/graphrag-cache/graphrag_cache/cache_factory.py +++ b/packages/graphrag-cache/graphrag_cache/cache_factory.py @@ -26,7 +26,7 @@ def register_cache( cache_initializer: Callable[..., Cache], scope: ServiceScope = "transient", ) -> None: - """Register a custom storage implementation. + """Register a custom cache implementation. Args ---- diff --git a/packages/graphrag/graphrag/config/enums.py b/packages/graphrag/graphrag/config/enums.py index 4835763afc..a5b6b74ab2 100644 --- a/packages/graphrag/graphrag/config/enums.py +++ b/packages/graphrag/graphrag/config/enums.py @@ -5,7 +5,7 @@ from __future__ import annotations -from enum import Enum +from enum import Enum, StrEnum class CacheType(str, Enum): @@ -27,7 +27,7 @@ def __repr__(self): return f'"{self.value}"' -class InputFileType(str, Enum): +class InputFileType(StrEnum): """The input file type for the pipeline.""" csv = "csv" diff --git a/packages/graphrag/graphrag/config/models/graph_rag_config.py b/packages/graphrag/graphrag/config/models/graph_rag_config.py index 162fe12567..9a1ac89b17 100644 --- a/packages/graphrag/graphrag/config/models/graph_rag_config.py +++ b/packages/graphrag/graphrag/config/models/graph_rag_config.py @@ -113,7 +113,7 @@ def _validate_input_pattern(self) -> None: if self.input.file_type == defs.InputFileType.text: self.input.file_pattern = ".*\\.txt$" else: - self.input.file_pattern = f".*\\.{self.input.file_type.value}$" + self.input.file_pattern = f".*\\.{self.input.file_type}$" def _validate_input_base_dir(self) -> None: """Validate the input base directory.""" diff --git a/packages/graphrag/graphrag/config/models/input_config.py b/packages/graphrag/graphrag/config/models/input_config.py index c3c30f6302..e3ebb9cd4c 100644 --- a/packages/graphrag/graphrag/config/models/input_config.py +++ b/packages/graphrag/graphrag/config/models/input_config.py @@ -4,23 +4,25 @@ """Parameterization settings for the default configuration.""" from graphrag_storage import StorageConfig -from pydantic import BaseModel, Field +from pydantic import BaseModel, ConfigDict, Field import graphrag.config.defaults as defs from graphrag.config.defaults import graphrag_config_defaults -from graphrag.config.enums import InputFileType class InputConfig(BaseModel): """The default configuration section for Input.""" + model_config = ConfigDict(extra="allow") + """Allow extra fields to support custom cache implementations.""" + storage: StorageConfig = Field( description="The storage configuration to use for reading input documents.", default=StorageConfig( base_dir=graphrag_config_defaults.input.storage.base_dir, ), ) - file_type: InputFileType = Field( + file_type: str = Field( description="The input file type to use.", default=graphrag_config_defaults.input.file_type, ) diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag/graphrag/index/input/csv.py index 810ffdd03c..39a2937e47 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag/graphrag/index/input/csv.py @@ -28,8 +28,8 @@ async def read_file(self, path: str) -> pd.DataFrame: - output - DataFrame with a row for each document in the file. """ buffer = BytesIO(await self._storage.get(path, as_bytes=True)) - data = pd.read_csv(buffer, encoding=self._config.encoding) - data = process_data_columns(data, self._config, path) + data = pd.read_csv(buffer, encoding=self._encoding) + data = process_data_columns(data, path, self._text_column, self._title_column) creation_date = await self._storage.get_creation_date(path) data["creation_date"] = data.apply(lambda _: creation_date, axis=1) return data diff --git a/packages/graphrag/graphrag/index/input/factory.py b/packages/graphrag/graphrag/index/input/factory.py deleted file mode 100644 index bc3b8112c8..0000000000 --- a/packages/graphrag/graphrag/index/input/factory.py +++ /dev/null @@ -1,26 +0,0 @@ -# Copyright (c) 2024 Microsoft Corporation. -# Licensed under the MIT License - -"""A module containing 'InputReaderFactory' model.""" - -import logging - -from graphrag_common.factory import Factory - -from graphrag.config.enums import InputFileType -from graphrag.index.input.csv import CSVFileReader -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.json import JSONFileReader -from graphrag.index.input.text import TextFileReader - -logger = logging.getLogger(__name__) - - -class InputReaderFactory(Factory[InputReader]): - """Factory for creating Input Reader instances.""" - - -input_reader_factory = InputReaderFactory() -input_reader_factory.register(InputFileType.text, TextFileReader) -input_reader_factory.register(InputFileType.csv, CSVFileReader) -input_reader_factory.register(InputFileType.json, JSONFileReader) diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag/graphrag/index/input/input_reader.py index 18dc713dfd..cf0f397bce 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag/graphrag/index/input/input_reader.py @@ -15,25 +15,39 @@ if TYPE_CHECKING: from graphrag_storage import Storage - from graphrag.config.models.input_config import InputConfig - logger = logging.getLogger(__name__) class InputReader(metaclass=ABCMeta): """Provide a cache interface for the pipeline.""" - def __init__(self, storage: Storage, config: InputConfig, **kwargs): + def __init__( + self, + storage: Storage, + file_type: str, + file_pattern: str, + encoding: str = "utf-8", + text_column: str | None = None, + title_column: str | None = None, + metadata: list[str] | None = None, + **kwargs, + ): self._storage = storage - self._config = config + self._file_type = file_type + self._file_pattern = file_pattern + self._encoding = encoding + self._text_column = text_column + self._title_column = title_column + self._metadata = metadata async def read_files(self) -> pd.DataFrame: """Load files from storage and apply a loader function based on file type. Process metadata on the results if needed.""" - files = list(self._storage.find(re.compile(self._config.file_pattern))) + files = list(self._storage.find(re.compile(self._file_pattern))) if len(files) == 0: - msg = f"No {self._config.file_type} files found in {self._config.storage.base_dir}" - raise ValueError(msg) + msg = f"No {self._file_type} files found in storage" # TODO: use a storage __str__ to define it per impl + logger.warning(msg) + files = [] files_loaded = [] @@ -47,19 +61,19 @@ async def read_files(self) -> pd.DataFrame: logger.info( "Found %d %s files, loading %d", len(files), - self._config.file_type, + self._file_type, len(files_loaded), ) result = pd.concat(files_loaded) total_files_log = ( - f"Total number of unfiltered {self._config.file_type} rows: {len(result)}" + f"Total number of unfiltered {self._file_type} rows: {len(result)}" ) logger.info(total_files_log) # Convert metadata columns to strings and collapse them into a JSON object - if self._config.metadata: - if all(col in result.columns for col in self._config.metadata): + if self._metadata: + if all(col in result.columns for col in self._metadata): # Collapse the metadata columns into a single JSON object column - result["metadata"] = result[self._config.metadata].apply( + result["metadata"] = result[self._metadata].apply( lambda row: row.to_dict(), axis=1 ) else: @@ -68,7 +82,7 @@ async def read_files(self) -> pd.DataFrame: ) raise ValueError(value_error_msg) - result[self._config.metadata] = result[self._config.metadata].astype(str) + result[self._metadata] = result[self._metadata].astype(str) return result diff --git a/packages/graphrag/graphrag/index/input/input_reader_factory.py b/packages/graphrag/graphrag/index/input/input_reader_factory.py new file mode 100644 index 0000000000..a548ad479e --- /dev/null +++ b/packages/graphrag/graphrag/index/input/input_reader_factory.py @@ -0,0 +1,82 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A module containing 'InputReaderFactory' model.""" + +import logging +from collections.abc import Callable + +from graphrag_common.factory import Factory +from graphrag_common.factory.factory import ServiceScope +from graphrag_storage.storage import Storage + +from graphrag.config.enums import InputFileType +from graphrag.config.models.input_config import InputConfig +from graphrag.index.input.input_reader import InputReader + +logger = logging.getLogger(__name__) + + +class InputReaderFactory(Factory[InputReader]): + """Factory for creating Input Reader instances.""" + + +input_reader_factory = InputReaderFactory() + + +def register_input_reader( + input_reader_type: str, + input_reader_initializer: Callable[..., InputReader], + scope: ServiceScope = "transient", +) -> None: + """Register a custom input reader implementation. + + Args + ---- + - input_reader_type: str + The input reader id to register. + - input_reader_initializer: Callable[..., InputReader] + The input reader initializer to register. + """ + input_reader_factory.register(input_reader_type, input_reader_initializer, scope) + + +def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: + """Create an input reader implementation based on the given configuration. + + Args + ---- + - config: InputConfig + The input reader configuration to use. + - storage: Storage | None + The storage implementation to use for reading the files. + + Returns + ------- + InputReader + The created input reader implementation. + """ + config_model = config.model_dump() + input_strategy = config.file_type + + if input_strategy not in input_reader_factory: + match input_strategy: + case InputFileType.csv: + from graphrag.index.input.csv import CSVFileReader + + register_input_reader(InputFileType.csv, CSVFileReader) + case InputFileType.text: + from graphrag.index.input.text import TextFileReader + + register_input_reader(InputFileType.text, TextFileReader) + case InputFileType.json: + from graphrag.index.input.json import JSONFileReader + + register_input_reader(InputFileType.json, JSONFileReader) + case _: + msg = f"InputConfig.file_type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." + raise ValueError(msg) + + config_model["storage"] = storage + + return input_reader_factory.create(input_strategy, init_args=config_model) diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag/graphrag/index/input/json.py index e9e1a7ab04..84bd01daf6 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag/graphrag/index/input/json.py @@ -27,12 +27,12 @@ async def read_file(self, path: str) -> pd.DataFrame: ------- - output - DataFrame with a row for each document in the file. """ - text = await self._storage.get(path, encoding=self._config.encoding) + text = await self._storage.get(path, encoding=self._encoding) as_json = json.loads(text) # json file could just be a single object, or an array of objects rows = as_json if isinstance(as_json, list) else [as_json] data = pd.DataFrame(rows) - data = process_data_columns(data, self._config, path) + data = process_data_columns(data, path, self._text_column, self._title_column) creation_date = await self._storage.get_creation_date(path) data["creation_date"] = data.apply(lambda _: creation_date, axis=1) diff --git a/packages/graphrag/graphrag/index/input/text.py b/packages/graphrag/graphrag/index/input/text.py index f9e2d7779e..83193ce767 100644 --- a/packages/graphrag/graphrag/index/input/text.py +++ b/packages/graphrag/graphrag/index/input/text.py @@ -27,7 +27,7 @@ async def read_file(self, path: str) -> pd.DataFrame: ------- - output - DataFrame with a row for each document in the file. """ - text = await self._storage.get(path, encoding=self._config.encoding) + text = await self._storage.get(path, encoding=self._encoding) new_item = {"text": text} new_item["id"] = gen_sha512_hash(new_item, new_item.keys()) new_item["title"] = str(Path(path).name) diff --git a/packages/graphrag/graphrag/index/input/util.py b/packages/graphrag/graphrag/index/input/util.py index 2780909167..e663f07b22 100644 --- a/packages/graphrag/graphrag/index/input/util.py +++ b/packages/graphrag/graphrag/index/input/util.py @@ -7,40 +7,40 @@ import pandas as pd -from graphrag.config.models.input_config import InputConfig from graphrag.index.utils.hashing import gen_sha512_hash logger = logging.getLogger(__name__) def process_data_columns( - documents: pd.DataFrame, config: InputConfig, path: str + documents: pd.DataFrame, + path: str, + text_column: str | None, + title_column: str | None, ) -> pd.DataFrame: """Process configured data columns of a DataFrame.""" if "id" not in documents.columns: documents["id"] = documents.apply( lambda x: gen_sha512_hash(x, x.keys()), axis=1 ) - if config.text_column is not None and "text" not in documents.columns: - if config.text_column not in documents.columns: + if text_column is not None and "text" not in documents.columns: + if text_column not in documents.columns: logger.warning( "text_column %s not found in csv file %s", - config.text_column, + text_column, path, ) else: - documents["text"] = documents.apply(lambda x: x[config.text_column], axis=1) - if config.title_column is not None: - if config.title_column not in documents.columns: + documents["text"] = documents.apply(lambda x: x[text_column], axis=1) + if title_column is not None: + if title_column not in documents.columns: logger.warning( "title_column %s not found in csv file %s", - config.title_column, + title_column, path, ) else: - documents["title"] = documents.apply( - lambda x: x[config.title_column], axis=1 - ) + documents["title"] = documents.apply(lambda x: x[title_column], axis=1) else: documents["title"] = documents.apply(lambda _: path, axis=1) return documents diff --git a/packages/graphrag/graphrag/index/workflows/load_input_documents.py b/packages/graphrag/graphrag/index/workflows/load_input_documents.py index 228ca4d0c4..0a1b6fad14 100644 --- a/packages/graphrag/graphrag/index/workflows/load_input_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_input_documents.py @@ -8,8 +8,10 @@ import pandas as pd from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.factory import InputReaderFactory from graphrag.index.input.input_reader import InputReader +from graphrag.index.input.input_reader_factory import ( + create_input_reader, +) from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.utils.storage import write_table_to_storage @@ -22,10 +24,7 @@ async def run_workflow( context: PipelineRunContext, ) -> WorkflowFunctionOutput: """Load and parse input documents into a standard format.""" - input_reader = InputReaderFactory().create( - config.input.file_type, - {"storage": context.input_storage, "config": config.input}, - ) + input_reader = create_input_reader(config.input, context.input_storage) output = await load_input_documents(input_reader) diff --git a/packages/graphrag/graphrag/index/workflows/load_update_documents.py b/packages/graphrag/graphrag/index/workflows/load_update_documents.py index e68471eae7..ab29b2a98a 100644 --- a/packages/graphrag/graphrag/index/workflows/load_update_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_update_documents.py @@ -9,8 +9,8 @@ from graphrag_storage import Storage from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.factory import InputReaderFactory from graphrag.index.input.input_reader import InputReader +from graphrag.index.input.input_reader_factory import create_input_reader from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.index.update.incremental_index import get_delta_docs @@ -24,10 +24,7 @@ async def run_workflow( context: PipelineRunContext, ) -> WorkflowFunctionOutput: """Load and parse update-only input documents into a standard format.""" - input_reader = InputReaderFactory().create( - config.input.file_type, - {"storage": context.input_storage, "config": config.input}, - ) + input_reader = create_input_reader(config.input, context.input_storage) output = await load_update_documents( input_reader, context.previous_storage, diff --git a/packages/graphrag/graphrag/prompt_tune/loader/input.py b/packages/graphrag/graphrag/prompt_tune/loader/input.py index 556f1dd615..c17ea918e5 100644 --- a/packages/graphrag/graphrag/prompt_tune/loader/input.py +++ b/packages/graphrag/graphrag/prompt_tune/loader/input.py @@ -13,7 +13,7 @@ from graphrag.callbacks.noop_workflow_callbacks import NoopWorkflowCallbacks from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.factory import InputReaderFactory +from graphrag.index.input.input_reader_factory import create_input_reader from graphrag.index.operations.embed_text.run_embed_text import ( run_embed_text, ) @@ -64,10 +64,7 @@ async def load_docs_in_chunks( ) tokenizer = get_tokenizer(embeddings_llm_settings) input_storage = create_storage(config.input.storage) - input_reader = InputReaderFactory().create( - config.input.file_type, - {"storage": input_storage, "config": config.input}, - ) + input_reader = create_input_reader(config.input, input_storage) dataset = await input_reader.read_files() chunk_config = config.chunks chunks_df = create_base_text_units( diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index b0dc645e1b..938ce4ca3a 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -3,7 +3,9 @@ from graphrag.config.enums import InputFileType from graphrag.config.models.input_config import InputConfig -from graphrag.index.input.factory import InputReaderFactory +from graphrag.index.input.input_reader_factory import ( + create_input_reader, +) from graphrag_storage import StorageConfig, create_storage @@ -16,11 +18,8 @@ async def test_csv_loader_one_file(): file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (2, 4) assert documents["title"].iloc[0] == "input.csv" @@ -35,11 +34,8 @@ async def test_csv_loader_one_file_with_title(): title_column="title", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (2, 4) assert documents["title"].iloc[0] == "Hello" @@ -55,12 +51,8 @@ async def test_csv_loader_one_file_with_metadata(): metadata=["title"], ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) - print(documents) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (2, 5) assert documents["metadata"][0] == {"title": "Hello"} @@ -74,9 +66,6 @@ async def test_csv_loader_multiple_files(): file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (4, 4) diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index 3959096b1c..d5cb00445a 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -3,7 +3,7 @@ from graphrag.config.enums import InputFileType from graphrag.config.models.input_config import InputConfig -from graphrag.index.input.factory import InputReaderFactory +from graphrag.index.input.input_reader_factory import create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -16,11 +16,8 @@ async def test_json_loader_one_file_one_object(): file_pattern=".*\\.json$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (1, 4) assert documents["title"].iloc[0] == "input.json" @@ -34,11 +31,8 @@ async def test_json_loader_one_file_multiple_objects(): file_pattern=".*\\.json$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() print(documents) assert documents.shape == (3, 4) assert documents["title"].iloc[0] == "input.json" @@ -54,11 +48,8 @@ async def test_json_loader_one_file_with_title(): title_column="title", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (1, 4) assert documents["title"].iloc[0] == "Hello" @@ -74,11 +65,8 @@ async def test_json_loader_one_file_with_metadata(): metadata=["title"], ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (1, 5) assert documents["metadata"][0] == {"title": "Hello"} @@ -92,9 +80,6 @@ async def test_json_loader_multiple_files(): file_pattern=".*\\.json$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (4, 4) diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index 57ded82507..0395741de5 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -3,7 +3,7 @@ from graphrag.config.enums import InputFileType from graphrag.config.models.input_config import InputConfig -from graphrag.index.input.factory import InputReaderFactory +from graphrag.index.input.input_reader_factory import create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -16,11 +16,8 @@ async def test_txt_loader_one_file(): file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (1, 4) assert documents["title"].iloc[0] == "input.txt" @@ -35,11 +32,8 @@ async def test_txt_loader_one_file_with_metadata(): metadata=["title"], ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (1, 5) # unlike csv, we cannot set the title to anything other than the filename assert documents["metadata"][0] == {"title": "input.txt"} @@ -54,9 +48,6 @@ async def test_txt_loader_multiple_files(): file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) - documents = ( - await InputReaderFactory() - .create(config.file_type, {"storage": storage, "config": config}) - .read_files() - ) + reader = create_input_reader(config, storage) + documents = await reader.read_files() assert documents.shape == (2, 4) diff --git a/tests/verbs/test_create_community_reports.py b/tests/verbs/test_create_community_reports.py index 561f54108b..d479120ce2 100644 --- a/tests/verbs/test_create_community_reports.py +++ b/tests/verbs/test_create_community_reports.py @@ -4,15 +4,14 @@ from graphrag.config.models.graph_rag_config import GraphRagConfig from graphrag.data_model.schemas import COMMUNITY_REPORTS_FINAL_COLUMNS -from graphrag.index.workflows.create_community_reports import ( - run_workflow, -) -from graphrag.utils.storage import load_table_from_storage - from graphrag.index.operations.summarize_communities.community_reports_extractor import ( CommunityReportResponse, FindingModel, ) +from graphrag.index.workflows.create_community_reports import ( + run_workflow, +) +from graphrag.utils.storage import load_table_from_storage from .util import ( DEFAULT_MODEL_CONFIG, From efaaa1f1d019ff0a525391b104c60a574545ea96 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Mon, 5 Jan 2026 17:49:39 -0800 Subject: [PATCH 02/30] Move input config alongside input readers --- docs/examples_notebooks/api_overview.ipynb | 5 ++- docs/examples_notebooks/input_documents.ipynb | 5 ++- packages/graphrag/graphrag/cli/index.py | 6 ++-- packages/graphrag/graphrag/config/defaults.py | 4 +-- packages/graphrag/graphrag/config/enums.py | 34 +------------------ .../config/models/graph_rag_config.py | 4 +-- .../models => index/input}/input_config.py | 4 +-- .../graphrag/index/input/input_file_type.py | 21 ++++++++++++ .../index/input/input_reader_factory.py | 16 ++++----- tests/unit/config/utils.py | 2 +- tests/unit/indexing/input/test_csv_loader.py | 12 +++---- tests/unit/indexing/input/test_json_loader.py | 14 ++++---- tests/unit/indexing/input/test_txt_loader.py | 10 +++--- unified-search-app/app/app_logic.py | 3 +- 14 files changed, 64 insertions(+), 76 deletions(-) rename packages/graphrag/graphrag/{config/models => index/input}/input_config.py (93%) create mode 100644 packages/graphrag/graphrag/index/input/input_file_type.py diff --git a/docs/examples_notebooks/api_overview.ipynb b/docs/examples_notebooks/api_overview.ipynb index abcd7832fc..2a0c0f15de 100644 --- a/docs/examples_notebooks/api_overview.ipynb +++ b/docs/examples_notebooks/api_overview.ipynb @@ -28,11 +28,10 @@ "from pathlib import Path\n", "from pprint import pprint\n", "\n", + "import graphrag.api as api\n", "import pandas as pd\n", "from graphrag.config.load_config import load_config\n", - "from graphrag.index.typing.pipeline_run_result import PipelineRunResult\n", - "\n", - "import graphrag.api as api" + "from graphrag.index.typing.pipeline_run_result import PipelineRunResult" ] }, { diff --git a/docs/examples_notebooks/input_documents.ipynb b/docs/examples_notebooks/input_documents.ipynb index 505c0fe1f3..5657770eaf 100644 --- a/docs/examples_notebooks/input_documents.ipynb +++ b/docs/examples_notebooks/input_documents.ipynb @@ -30,11 +30,10 @@ "from pathlib import Path\n", "from pprint import pprint\n", "\n", + "import graphrag.api as api\n", "import pandas as pd\n", "from graphrag.config.load_config import load_config\n", - "from graphrag.index.typing.pipeline_run_result import PipelineRunResult\n", - "\n", - "import graphrag.api as api" + "from graphrag.index.typing.pipeline_run_result import PipelineRunResult" ] }, { diff --git a/packages/graphrag/graphrag/cli/index.py b/packages/graphrag/graphrag/cli/index.py index 60b724ea98..94a40cde48 100644 --- a/packages/graphrag/graphrag/cli/index.py +++ b/packages/graphrag/graphrag/cli/index.py @@ -9,9 +9,11 @@ import warnings from pathlib import Path +from graphrag_cache.cache_type import CacheType + import graphrag.api as api from graphrag.callbacks.console_workflow_callbacks import ConsoleWorkflowCallbacks -from graphrag.config.enums import CacheType, IndexingMethod +from graphrag.config.enums import IndexingMethod from graphrag.config.load_config import load_config from graphrag.index.validate_config import validate_config_names from graphrag.utils.cli import redact @@ -102,7 +104,7 @@ def _run_index( ) if not cache: - config.cache.type = CacheType.none + config.cache.type = CacheType.Noop if not skip_validation: validate_config_names(config) diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index e330c82449..2edf1f9044 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -15,12 +15,12 @@ AsyncType, AuthType, ChunkStrategyType, - InputFileType, ModelType, NounPhraseExtractorType, ReportingType, VectorStoreType, ) +from graphrag.index.input.input_file_type import InputFileType from graphrag.index.operations.build_noun_graph.np_extractors.stop_words import ( EN_STOP_WORDS, ) @@ -241,7 +241,7 @@ class InputDefaults: """Default values for input.""" storage: InputStorageDefaults = field(default_factory=InputStorageDefaults) - file_type: ClassVar[InputFileType] = InputFileType.text + file_type: ClassVar[InputFileType] = InputFileType.Text encoding: str = "utf-8" file_pattern: str = "" text_column: str = "text" diff --git a/packages/graphrag/graphrag/config/enums.py b/packages/graphrag/graphrag/config/enums.py index a5b6b74ab2..b615e5475b 100644 --- a/packages/graphrag/graphrag/config/enums.py +++ b/packages/graphrag/graphrag/config/enums.py @@ -5,7 +5,7 @@ from __future__ import annotations -from enum import Enum, StrEnum +from enum import Enum class CacheType(str, Enum): @@ -27,38 +27,6 @@ def __repr__(self): return f'"{self.value}"' -class InputFileType(StrEnum): - """The input file type for the pipeline.""" - - csv = "csv" - """The CSV input type.""" - text = "text" - """The text input type.""" - json = "json" - """The JSON input type.""" - - def __repr__(self): - """Get a string representation.""" - return f'"{self.value}"' - - -class StorageType(str, Enum): - """The output type for the pipeline.""" - - file = "file" - """The file output type.""" - memory = "memory" - """The memory output type.""" - blob = "blob" - """The blob output type.""" - cosmosdb = "cosmosdb" - """The cosmosdb output type""" - - def __repr__(self): - """Get a string representation.""" - return f'"{self.value}"' - - class VectorStoreType(str, Enum): """The supported vector store types.""" diff --git a/packages/graphrag/graphrag/config/models/graph_rag_config.py b/packages/graphrag/graphrag/config/models/graph_rag_config.py index 9a1ac89b17..10a2f41d5c 100644 --- a/packages/graphrag/graphrag/config/models/graph_rag_config.py +++ b/packages/graphrag/graphrag/config/models/graph_rag_config.py @@ -24,7 +24,6 @@ from graphrag.config.models.extract_graph_config import ExtractGraphConfig from graphrag.config.models.extract_graph_nlp_config import ExtractGraphNLPConfig from graphrag.config.models.global_search_config import GlobalSearchConfig -from graphrag.config.models.input_config import InputConfig from graphrag.config.models.language_model_config import LanguageModelConfig from graphrag.config.models.local_search_config import LocalSearchConfig from graphrag.config.models.prune_graph_config import PruneGraphConfig @@ -34,6 +33,7 @@ SummarizeDescriptionsConfig, ) from graphrag.config.models.vector_store_config import VectorStoreConfig +from graphrag.index.input.input_config import InputConfig from graphrag.language_model.providers.litellm.services.rate_limiter.rate_limiter_factory import ( RateLimiterFactory, ) @@ -110,7 +110,7 @@ def _validate_rate_limiter_services(self) -> None: def _validate_input_pattern(self) -> None: """Validate the input file pattern based on the specified type.""" if len(self.input.file_pattern) == 0: - if self.input.file_type == defs.InputFileType.text: + if self.input.file_type == defs.InputFileType.Text: self.input.file_pattern = ".*\\.txt$" else: self.input.file_pattern = f".*\\.{self.input.file_type}$" diff --git a/packages/graphrag/graphrag/config/models/input_config.py b/packages/graphrag/graphrag/index/input/input_config.py similarity index 93% rename from packages/graphrag/graphrag/config/models/input_config.py rename to packages/graphrag/graphrag/index/input/input_config.py index e3ebb9cd4c..7a86075fc9 100644 --- a/packages/graphrag/graphrag/config/models/input_config.py +++ b/packages/graphrag/graphrag/index/input/input_config.py @@ -14,7 +14,7 @@ class InputConfig(BaseModel): """The default configuration section for Input.""" model_config = ConfigDict(extra="allow") - """Allow extra fields to support custom cache implementations.""" + """Allow extra fields to support custom reader implementations.""" storage: StorageConfig = Field( description="The storage configuration to use for reading input documents.", @@ -34,7 +34,7 @@ class InputConfig(BaseModel): description="The input file pattern to use.", default=graphrag_config_defaults.input.file_pattern, ) - text_column: str = Field( + text_column: str | None = Field( description="The input text column to use.", default=graphrag_config_defaults.input.text_column, ) diff --git a/packages/graphrag/graphrag/index/input/input_file_type.py b/packages/graphrag/graphrag/index/input/input_file_type.py new file mode 100644 index 0000000000..3996eee36e --- /dev/null +++ b/packages/graphrag/graphrag/index/input/input_file_type.py @@ -0,0 +1,21 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A module containing input file type enum.""" + +from enum import StrEnum + + +class InputFileType(StrEnum): + """The input file type for the pipeline.""" + + Csv = "csv" + """The CSV input type.""" + Text = "text" + """The text input type.""" + Json = "json" + """The JSON input type.""" + + def __repr__(self): + """Get a string representation.""" + return f'"{self.value}"' diff --git a/packages/graphrag/graphrag/index/input/input_reader_factory.py b/packages/graphrag/graphrag/index/input/input_reader_factory.py index a548ad479e..e0b391d7eb 100644 --- a/packages/graphrag/graphrag/index/input/input_reader_factory.py +++ b/packages/graphrag/graphrag/index/input/input_reader_factory.py @@ -10,8 +10,8 @@ from graphrag_common.factory.factory import ServiceScope from graphrag_storage.storage import Storage -from graphrag.config.enums import InputFileType -from graphrag.config.models.input_config import InputConfig +from graphrag.index.input.input_config import InputConfig +from graphrag.index.input.input_file_type import InputFileType from graphrag.index.input.input_reader import InputReader logger = logging.getLogger(__name__) @@ -61,18 +61,18 @@ def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: if input_strategy not in input_reader_factory: match input_strategy: - case InputFileType.csv: + case InputFileType.Csv: from graphrag.index.input.csv import CSVFileReader - register_input_reader(InputFileType.csv, CSVFileReader) - case InputFileType.text: + register_input_reader(InputFileType.Csv, CSVFileReader) + case InputFileType.Text: from graphrag.index.input.text import TextFileReader - register_input_reader(InputFileType.text, TextFileReader) - case InputFileType.json: + register_input_reader(InputFileType.Text, TextFileReader) + case InputFileType.Json: from graphrag.index.input.json import JSONFileReader - register_input_reader(InputFileType.json, JSONFileReader) + register_input_reader(InputFileType.Json, JSONFileReader) case _: msg = f"InputConfig.file_type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." raise ValueError(msg) diff --git a/tests/unit/config/utils.py b/tests/unit/config/utils.py index 1315907e59..3f50527541 100644 --- a/tests/unit/config/utils.py +++ b/tests/unit/config/utils.py @@ -18,7 +18,6 @@ ) from graphrag.config.models.global_search_config import GlobalSearchConfig from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.config.models.input_config import InputConfig from graphrag.config.models.language_model_config import LanguageModelConfig from graphrag.config.models.local_search_config import LocalSearchConfig from graphrag.config.models.prune_graph_config import PruneGraphConfig @@ -28,6 +27,7 @@ SummarizeDescriptionsConfig, ) from graphrag.config.models.vector_store_config import VectorStoreConfig +from graphrag.index.input.input_config import InputConfig from graphrag_cache import CacheConfig from graphrag_storage import StorageConfig from pydantic import BaseModel diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index 938ce4ca3a..f4c1c3cf94 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -1,8 +1,8 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.config.enums import InputFileType -from graphrag.config.models.input_config import InputConfig +from graphrag.index.input.input_config import InputConfig +from graphrag.index.input.input_file_type import InputFileType from graphrag.index.input.input_reader_factory import ( create_input_reader, ) @@ -14,7 +14,7 @@ async def test_csv_loader_one_file(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-csv", ), - file_type=InputFileType.csv, + file_type=InputFileType.Csv, file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) @@ -29,7 +29,7 @@ async def test_csv_loader_one_file_with_title(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-csv", ), - file_type=InputFileType.csv, + file_type=InputFileType.Csv, file_pattern=".*\\.csv$", title_column="title", ) @@ -45,7 +45,7 @@ async def test_csv_loader_one_file_with_metadata(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-csv", ), - file_type=InputFileType.csv, + file_type=InputFileType.Csv, file_pattern=".*\\.csv$", title_column="title", metadata=["title"], @@ -62,7 +62,7 @@ async def test_csv_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-csvs", ), - file_type=InputFileType.csv, + file_type=InputFileType.Csv, file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index d5cb00445a..d604ca9cc8 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -1,8 +1,8 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.config.enums import InputFileType -from graphrag.config.models.input_config import InputConfig +from graphrag.index.input.input_config import InputConfig +from graphrag.index.input.input_file_type import InputFileType from graphrag.index.input.input_reader_factory import create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -12,7 +12,7 @@ async def test_json_loader_one_file_one_object(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-one-object", ), - file_type=InputFileType.json, + file_type=InputFileType.Json, file_pattern=".*\\.json$", ) storage = create_storage(config.storage) @@ -27,7 +27,7 @@ async def test_json_loader_one_file_multiple_objects(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-multiple-objects", ), - file_type=InputFileType.json, + file_type=InputFileType.Json, file_pattern=".*\\.json$", ) storage = create_storage(config.storage) @@ -43,7 +43,7 @@ async def test_json_loader_one_file_with_title(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-one-object", ), - file_type=InputFileType.json, + file_type=InputFileType.Json, file_pattern=".*\\.json$", title_column="title", ) @@ -59,7 +59,7 @@ async def test_json_loader_one_file_with_metadata(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-one-object", ), - file_type=InputFileType.json, + file_type=InputFileType.Json, file_pattern=".*\\.json$", title_column="title", metadata=["title"], @@ -76,7 +76,7 @@ async def test_json_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-jsons", ), - file_type=InputFileType.json, + file_type=InputFileType.Json, file_pattern=".*\\.json$", ) storage = create_storage(config.storage) diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index 0395741de5..67d0764656 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -1,8 +1,8 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.config.enums import InputFileType -from graphrag.config.models.input_config import InputConfig +from graphrag.index.input.input_config import InputConfig +from graphrag.index.input.input_file_type import InputFileType from graphrag.index.input.input_reader_factory import create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -12,7 +12,7 @@ async def test_txt_loader_one_file(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-txt", ), - file_type=InputFileType.text, + file_type=InputFileType.Text, file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) @@ -27,7 +27,7 @@ async def test_txt_loader_one_file_with_metadata(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-txt", ), - file_type=InputFileType.text, + file_type=InputFileType.Text, file_pattern=".*\\.txt$", metadata=["title"], ) @@ -44,7 +44,7 @@ async def test_txt_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-txts", ), - file_type=InputFileType.text, + file_type=InputFileType.Text, file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) diff --git a/unified-search-app/app/app_logic.py b/unified-search-app/app/app_logic.py index a573b9daa5..dc64e0e77c 100644 --- a/unified-search-app/app/app_logic.py +++ b/unified-search-app/app/app_logic.py @@ -7,6 +7,7 @@ import logging from typing import TYPE_CHECKING +import graphrag.api as api import streamlit as st from knowledge_loader.data_sources.loader import ( create_datasource, @@ -17,8 +18,6 @@ from state.session_variables import SessionVariables from ui.search import display_search_result -import graphrag.api as api - if TYPE_CHECKING: import pandas as pd From 2b893840c0f0c144f2287c93fb07ee08520c8400 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 10:11:38 -0800 Subject: [PATCH 03/30] Move file pattern logic into InputReader --- packages/graphrag/graphrag/config/defaults.py | 2 +- .../graphrag/config/models/graph_rag_config.py | 9 --------- .../graphrag/graphrag/index/input/input_config.py | 2 +- .../graphrag/graphrag/index/input/input_reader.py | 13 +++++++++++-- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index 2edf1f9044..8aa22642c3 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -243,7 +243,7 @@ class InputDefaults: storage: InputStorageDefaults = field(default_factory=InputStorageDefaults) file_type: ClassVar[InputFileType] = InputFileType.Text encoding: str = "utf-8" - file_pattern: str = "" + file_pattern: None = None text_column: str = "text" title_column: None = None metadata: None = None diff --git a/packages/graphrag/graphrag/config/models/graph_rag_config.py b/packages/graphrag/graphrag/config/models/graph_rag_config.py index 10a2f41d5c..6656d3abe1 100644 --- a/packages/graphrag/graphrag/config/models/graph_rag_config.py +++ b/packages/graphrag/graphrag/config/models/graph_rag_config.py @@ -107,14 +107,6 @@ def _validate_rate_limiter_services(self) -> None: ) """The input configuration.""" - def _validate_input_pattern(self) -> None: - """Validate the input file pattern based on the specified type.""" - if len(self.input.file_pattern) == 0: - if self.input.file_type == defs.InputFileType.Text: - self.input.file_pattern = ".*\\.txt$" - else: - self.input.file_pattern = f".*\\.{self.input.file_type}$" - def _validate_input_base_dir(self) -> None: """Validate the input base directory.""" if self.input.storage.type == StorageType.File: @@ -312,7 +304,6 @@ def get_language_model_config(self, model_id: str) -> LanguageModelConfig: @model_validator(mode="after") def _validate_model(self): """Validate the model configuration.""" - self._validate_input_pattern() self._validate_input_base_dir() self._validate_reporting_base_dir() self._validate_output_base_dir() diff --git a/packages/graphrag/graphrag/index/input/input_config.py b/packages/graphrag/graphrag/index/input/input_config.py index 7a86075fc9..5e8fb3d9b2 100644 --- a/packages/graphrag/graphrag/index/input/input_config.py +++ b/packages/graphrag/graphrag/index/input/input_config.py @@ -30,7 +30,7 @@ class InputConfig(BaseModel): description="The input file encoding to use.", default=defs.graphrag_config_defaults.input.encoding, ) - file_pattern: str = Field( + file_pattern: str | None = Field( description="The input file pattern to use.", default=graphrag_config_defaults.input.file_pattern, ) diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag/graphrag/index/input/input_reader.py index cf0f397bce..5f4ecde4ba 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag/graphrag/index/input/input_reader.py @@ -25,8 +25,8 @@ def __init__( self, storage: Storage, file_type: str, - file_pattern: str, encoding: str = "utf-8", + file_pattern: str | None = None, text_column: str | None = None, title_column: str | None = None, metadata: list[str] | None = None, @@ -34,12 +34,21 @@ def __init__( ): self._storage = storage self._file_type = file_type - self._file_pattern = file_pattern self._encoding = encoding self._text_column = text_column self._title_column = title_column self._metadata = metadata + # built-in readers set a default pattern if none is provided + # this is usually just the file type itself, e.g., the file extension + pattern = ( + file_pattern if file_pattern is not None else f".*\\.{self._file_type}$" + ) + if file_pattern is None and self._file_type == "text": + pattern = ".*\\.txt$" + + self._file_pattern = pattern + async def read_files(self) -> pd.DataFrame: """Load files from storage and apply a loader function based on file type. Process metadata on the results if needed.""" files = list(self._storage.find(re.compile(self._file_pattern))) From c73263d02ca6e94777894ce060b871fe0d33ce09 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 10:13:36 -0800 Subject: [PATCH 04/30] Set encoding default --- packages/graphrag/graphrag/config/defaults.py | 2 +- packages/graphrag/graphrag/index/input/input_config.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index 8aa22642c3..336af0dad1 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -242,7 +242,7 @@ class InputDefaults: storage: InputStorageDefaults = field(default_factory=InputStorageDefaults) file_type: ClassVar[InputFileType] = InputFileType.Text - encoding: str = "utf-8" + encoding: str | None = None file_pattern: None = None text_column: str = "text" title_column: None = None diff --git a/packages/graphrag/graphrag/index/input/input_config.py b/packages/graphrag/graphrag/index/input/input_config.py index 5e8fb3d9b2..51b8890a9d 100644 --- a/packages/graphrag/graphrag/index/input/input_config.py +++ b/packages/graphrag/graphrag/index/input/input_config.py @@ -26,7 +26,7 @@ class InputConfig(BaseModel): description="The input file type to use.", default=graphrag_config_defaults.input.file_type, ) - encoding: str = Field( + encoding: str | None = Field( description="The input file encoding to use.", default=defs.graphrag_config_defaults.input.encoding, ) From b2656128284226a563d339e541a4880c7c0a02d4 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 10:51:37 -0800 Subject: [PATCH 05/30] Clean up optional column configs --- packages/graphrag/graphrag/config/defaults.py | 3 +- packages/graphrag/graphrag/index/input/csv.py | 4 ++- .../graphrag/index/input/input_config.py | 10 ++++-- .../graphrag/index/input/input_reader.py | 7 ++-- .../graphrag/graphrag/index/input/json.py | 4 ++- .../graphrag/graphrag/index/input/util.py | 34 ++++++++----------- 6 files changed, 33 insertions(+), 29 deletions(-) diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index 336af0dad1..a5a4828440 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -244,8 +244,9 @@ class InputDefaults: file_type: ClassVar[InputFileType] = InputFileType.Text encoding: str | None = None file_pattern: None = None - text_column: str = "text" + id_column: None = None title_column: None = None + text_column: None = None metadata: None = None diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag/graphrag/index/input/csv.py index 39a2937e47..f4403faa30 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag/graphrag/index/input/csv.py @@ -29,7 +29,9 @@ async def read_file(self, path: str) -> pd.DataFrame: """ buffer = BytesIO(await self._storage.get(path, as_bytes=True)) data = pd.read_csv(buffer, encoding=self._encoding) - data = process_data_columns(data, path, self._text_column, self._title_column) + data = process_data_columns( + data, path, self._id_column, self._title_column, self._text_column + ) creation_date = await self._storage.get_creation_date(path) data["creation_date"] = data.apply(lambda _: creation_date, axis=1) return data diff --git a/packages/graphrag/graphrag/index/input/input_config.py b/packages/graphrag/graphrag/index/input/input_config.py index 51b8890a9d..72b26ccb46 100644 --- a/packages/graphrag/graphrag/index/input/input_config.py +++ b/packages/graphrag/graphrag/index/input/input_config.py @@ -34,14 +34,18 @@ class InputConfig(BaseModel): description="The input file pattern to use.", default=graphrag_config_defaults.input.file_pattern, ) - text_column: str | None = Field( - description="The input text column to use.", - default=graphrag_config_defaults.input.text_column, + id_column: str | None = Field( + description="The input ID column to use.", + default=graphrag_config_defaults.input.id_column, ) title_column: str | None = Field( description="The input title column to use.", default=graphrag_config_defaults.input.title_column, ) + text_column: str | None = Field( + description="The input text column to use.", + default=graphrag_config_defaults.input.text_column, + ) metadata: list[str] | None = Field( description="The document attribute columns to use.", default=graphrag_config_defaults.input.metadata, diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag/graphrag/index/input/input_reader.py index 5f4ecde4ba..7a70bc25a1 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag/graphrag/index/input/input_reader.py @@ -27,16 +27,18 @@ def __init__( file_type: str, encoding: str = "utf-8", file_pattern: str | None = None, - text_column: str | None = None, + id_column: str | None = None, title_column: str | None = None, + text_column: str = "text", metadata: list[str] | None = None, **kwargs, ): self._storage = storage self._file_type = file_type self._encoding = encoding - self._text_column = text_column + self._id_column = id_column self._title_column = title_column + self._text_column = text_column self._metadata = metadata # built-in readers set a default pattern if none is provided @@ -52,7 +54,6 @@ def __init__( async def read_files(self) -> pd.DataFrame: """Load files from storage and apply a loader function based on file type. Process metadata on the results if needed.""" files = list(self._storage.find(re.compile(self._file_pattern))) - if len(files) == 0: msg = f"No {self._file_type} files found in storage" # TODO: use a storage __str__ to define it per impl logger.warning(msg) diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag/graphrag/index/input/json.py index 84bd01daf6..ebabcba627 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag/graphrag/index/input/json.py @@ -32,7 +32,9 @@ async def read_file(self, path: str) -> pd.DataFrame: # json file could just be a single object, or an array of objects rows = as_json if isinstance(as_json, list) else [as_json] data = pd.DataFrame(rows) - data = process_data_columns(data, path, self._text_column, self._title_column) + data = process_data_columns( + data, path, self._id_column, self._title_column, self._text_column + ) creation_date = await self._storage.get_creation_date(path) data["creation_date"] = data.apply(lambda _: creation_date, axis=1) diff --git a/packages/graphrag/graphrag/index/input/util.py b/packages/graphrag/graphrag/index/input/util.py index e663f07b22..868ce10e72 100644 --- a/packages/graphrag/graphrag/index/input/util.py +++ b/packages/graphrag/graphrag/index/input/util.py @@ -15,32 +15,26 @@ def process_data_columns( documents: pd.DataFrame, path: str, - text_column: str | None, - title_column: str | None, + id_column: str | None = None, + title_column: str | None = None, + text_column: str = "text", ) -> pd.DataFrame: """Process configured data columns of a DataFrame.""" - if "id" not in documents.columns: + # id is optional - generate from harvest from df or hash from text + if id_column is not None: + documents["id"] = documents.apply(lambda x: x[id_column], axis=1) + else: documents["id"] = documents.apply( lambda x: gen_sha512_hash(x, x.keys()), axis=1 ) - if text_column is not None and "text" not in documents.columns: - if text_column not in documents.columns: - logger.warning( - "text_column %s not found in csv file %s", - text_column, - path, - ) - else: - documents["text"] = documents.apply(lambda x: x[text_column], axis=1) + + # title is optional - harvest from df or use filename if title_column is not None: - if title_column not in documents.columns: - logger.warning( - "title_column %s not found in csv file %s", - title_column, - path, - ) - else: - documents["title"] = documents.apply(lambda x: x[title_column], axis=1) + documents["title"] = documents.apply(lambda x: x[title_column], axis=1) else: documents["title"] = documents.apply(lambda _: path, axis=1) + + # text column is required - harvest from df + documents["text"] = documents.apply(lambda x: x[text_column], axis=1) + return documents From f066080ef0291145f0648925f014129ce7ac831b Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 13:03:04 -0800 Subject: [PATCH 06/30] Combine structured data extraction --- packages/graphrag/graphrag/index/input/csv.py | 12 +--- .../graphrag/graphrag/index/input/json.py | 13 +--- .../index/input/structured_file_reader.py | 59 +++++++++++++++++++ 3 files changed, 65 insertions(+), 19 deletions(-) create mode 100644 packages/graphrag/graphrag/index/input/structured_file_reader.py diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag/graphrag/index/input/csv.py index f4403faa30..77501f81e0 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag/graphrag/index/input/csv.py @@ -8,13 +8,12 @@ import pandas as pd -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.util import process_data_columns +from graphrag.index.input.structured_file_reader import StructuredFileReader logger = logging.getLogger(__name__) -class CSVFileReader(InputReader): +class CSVFileReader(StructuredFileReader): """Reader implementation for csv files.""" async def read_file(self, path: str) -> pd.DataFrame: @@ -29,9 +28,4 @@ async def read_file(self, path: str) -> pd.DataFrame: """ buffer = BytesIO(await self._storage.get(path, as_bytes=True)) data = pd.read_csv(buffer, encoding=self._encoding) - data = process_data_columns( - data, path, self._id_column, self._title_column, self._text_column - ) - creation_date = await self._storage.get_creation_date(path) - data["creation_date"] = data.apply(lambda _: creation_date, axis=1) - return data + return await self.process_data_columns(data, path) diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag/graphrag/index/input/json.py index ebabcba627..564d6d9ed9 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag/graphrag/index/input/json.py @@ -8,13 +8,12 @@ import pandas as pd -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.util import process_data_columns +from graphrag.index.input.structured_file_reader import StructuredFileReader logger = logging.getLogger(__name__) -class JSONFileReader(InputReader): +class JSONFileReader(StructuredFileReader): """Reader implementation for json files.""" async def read_file(self, path: str) -> pd.DataFrame: @@ -32,10 +31,4 @@ async def read_file(self, path: str) -> pd.DataFrame: # json file could just be a single object, or an array of objects rows = as_json if isinstance(as_json, list) else [as_json] data = pd.DataFrame(rows) - data = process_data_columns( - data, path, self._id_column, self._title_column, self._text_column - ) - creation_date = await self._storage.get_creation_date(path) - data["creation_date"] = data.apply(lambda _: creation_date, axis=1) - - return data + return await self.process_data_columns(data, path) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py new file mode 100644 index 0000000000..e8c80020a4 --- /dev/null +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -0,0 +1,59 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A module containing 'CSVFileReader' model.""" + +import logging + +import pandas as pd + +from graphrag.index.input.input_reader import InputReader +from graphrag.index.utils.hashing import gen_sha512_hash + +logger = logging.getLogger(__name__) + + +class StructuredFileReader(InputReader): + """Base reader implementation for structured files such as csv and json.""" + + def __init__( + self, + id_column: str | None = None, + title_column: str | None = None, + text_column: str = "text", + **kwargs, + ): + super().__init__(**kwargs) + self._id_column = id_column + self._title_column = title_column + self._text_column = text_column + + async def process_data_columns( + self, + documents: pd.DataFrame, + path: str, + ) -> pd.DataFrame: + """Process configured data columns of a DataFrame.""" + # id is optional - generate from harvest from df or hash from text + if self._id_column is not None: + documents["id"] = documents.apply(lambda x: x[self._id_column], axis=1) + else: + documents["id"] = documents.apply( + lambda x: gen_sha512_hash(x, x.keys()), axis=1 + ) + + # title is optional - harvest from df or use filename + if self._title_column is not None: + documents["title"] = documents.apply( + lambda x: x[self._title_column], axis=1 + ) + else: + documents["title"] = documents.apply(lambda _: path, axis=1) + + # text column is required - harvest from df + documents["text"] = documents.apply(lambda x: x[self._text_column], axis=1) + + creation_date = await self._storage.get_creation_date(path) + documents["creation_date"] = documents.apply(lambda _: creation_date, axis=1) + + return documents From 2b83d661f9a60627186d7196df96c2145b3f7f55 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 14:18:57 -0800 Subject: [PATCH 07/30] Remove pandas from input loading --- packages/graphrag/graphrag/index/input/csv.py | 14 ++--- .../graphrag/index/input/input_reader.py | 51 +++++++++---------- .../graphrag/graphrag/index/input/json.py | 8 ++- .../index/input/structured_file_reader.py | 49 +++++++++--------- .../graphrag/graphrag/index/input/text.py | 17 ++++--- .../graphrag/index/input/text_document.py | 23 +++++++++ .../index/workflows/load_input_documents.py | 2 +- .../index/workflows/load_update_documents.py | 2 +- .../graphrag/prompt_tune/loader/input.py | 2 +- tests/unit/indexing/input/test_csv_loader.py | 15 +++--- tests/unit/indexing/input/test_json_loader.py | 20 ++++---- tests/unit/indexing/input/test_txt_loader.py | 11 ++-- 12 files changed, 117 insertions(+), 97 deletions(-) create mode 100644 packages/graphrag/graphrag/index/input/text_document.py diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag/graphrag/index/input/csv.py index 77501f81e0..c70e19e293 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag/graphrag/index/input/csv.py @@ -3,12 +3,11 @@ """A module containing 'CSVFileReader' model.""" +import csv import logging -from io import BytesIO - -import pandas as pd from graphrag.index.input.structured_file_reader import StructuredFileReader +from graphrag.index.input.text_document import TextDocument logger = logging.getLogger(__name__) @@ -16,7 +15,7 @@ class CSVFileReader(StructuredFileReader): """Reader implementation for csv files.""" - async def read_file(self, path: str) -> pd.DataFrame: + async def read_file(self, path: str) -> list[TextDocument]: """Read a csv file into a DataFrame of documents. Args: @@ -26,6 +25,7 @@ async def read_file(self, path: str) -> pd.DataFrame: ------- - output - DataFrame with a row for each document in the file. """ - buffer = BytesIO(await self._storage.get(path, as_bytes=True)) - data = pd.read_csv(buffer, encoding=self._encoding) - return await self.process_data_columns(data, path) + file = await self._storage.get(path) + + reader = csv.DictReader(file.splitlines()) + return await self.process_data_columns(list(reader), path) diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag/graphrag/index/input/input_reader.py index 7a70bc25a1..1b7dcf97fd 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag/graphrag/index/input/input_reader.py @@ -8,13 +8,14 @@ import logging import re from abc import ABCMeta, abstractmethod +from dataclasses import asdict from typing import TYPE_CHECKING -import pandas as pd - if TYPE_CHECKING: from graphrag_storage import Storage + from graphrag.index.input.text_document import TextDocument + logger = logging.getLogger(__name__) @@ -51,7 +52,7 @@ def __init__( self._file_pattern = pattern - async def read_files(self) -> pd.DataFrame: + async def read_files(self) -> list[TextDocument]: """Load files from storage and apply a loader function based on file type. Process metadata on the results if needed.""" files = list(self._storage.find(re.compile(self._file_pattern))) if len(files) == 0: @@ -59,11 +60,22 @@ async def read_files(self) -> pd.DataFrame: logger.warning(msg) files = [] - files_loaded = [] + documents: list[TextDocument] = [] for file in files: try: - files_loaded.append(await self.read_file(file)) + file_documents = await self.read_file(file) + + if self._metadata: + for document in file_documents: + # Collapse the metadata columns into a single JSON object column + document.metadata = { + k: v + for k, v in asdict(document).items() + if k in self._metadata + } + + documents.extend(file_documents) except Exception as e: # noqa: BLE001 (catching Exception is fine here) logger.warning("Warning! Error loading file %s. Skipping...", file) logger.warning("Error: %s", e) @@ -72,38 +84,23 @@ async def read_files(self) -> pd.DataFrame: "Found %d %s files, loading %d", len(files), self._file_type, - len(files_loaded), + len(documents), ) - result = pd.concat(files_loaded) total_files_log = ( - f"Total number of unfiltered {self._file_type} rows: {len(result)}" + f"Total number of unfiltered {self._file_type} rows: {len(documents)}" ) logger.info(total_files_log) - # Convert metadata columns to strings and collapse them into a JSON object - if self._metadata: - if all(col in result.columns for col in self._metadata): - # Collapse the metadata columns into a single JSON object column - result["metadata"] = result[self._metadata].apply( - lambda row: row.to_dict(), axis=1 - ) - else: - value_error_msg = ( - "One or more metadata columns not found in the DataFrame." - ) - raise ValueError(value_error_msg) - - result[self._metadata] = result[self._metadata].astype(str) - - return result + + return documents @abstractmethod - async def read_file(self, path: str) -> pd.DataFrame: - """Read a file into a DataFrame of documents. + async def read_file(self, path: str) -> list[TextDocument]: + """Read a file into a list of documents. Args: - path - The path to read the file from. Returns ------- - - output - DataFrame with a row for each document in the file. + - output - List with an entry for each document in the file. """ diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag/graphrag/index/input/json.py index 564d6d9ed9..6f7d68844f 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag/graphrag/index/input/json.py @@ -6,9 +6,8 @@ import json import logging -import pandas as pd - from graphrag.index.input.structured_file_reader import StructuredFileReader +from graphrag.index.input.text_document import TextDocument logger = logging.getLogger(__name__) @@ -16,7 +15,7 @@ class JSONFileReader(StructuredFileReader): """Reader implementation for json files.""" - async def read_file(self, path: str) -> pd.DataFrame: + async def read_file(self, path: str) -> list[TextDocument]: """Read a JSON file into a DataFrame of documents. Args: @@ -30,5 +29,4 @@ async def read_file(self, path: str) -> pd.DataFrame: as_json = json.loads(text) # json file could just be a single object, or an array of objects rows = as_json if isinstance(as_json, list) else [as_json] - data = pd.DataFrame(rows) - return await self.process_data_columns(data, path) + return await self.process_data_columns(rows, path) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index e8c80020a4..6cb3cfa765 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -4,10 +4,10 @@ """A module containing 'CSVFileReader' model.""" import logging - -import pandas as pd +from typing import Any from graphrag.index.input.input_reader import InputReader +from graphrag.index.input.text_document import TextDocument from graphrag.index.utils.hashing import gen_sha512_hash logger = logging.getLogger(__name__) @@ -30,30 +30,29 @@ def __init__( async def process_data_columns( self, - documents: pd.DataFrame, + rows: list[dict[str, Any]], path: str, - ) -> pd.DataFrame: - """Process configured data columns of a DataFrame.""" - # id is optional - generate from harvest from df or hash from text - if self._id_column is not None: - documents["id"] = documents.apply(lambda x: x[self._id_column], axis=1) - else: - documents["id"] = documents.apply( - lambda x: gen_sha512_hash(x, x.keys()), axis=1 + ) -> list[TextDocument]: + """Process configured data columns from a list of loaded dicts.""" + documents = [] + for row in rows: + # text column is required - harvest from dict + text = row[self._text_column] + # id is optional - generate from harvest from dict or hash from text + id = ( + row[self._id_column] + if self._id_column + else gen_sha512_hash({"text": text}, ["text"]) ) - - # title is optional - harvest from df or use filename - if self._title_column is not None: - documents["title"] = documents.apply( - lambda x: x[self._title_column], axis=1 + # title is optional - harvest from dict or use filename + title = row[self._title_column] if self._title_column else str(path) + creation_date = await self._storage.get_creation_date(path) + documents.append( + TextDocument( + id=id, + title=title, + text=text, + creation_date=creation_date, + ) ) - else: - documents["title"] = documents.apply(lambda _: path, axis=1) - - # text column is required - harvest from df - documents["text"] = documents.apply(lambda x: x[self._text_column], axis=1) - - creation_date = await self._storage.get_creation_date(path) - documents["creation_date"] = documents.apply(lambda _: creation_date, axis=1) - return documents diff --git a/packages/graphrag/graphrag/index/input/text.py b/packages/graphrag/graphrag/index/input/text.py index 83193ce767..a688e7c202 100644 --- a/packages/graphrag/graphrag/index/input/text.py +++ b/packages/graphrag/graphrag/index/input/text.py @@ -6,9 +6,8 @@ import logging from pathlib import Path -import pandas as pd - from graphrag.index.input.input_reader import InputReader +from graphrag.index.input.text_document import TextDocument from graphrag.index.utils.hashing import gen_sha512_hash logger = logging.getLogger(__name__) @@ -17,7 +16,7 @@ class TextFileReader(InputReader): """Reader implementation for text files.""" - async def read_file(self, path: str) -> pd.DataFrame: + async def read_file(self, path: str) -> list[TextDocument]: """Read a text file into a DataFrame of documents. Args: @@ -28,8 +27,10 @@ async def read_file(self, path: str) -> pd.DataFrame: - output - DataFrame with a row for each document in the file. """ text = await self._storage.get(path, encoding=self._encoding) - new_item = {"text": text} - new_item["id"] = gen_sha512_hash(new_item, new_item.keys()) - new_item["title"] = str(Path(path).name) - new_item["creation_date"] = await self._storage.get_creation_date(path) - return pd.DataFrame([new_item]) + document = TextDocument( + id=gen_sha512_hash({"text": text}, ["text"]), + title=str(Path(path).name), + text=text, + creation_date=await self._storage.get_creation_date(path), + ) + return [document] diff --git a/packages/graphrag/graphrag/index/input/text_document.py b/packages/graphrag/graphrag/index/input/text_document.py new file mode 100644 index 0000000000..dd1557e463 --- /dev/null +++ b/packages/graphrag/graphrag/index/input/text_document.py @@ -0,0 +1,23 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""TextDocument dataclass.""" + +from dataclasses import dataclass +from typing import Any + + +@dataclass +class TextDocument: + """The TextDocument holds relevant content for GraphRAG indexing.""" + + id: str + """Unique identifier for the document.""" + text: str + """The main text content of the document.""" + title: str + """The title of the document.""" + creation_date: str + """The creation date of the document, ISO-8601 format.""" + metadata: dict[str, Any] | None = None + """Additional metadata associated with the document.""" diff --git a/packages/graphrag/graphrag/index/workflows/load_input_documents.py b/packages/graphrag/graphrag/index/workflows/load_input_documents.py index 0a1b6fad14..7038e3b67e 100644 --- a/packages/graphrag/graphrag/index/workflows/load_input_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_input_documents.py @@ -38,4 +38,4 @@ async def run_workflow( async def load_input_documents(input_reader: InputReader) -> pd.DataFrame: """Load and parse input documents into a standard format.""" - return await input_reader.read_files() + return pd.DataFrame(await input_reader.read_files()) diff --git a/packages/graphrag/graphrag/index/workflows/load_update_documents.py b/packages/graphrag/graphrag/index/workflows/load_update_documents.py index ab29b2a98a..4ccd96548b 100644 --- a/packages/graphrag/graphrag/index/workflows/load_update_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_update_documents.py @@ -47,7 +47,7 @@ async def load_update_documents( previous_storage: Storage, ) -> pd.DataFrame: """Load and parse update-only input documents into a standard format.""" - input_documents = await input_reader.read_files() + input_documents = pd.DataFrame(await input_reader.read_files()) # previous storage is the output of the previous run # we'll use this to diff the input from the prior delta_documents = await get_delta_docs(input_documents, previous_storage) diff --git a/packages/graphrag/graphrag/prompt_tune/loader/input.py b/packages/graphrag/graphrag/prompt_tune/loader/input.py index c17ea918e5..4381e84281 100644 --- a/packages/graphrag/graphrag/prompt_tune/loader/input.py +++ b/packages/graphrag/graphrag/prompt_tune/loader/input.py @@ -68,7 +68,7 @@ async def load_docs_in_chunks( dataset = await input_reader.read_files() chunk_config = config.chunks chunks_df = create_base_text_units( - documents=dataset, + documents=pd.DataFrame(dataset), callbacks=NoopWorkflowCallbacks(), size=chunk_size, overlap=overlap, diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index f4c1c3cf94..c153f82eb9 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -20,8 +20,9 @@ async def test_csv_loader_one_file(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (2, 4) - assert documents["title"].iloc[0] == "input.csv" + assert len(documents) == 2 + assert documents[0].title == "input.csv" + assert documents[0].metadata is None async def test_csv_loader_one_file_with_title(): @@ -36,8 +37,8 @@ async def test_csv_loader_one_file_with_title(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (2, 4) - assert documents["title"].iloc[0] == "Hello" + assert len(documents) == 2 + assert documents[0].title == "Hello" async def test_csv_loader_one_file_with_metadata(): @@ -53,8 +54,8 @@ async def test_csv_loader_one_file_with_metadata(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (2, 5) - assert documents["metadata"][0] == {"title": "Hello"} + assert len(documents) == 2 + assert documents[0].metadata == {"title": "Hello"} async def test_csv_loader_multiple_files(): @@ -68,4 +69,4 @@ async def test_csv_loader_multiple_files(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (4, 4) + assert len(documents) == 4 diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index d604ca9cc8..cb4e6cd41b 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -18,8 +18,9 @@ async def test_json_loader_one_file_one_object(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (1, 4) - assert documents["title"].iloc[0] == "input.json" + assert len(documents) == 1 + assert documents[0].title == "input.json" + assert documents[0].metadata is None async def test_json_loader_one_file_multiple_objects(): @@ -33,9 +34,8 @@ async def test_json_loader_one_file_multiple_objects(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - print(documents) - assert documents.shape == (3, 4) - assert documents["title"].iloc[0] == "input.json" + assert len(documents) == 3 + assert documents[0].title == "input.json" async def test_json_loader_one_file_with_title(): @@ -50,8 +50,8 @@ async def test_json_loader_one_file_with_title(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (1, 4) - assert documents["title"].iloc[0] == "Hello" + assert len(documents) == 1 + assert documents[0].title == "Hello" async def test_json_loader_one_file_with_metadata(): @@ -67,8 +67,8 @@ async def test_json_loader_one_file_with_metadata(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (1, 5) - assert documents["metadata"][0] == {"title": "Hello"} + assert len(documents) == 1 + assert documents[0].metadata == {"title": "Hello"} async def test_json_loader_multiple_files(): @@ -82,4 +82,4 @@ async def test_json_loader_multiple_files(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (4, 4) + assert len(documents) == 4 diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index 67d0764656..c630142e39 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -18,8 +18,9 @@ async def test_txt_loader_one_file(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (1, 4) - assert documents["title"].iloc[0] == "input.txt" + assert len(documents) == 1 + assert documents[0].title == "input.txt" + assert documents[0].metadata is None async def test_txt_loader_one_file_with_metadata(): @@ -34,9 +35,9 @@ async def test_txt_loader_one_file_with_metadata(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (1, 5) + assert len(documents) == 1 # unlike csv, we cannot set the title to anything other than the filename - assert documents["metadata"][0] == {"title": "input.txt"} + assert documents[0].metadata == {"title": "input.txt"} async def test_txt_loader_multiple_files(): @@ -50,4 +51,4 @@ async def test_txt_loader_multiple_files(): storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() - assert documents.shape == (2, 4) + assert len(documents) == 2 From a03df1b3508f364c94b03f9c1bbb473c8d6b4bd8 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 14:29:11 -0800 Subject: [PATCH 08/30] Throw if empty documents --- .../graphrag/index/workflows/load_input_documents.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/packages/graphrag/graphrag/index/workflows/load_input_documents.py b/packages/graphrag/graphrag/index/workflows/load_input_documents.py index 7038e3b67e..55f503a941 100644 --- a/packages/graphrag/graphrag/index/workflows/load_input_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_input_documents.py @@ -28,6 +28,11 @@ async def run_workflow( output = await load_input_documents(input_reader) + if len(output) == 0: + msg = "No input documents found." + logger.error(msg) + raise ValueError(msg) + logger.info("Final # of rows loaded: %s", len(output)) context.stats.num_documents = len(output) From 8b45208ba90f2cf42431c22b756123fea4c6a0af Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 14:59:49 -0800 Subject: [PATCH 09/30] Add json lines (jsonl) input support --- packages/graphrag/graphrag/index/input/csv.py | 4 +- .../graphrag/index/input/input_file_type.py | 2 + .../index/input/input_reader_factory.py | 4 ++ .../graphrag/graphrag/index/input/json.py | 4 +- .../graphrag/graphrag/index/input/jsonl.py | 32 +++++++++++ .../index/input/structured_file_reader.py | 6 ++- .../indexing/input/data/one-jsonl/input.jsonl | 3 ++ tests/unit/indexing/input/test_csv_loader.py | 5 +- tests/unit/indexing/input/test_json_loader.py | 9 ++-- .../unit/indexing/input/test_jsonl_loader.py | 53 +++++++++++++++++++ 10 files changed, 106 insertions(+), 16 deletions(-) create mode 100644 packages/graphrag/graphrag/index/input/jsonl.py create mode 100644 tests/unit/indexing/input/data/one-jsonl/input.jsonl create mode 100644 tests/unit/indexing/input/test_jsonl_loader.py diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag/graphrag/index/input/csv.py index c70e19e293..e5830984a3 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag/graphrag/index/input/csv.py @@ -16,14 +16,14 @@ class CSVFileReader(StructuredFileReader): """Reader implementation for csv files.""" async def read_file(self, path: str) -> list[TextDocument]: - """Read a csv file into a DataFrame of documents. + """Read a csv file into a list of documents. Args: - path - The path to read the file from. Returns ------- - - output - DataFrame with a row for each document in the file. + - output - list with a TextDocument for each row in the file. """ file = await self._storage.get(path) diff --git a/packages/graphrag/graphrag/index/input/input_file_type.py b/packages/graphrag/graphrag/index/input/input_file_type.py index 3996eee36e..704ff05d5c 100644 --- a/packages/graphrag/graphrag/index/input/input_file_type.py +++ b/packages/graphrag/graphrag/index/input/input_file_type.py @@ -15,6 +15,8 @@ class InputFileType(StrEnum): """The text input type.""" Json = "json" """The JSON input type.""" + JsonLines = "jsonl" + """The JSON Lines input type.""" def __repr__(self): """Get a string representation.""" diff --git a/packages/graphrag/graphrag/index/input/input_reader_factory.py b/packages/graphrag/graphrag/index/input/input_reader_factory.py index e0b391d7eb..ccd16bf21c 100644 --- a/packages/graphrag/graphrag/index/input/input_reader_factory.py +++ b/packages/graphrag/graphrag/index/input/input_reader_factory.py @@ -73,6 +73,10 @@ def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: from graphrag.index.input.json import JSONFileReader register_input_reader(InputFileType.Json, JSONFileReader) + case InputFileType.JsonLines: + from graphrag.index.input.jsonl import JSONLinesFileReader + + register_input_reader(InputFileType.JsonLines, JSONLinesFileReader) case _: msg = f"InputConfig.file_type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." raise ValueError(msg) diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag/graphrag/index/input/json.py index 6f7d68844f..ef13b260fc 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag/graphrag/index/input/json.py @@ -16,14 +16,14 @@ class JSONFileReader(StructuredFileReader): """Reader implementation for json files.""" async def read_file(self, path: str) -> list[TextDocument]: - """Read a JSON file into a DataFrame of documents. + """Read a JSON file into a list of documents. Args: - path - The path to read the file from. Returns ------- - - output - DataFrame with a row for each document in the file. + - output - list with a TextDocument for each row in the file. """ text = await self._storage.get(path, encoding=self._encoding) as_json = json.loads(text) diff --git a/packages/graphrag/graphrag/index/input/jsonl.py b/packages/graphrag/graphrag/index/input/jsonl.py new file mode 100644 index 0000000000..a3a3a929a5 --- /dev/null +++ b/packages/graphrag/graphrag/index/input/jsonl.py @@ -0,0 +1,32 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A module containing 'JSONFileReader' model.""" + +import json +import logging + +from graphrag.index.input.structured_file_reader import StructuredFileReader +from graphrag.index.input.text_document import TextDocument + +logger = logging.getLogger(__name__) + + +class JSONLinesFileReader(StructuredFileReader): + """Reader implementation for json files.""" + + async def read_file(self, path: str) -> list[TextDocument]: + """Read a JSON lines file into a list of documents. + + This differs from standard JSON files in that each line is a separate JSON object. + + Args: + - path - The path to read the file from. + + Returns + ------- + - output - list with a TextDocument for each row in the file. + """ + text = await self._storage.get(path, encoding=self._encoding) + rows = [json.loads(line) for line in text.splitlines()] + return await self.process_data_columns(rows, path) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index 6cb3cfa765..f761cab6cd 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -35,7 +35,7 @@ async def process_data_columns( ) -> list[TextDocument]: """Process configured data columns from a list of loaded dicts.""" documents = [] - for row in rows: + for index, row in enumerate(rows): # text column is required - harvest from dict text = row[self._text_column] # id is optional - generate from harvest from dict or hash from text @@ -45,7 +45,9 @@ async def process_data_columns( else gen_sha512_hash({"text": text}, ["text"]) ) # title is optional - harvest from dict or use filename - title = row[self._title_column] if self._title_column else str(path) + title = ( + row[self._title_column] if self._title_column else f"{path} ({index})" + ) creation_date = await self._storage.get_creation_date(path) documents.append( TextDocument( diff --git a/tests/unit/indexing/input/data/one-jsonl/input.jsonl b/tests/unit/indexing/input/data/one-jsonl/input.jsonl new file mode 100644 index 0000000000..2866aed408 --- /dev/null +++ b/tests/unit/indexing/input/data/one-jsonl/input.jsonl @@ -0,0 +1,3 @@ +{ "title": "Hello", "text": "Hi how are you today?"} +{ "title": "Goodbye", "text": "I'm outta here"} +{ "title": "Adios", "text": "See you later"} \ No newline at end of file diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index c153f82eb9..440dd18f00 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -21,7 +21,7 @@ async def test_csv_loader_one_file(): reader = create_input_reader(config, storage) documents = await reader.read_files() assert len(documents) == 2 - assert documents[0].title == "input.csv" + assert documents[0].title == "input.csv (0)" assert documents[0].metadata is None @@ -31,7 +31,6 @@ async def test_csv_loader_one_file_with_title(): base_dir="tests/unit/indexing/input/data/one-csv", ), file_type=InputFileType.Csv, - file_pattern=".*\\.csv$", title_column="title", ) storage = create_storage(config.storage) @@ -47,7 +46,6 @@ async def test_csv_loader_one_file_with_metadata(): base_dir="tests/unit/indexing/input/data/one-csv", ), file_type=InputFileType.Csv, - file_pattern=".*\\.csv$", title_column="title", metadata=["title"], ) @@ -64,7 +62,6 @@ async def test_csv_loader_multiple_files(): base_dir="tests/unit/indexing/input/data/multiple-csvs", ), file_type=InputFileType.Csv, - file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index cb4e6cd41b..7de1e8434f 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -19,7 +19,7 @@ async def test_json_loader_one_file_one_object(): reader = create_input_reader(config, storage) documents = await reader.read_files() assert len(documents) == 1 - assert documents[0].title == "input.json" + assert documents[0].title == "input.json (0)" assert documents[0].metadata is None @@ -29,13 +29,13 @@ async def test_json_loader_one_file_multiple_objects(): base_dir="tests/unit/indexing/input/data/one-json-multiple-objects", ), file_type=InputFileType.Json, - file_pattern=".*\\.json$", ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) documents = await reader.read_files() assert len(documents) == 3 - assert documents[0].title == "input.json" + assert documents[0].title == "input.json (0)" + assert documents[1].title == "input.json (1)" async def test_json_loader_one_file_with_title(): @@ -44,7 +44,6 @@ async def test_json_loader_one_file_with_title(): base_dir="tests/unit/indexing/input/data/one-json-one-object", ), file_type=InputFileType.Json, - file_pattern=".*\\.json$", title_column="title", ) storage = create_storage(config.storage) @@ -60,7 +59,6 @@ async def test_json_loader_one_file_with_metadata(): base_dir="tests/unit/indexing/input/data/one-json-one-object", ), file_type=InputFileType.Json, - file_pattern=".*\\.json$", title_column="title", metadata=["title"], ) @@ -77,7 +75,6 @@ async def test_json_loader_multiple_files(): base_dir="tests/unit/indexing/input/data/multiple-jsons", ), file_type=InputFileType.Json, - file_pattern=".*\\.json$", ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) diff --git a/tests/unit/indexing/input/test_jsonl_loader.py b/tests/unit/indexing/input/test_jsonl_loader.py new file mode 100644 index 0000000000..a41c467b18 --- /dev/null +++ b/tests/unit/indexing/input/test_jsonl_loader.py @@ -0,0 +1,53 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +from graphrag.index.input.input_config import InputConfig +from graphrag.index.input.input_file_type import InputFileType +from graphrag.index.input.input_reader_factory import create_input_reader +from graphrag_storage import StorageConfig, create_storage + + +async def test_jsonl_loader_one_file_multiple_objects(): + config = InputConfig( + storage=StorageConfig( + base_dir="tests/unit/indexing/input/data/one-jsonl", + ), + file_type=InputFileType.JsonLines, + file_pattern=".*\\.jsonl$", + ) + storage = create_storage(config.storage) + reader = create_input_reader(config, storage) + documents = await reader.read_files() + assert len(documents) == 3 + assert documents[0].title == "input.jsonl (0)" + + +async def test_jsonl_loader_one_file_with_title(): + config = InputConfig( + storage=StorageConfig( + base_dir="tests/unit/indexing/input/data/one-jsonl", + ), + file_type=InputFileType.JsonLines, + title_column="title", + ) + storage = create_storage(config.storage) + reader = create_input_reader(config, storage) + documents = await reader.read_files() + assert len(documents) == 3 + assert documents[0].title == "Hello" + + +async def test_jsonl_loader_one_file_with_metadata(): + config = InputConfig( + storage=StorageConfig( + base_dir="tests/unit/indexing/input/data/one-jsonl", + ), + file_type=InputFileType.JsonLines, + title_column="title", + metadata=["title"], + ) + storage = create_storage(config.storage) + reader = create_input_reader(config, storage) + documents = await reader.read_files() + assert len(documents) == 3 + assert documents[0].metadata == {"title": "Hello"} From 6ac0b582ed27089a68c1e168e68d40cda9c4f395 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 15:39:58 -0800 Subject: [PATCH 10/30] Store raw data --- .../graphrag/graphrag/index/input/structured_file_reader.py | 1 + packages/graphrag/graphrag/index/input/text.py | 1 + packages/graphrag/graphrag/index/input/text_document.py | 2 ++ 3 files changed, 4 insertions(+) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index f761cab6cd..f5c8154a05 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -55,6 +55,7 @@ async def process_data_columns( title=title, text=text, creation_date=creation_date, + raw_data=row, ) ) return documents diff --git a/packages/graphrag/graphrag/index/input/text.py b/packages/graphrag/graphrag/index/input/text.py index a688e7c202..d9ec843217 100644 --- a/packages/graphrag/graphrag/index/input/text.py +++ b/packages/graphrag/graphrag/index/input/text.py @@ -32,5 +32,6 @@ async def read_file(self, path: str) -> list[TextDocument]: title=str(Path(path).name), text=text, creation_date=await self._storage.get_creation_date(path), + raw_data={}, ) return [document] diff --git a/packages/graphrag/graphrag/index/input/text_document.py b/packages/graphrag/graphrag/index/input/text_document.py index dd1557e463..5d11bab864 100644 --- a/packages/graphrag/graphrag/index/input/text_document.py +++ b/packages/graphrag/graphrag/index/input/text_document.py @@ -19,5 +19,7 @@ class TextDocument: """The title of the document.""" creation_date: str """The creation date of the document, ISO-8601 format.""" + raw_data: dict[str, Any] + """Raw data from source document.""" metadata: dict[str, Any] | None = None """Additional metadata associated with the document.""" From fb9a92464b4528a318493fa67875580a08fa9387 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 15:48:06 -0800 Subject: [PATCH 11/30] Fix merge imports --- packages/graphrag/graphrag/config/enums.py | 19 ------------------- .../config/models/graph_rag_config.py | 5 ++--- 2 files changed, 2 insertions(+), 22 deletions(-) diff --git a/packages/graphrag/graphrag/config/enums.py b/packages/graphrag/graphrag/config/enums.py index b1c9e32065..9685ebb07b 100644 --- a/packages/graphrag/graphrag/config/enums.py +++ b/packages/graphrag/graphrag/config/enums.py @@ -8,25 +8,6 @@ from enum import Enum -class CacheType(str, Enum): - """The cache configuration type for the pipeline.""" - - file = "file" - """The file cache configuration type.""" - memory = "memory" - """The memory cache configuration type.""" - none = "none" - """The none cache configuration type.""" - blob = "blob" - """The blob cache configuration type.""" - cosmosdb = "cosmosdb" - """The cosmosdb cache configuration type""" - - def __repr__(self): - """Get a string representation.""" - return f'"{self.value}"' - - class VectorStoreType(str, Enum): """The supported vector store types.""" diff --git a/packages/graphrag/graphrag/config/models/graph_rag_config.py b/packages/graphrag/graphrag/config/models/graph_rag_config.py index bae40d0fad..ca00eb7327 100644 --- a/packages/graphrag/graphrag/config/models/graph_rag_config.py +++ b/packages/graphrag/graphrag/config/models/graph_rag_config.py @@ -12,9 +12,8 @@ from graphrag_storage import StorageConfig, StorageType from pydantic import BaseModel, Field, model_validator -import graphrag.config.defaults as defs from graphrag.config.defaults import graphrag_config_defaults -from graphrag.config.enums import VectorStoreType +from graphrag.config.enums import ReportingType, VectorStoreType from graphrag.config.models.basic_search_config import BasicSearchConfig from graphrag.config.models.cluster_graph_config import ClusterGraphConfig from graphrag.config.models.community_reports_config import CommunityReportsConfig @@ -176,7 +175,7 @@ def _validate_update_index_output_base_dir(self) -> None: def _validate_reporting_base_dir(self) -> None: """Validate the reporting base directory.""" - if self.reporting.type == defs.ReportingType.file: + if self.reporting.type == ReportingType.file: if self.reporting.base_dir.strip() == "": msg = "Reporting base directory is required for file reporting. Please rerun `graphrag init` and set the reporting configuration." raise ValueError(msg) From e2395e97ba86ccf9c6431a1e2302c59f9c1fa55d Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 16:45:29 -0800 Subject: [PATCH 12/30] Move metadata handling entirely to chunking --- .../graphrag_chunking/add_metadata.py | 2 +- .../graphrag_chunking/chunking_config.py | 6 +-- packages/graphrag/graphrag/config/defaults.py | 3 +- .../graphrag/index/input/input_config.py | 4 -- .../graphrag/index/input/input_reader.py | 22 +--------- .../graphrag/graphrag/index/input/text.py | 2 +- .../graphrag/index/input/text_document.py | 27 +++++++++++-- .../graphrag/graphrag/index/input/util.py | 40 ------------------- .../index/workflows/create_base_text_units.py | 18 ++++++--- tests/unit/config/utils.py | 1 - tests/unit/indexing/input/test_csv_loader.py | 22 +++------- tests/unit/indexing/input/test_json_loader.py | 21 ++-------- .../unit/indexing/input/test_jsonl_loader.py | 21 +++------- tests/unit/indexing/input/test_txt_loader.py | 19 +-------- tests/verbs/test_create_base_text_units.py | 6 +-- tests/verbs/test_create_final_documents.py | 5 --- tests/verbs/util.py | 11 +---- 17 files changed, 61 insertions(+), 169 deletions(-) delete mode 100644 packages/graphrag/graphrag/index/input/util.py diff --git a/packages/graphrag-chunking/graphrag_chunking/add_metadata.py b/packages/graphrag-chunking/graphrag_chunking/add_metadata.py index 3b02994d4c..79203b3ce4 100644 --- a/packages/graphrag-chunking/graphrag_chunking/add_metadata.py +++ b/packages/graphrag-chunking/graphrag_chunking/add_metadata.py @@ -1,7 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -"""A module containing 'prepend_metadata' function.""" +"""A module containing 'add_metadata' function.""" def add_metadata( diff --git a/packages/graphrag-chunking/graphrag_chunking/chunking_config.py b/packages/graphrag-chunking/graphrag_chunking/chunking_config.py index 1bb5b84e44..69db1260a1 100644 --- a/packages/graphrag-chunking/graphrag_chunking/chunking_config.py +++ b/packages/graphrag-chunking/graphrag_chunking/chunking_config.py @@ -30,7 +30,7 @@ class ChunkingConfig(BaseModel): description="The chunk overlap to use.", default=100, ) - prepend_metadata: bool = Field( - description="Prepend metadata into each chunk.", - default=False, + prepend_metadata: list[str] | None = Field( + description="Metadata fields from the source document to prepend on each chunk.", + default=None, ) diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index 7f3321d335..dc2a857c78 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -64,7 +64,7 @@ class ChunkingDefaults: size: int = 1200 overlap: int = 100 encoding_model: str = ENCODING_MODEL - prepend_metadata: bool = False + prepend_metadata: None = None @dataclass @@ -243,7 +243,6 @@ class InputDefaults: id_column: None = None title_column: None = None text_column: None = None - metadata: None = None @dataclass diff --git a/packages/graphrag/graphrag/index/input/input_config.py b/packages/graphrag/graphrag/index/input/input_config.py index 72b26ccb46..a378df1a01 100644 --- a/packages/graphrag/graphrag/index/input/input_config.py +++ b/packages/graphrag/graphrag/index/input/input_config.py @@ -46,7 +46,3 @@ class InputConfig(BaseModel): description="The input text column to use.", default=graphrag_config_defaults.input.text_column, ) - metadata: list[str] | None = Field( - description="The document attribute columns to use.", - default=graphrag_config_defaults.input.metadata, - ) diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag/graphrag/index/input/input_reader.py index 1b7dcf97fd..246e768b06 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag/graphrag/index/input/input_reader.py @@ -8,7 +8,6 @@ import logging import re from abc import ABCMeta, abstractmethod -from dataclasses import asdict from typing import TYPE_CHECKING if TYPE_CHECKING: @@ -28,19 +27,11 @@ def __init__( file_type: str, encoding: str = "utf-8", file_pattern: str | None = None, - id_column: str | None = None, - title_column: str | None = None, - text_column: str = "text", - metadata: list[str] | None = None, **kwargs, ): self._storage = storage self._file_type = file_type self._encoding = encoding - self._id_column = id_column - self._title_column = title_column - self._text_column = text_column - self._metadata = metadata # built-in readers set a default pattern if none is provided # this is usually just the file type itself, e.g., the file extension @@ -64,18 +55,7 @@ async def read_files(self) -> list[TextDocument]: for file in files: try: - file_documents = await self.read_file(file) - - if self._metadata: - for document in file_documents: - # Collapse the metadata columns into a single JSON object column - document.metadata = { - k: v - for k, v in asdict(document).items() - if k in self._metadata - } - - documents.extend(file_documents) + documents.extend(await self.read_file(file)) except Exception as e: # noqa: BLE001 (catching Exception is fine here) logger.warning("Warning! Error loading file %s. Skipping...", file) logger.warning("Error: %s", e) diff --git a/packages/graphrag/graphrag/index/input/text.py b/packages/graphrag/graphrag/index/input/text.py index d9ec843217..d5d14e1c4a 100644 --- a/packages/graphrag/graphrag/index/input/text.py +++ b/packages/graphrag/graphrag/index/input/text.py @@ -32,6 +32,6 @@ async def read_file(self, path: str) -> list[TextDocument]: title=str(Path(path).name), text=text, creation_date=await self._storage.get_creation_date(path), - raw_data={}, + raw_data=None, ) return [document] diff --git a/packages/graphrag/graphrag/index/input/text_document.py b/packages/graphrag/graphrag/index/input/text_document.py index 5d11bab864..691393f71f 100644 --- a/packages/graphrag/graphrag/index/input/text_document.py +++ b/packages/graphrag/graphrag/index/input/text_document.py @@ -19,7 +19,28 @@ class TextDocument: """The title of the document.""" creation_date: str """The creation date of the document, ISO-8601 format.""" - raw_data: dict[str, Any] + raw_data: dict[str, Any] | None = None """Raw data from source document.""" - metadata: dict[str, Any] | None = None - """Additional metadata associated with the document.""" + + def pluck_metadata(self, fields: list[str]) -> dict[str, Any]: + """Extract metadata fields from a TextDocument. + + This takes a two step approach for flexibility: + 1. If the field is one of the standard text document fields (id, title, text, creation_date), just grab it directly. This accommodates unstructured text for example, which just has the standard fields. + 2. Otherwise. try to extract it from the raw_data dict. This allows users to specify any column from the original input file. + + If a field does not exist in either location, we'll throw because that means the user config is incorrect. + """ + metadata = {} + for field in fields: + if field in ["id", "title", "text", "creation_date"]: + value = getattr(self, field) + else: + raw = self.raw_data or {} + if field not in raw: + msg = f"Metadata field '{field}' not found in TextDocument standard fields or raw_data. Please check your configuration." + raise ValueError(msg) + value = raw.get(field, None) + if value is not None: + metadata[field] = value + return metadata diff --git a/packages/graphrag/graphrag/index/input/util.py b/packages/graphrag/graphrag/index/input/util.py deleted file mode 100644 index 868ce10e72..0000000000 --- a/packages/graphrag/graphrag/index/input/util.py +++ /dev/null @@ -1,40 +0,0 @@ -# Copyright (c) 2024 Microsoft Corporation. -# Licensed under the MIT License - -"""Shared column processing for structured input files.""" - -import logging - -import pandas as pd - -from graphrag.index.utils.hashing import gen_sha512_hash - -logger = logging.getLogger(__name__) - - -def process_data_columns( - documents: pd.DataFrame, - path: str, - id_column: str | None = None, - title_column: str | None = None, - text_column: str = "text", -) -> pd.DataFrame: - """Process configured data columns of a DataFrame.""" - # id is optional - generate from harvest from df or hash from text - if id_column is not None: - documents["id"] = documents.apply(lambda x: x[id_column], axis=1) - else: - documents["id"] = documents.apply( - lambda x: gen_sha512_hash(x, x.keys()), axis=1 - ) - - # title is optional - harvest from df or use filename - if title_column is not None: - documents["title"] = documents.apply(lambda x: x[title_column], axis=1) - else: - documents["title"] = documents.apply(lambda _: path, axis=1) - - # text column is required - harvest from df - documents["text"] = documents.apply(lambda x: x[text_column], axis=1) - - return documents diff --git a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py index fce186e0c6..df933b521c 100644 --- a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py +++ b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py @@ -3,7 +3,6 @@ """A module containing run_workflow method definition.""" -import json import logging from typing import Any, cast @@ -14,6 +13,7 @@ from graphrag.callbacks.workflow_callbacks import WorkflowCallbacks from graphrag.config.models.graph_rag_config import GraphRagConfig +from graphrag.index.input.text_document import TextDocument from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.index.utils.hashing import gen_sha512_hash @@ -54,7 +54,7 @@ def create_base_text_units( callbacks: WorkflowCallbacks, tokenizer: Tokenizer, chunker: Chunker, - prepend_metadata: bool | None = False, + prepend_metadata: list[str] | None = None, ) -> pd.DataFrame: """All the steps to transform base text_units.""" documents.sort_values(by=["id"], ascending=[True], inplace=True) @@ -68,9 +68,17 @@ def create_base_text_units( def chunker_with_logging(row: pd.Series, row_index: int) -> Any: row["chunks"] = [chunk.text for chunk in chunker.chunk(row["text"])] - metadata = row.get("metadata", None) - if prepend_metadata and metadata is not None: - metadata = json.loads(metadata) if isinstance(metadata, str) else metadata + if prepend_metadata: + # create a standard text document for metadata plucking + # ignore any additional fields in case the input dataframe has extra columns + document = TextDocument( + id=row["id"], + title=row["title"], + text=row["text"], + creation_date=row["creation_date"], + raw_data=row.get("raw_data", None), + ) + metadata = document.pluck_metadata(prepend_metadata) row["chunks"] = [ add_metadata(chunk, metadata, line_delimiter=".\n") for chunk in row["chunks"] diff --git a/tests/unit/config/utils.py b/tests/unit/config/utils.py index 79774a11ec..b54e465dd4 100644 --- a/tests/unit/config/utils.py +++ b/tests/unit/config/utils.py @@ -149,7 +149,6 @@ def assert_input_configs(actual: InputConfig, expected: InputConfig) -> None: assert actual.file_pattern == expected.file_pattern assert actual.text_column == expected.text_column assert actual.title_column == expected.title_column - assert actual.metadata == expected.metadata def assert_text_embedding_configs( diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index 440dd18f00..fba94d6196 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -22,7 +22,11 @@ async def test_csv_loader_one_file(): documents = await reader.read_files() assert len(documents) == 2 assert documents[0].title == "input.csv (0)" - assert documents[0].metadata is None + assert documents[0].raw_data == { + "title": "Hello", + "text": "Hi how are you today?", + } + assert documents[1].title == "input.csv (1)" async def test_csv_loader_one_file_with_title(): @@ -40,22 +44,6 @@ async def test_csv_loader_one_file_with_title(): assert documents[0].title == "Hello" -async def test_csv_loader_one_file_with_metadata(): - config = InputConfig( - storage=StorageConfig( - base_dir="tests/unit/indexing/input/data/one-csv", - ), - file_type=InputFileType.Csv, - title_column="title", - metadata=["title"], - ) - storage = create_storage(config.storage) - reader = create_input_reader(config, storage) - documents = await reader.read_files() - assert len(documents) == 2 - assert documents[0].metadata == {"title": "Hello"} - - async def test_csv_loader_multiple_files(): config = InputConfig( storage=StorageConfig( diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index 7de1e8434f..ad3a25f022 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -20,7 +20,10 @@ async def test_json_loader_one_file_one_object(): documents = await reader.read_files() assert len(documents) == 1 assert documents[0].title == "input.json (0)" - assert documents[0].metadata is None + assert documents[0].raw_data == { + "title": "Hello", + "text": "Hi how are you today?", + } async def test_json_loader_one_file_multiple_objects(): @@ -53,22 +56,6 @@ async def test_json_loader_one_file_with_title(): assert documents[0].title == "Hello" -async def test_json_loader_one_file_with_metadata(): - config = InputConfig( - storage=StorageConfig( - base_dir="tests/unit/indexing/input/data/one-json-one-object", - ), - file_type=InputFileType.Json, - title_column="title", - metadata=["title"], - ) - storage = create_storage(config.storage) - reader = create_input_reader(config, storage) - documents = await reader.read_files() - assert len(documents) == 1 - assert documents[0].metadata == {"title": "Hello"} - - async def test_json_loader_multiple_files(): config = InputConfig( storage=StorageConfig( diff --git a/tests/unit/indexing/input/test_jsonl_loader.py b/tests/unit/indexing/input/test_jsonl_loader.py index a41c467b18..3293693875 100644 --- a/tests/unit/indexing/input/test_jsonl_loader.py +++ b/tests/unit/indexing/input/test_jsonl_loader.py @@ -20,6 +20,11 @@ async def test_jsonl_loader_one_file_multiple_objects(): documents = await reader.read_files() assert len(documents) == 3 assert documents[0].title == "input.jsonl (0)" + assert documents[0].raw_data == { + "title": "Hello", + "text": "Hi how are you today?", + } + assert documents[1].title == "input.jsonl (1)" async def test_jsonl_loader_one_file_with_title(): @@ -35,19 +40,3 @@ async def test_jsonl_loader_one_file_with_title(): documents = await reader.read_files() assert len(documents) == 3 assert documents[0].title == "Hello" - - -async def test_jsonl_loader_one_file_with_metadata(): - config = InputConfig( - storage=StorageConfig( - base_dir="tests/unit/indexing/input/data/one-jsonl", - ), - file_type=InputFileType.JsonLines, - title_column="title", - metadata=["title"], - ) - storage = create_storage(config.storage) - reader = create_input_reader(config, storage) - documents = await reader.read_files() - assert len(documents) == 3 - assert documents[0].metadata == {"title": "Hello"} diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index c630142e39..0190876c65 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -20,24 +20,7 @@ async def test_txt_loader_one_file(): documents = await reader.read_files() assert len(documents) == 1 assert documents[0].title == "input.txt" - assert documents[0].metadata is None - - -async def test_txt_loader_one_file_with_metadata(): - config = InputConfig( - storage=StorageConfig( - base_dir="tests/unit/indexing/input/data/one-txt", - ), - file_type=InputFileType.Text, - file_pattern=".*\\.txt$", - metadata=["title"], - ) - storage = create_storage(config.storage) - reader = create_input_reader(config, storage) - documents = await reader.read_files() - assert len(documents) == 1 - # unlike csv, we cannot set the title to anything other than the filename - assert documents[0].metadata == {"title": "input.txt"} + assert documents[0].raw_data is None async def test_txt_loader_multiple_files(): diff --git a/tests/verbs/test_create_base_text_units.py b/tests/verbs/test_create_base_text_units.py index 89018e1609..7939919a5f 100644 --- a/tests/verbs/test_create_base_text_units.py +++ b/tests/verbs/test_create_base_text_units.py @@ -10,7 +10,6 @@ compare_outputs, create_test_context, load_test_table, - update_document_metadata, ) @@ -34,10 +33,7 @@ async def test_create_base_text_units_metadata(): context = await create_test_context() config = GraphRagConfig(models=DEFAULT_MODEL_CONFIG) # type: ignore - config.input.metadata = ["title"] - config.chunking.prepend_metadata = True - - await update_document_metadata(config.input.metadata, context) + config.chunking.prepend_metadata = ["title"] await run_workflow(config, context) diff --git a/tests/verbs/test_create_final_documents.py b/tests/verbs/test_create_final_documents.py index 05f4b60691..c2c2725688 100644 --- a/tests/verbs/test_create_final_documents.py +++ b/tests/verbs/test_create_final_documents.py @@ -13,7 +13,6 @@ compare_outputs, create_test_context, load_test_table, - update_document_metadata, ) @@ -42,10 +41,6 @@ async def test_create_final_documents_with_metadata_column(): ) config = GraphRagConfig(models=DEFAULT_MODEL_CONFIG) # type: ignore - config.input.metadata = ["title"] - - # simulate the metadata construction during initial input loading - await update_document_metadata(config.input.metadata, context) expected = await load_table_from_storage("documents", context.output_storage) diff --git a/tests/verbs/util.py b/tests/verbs/util.py index 6dc6667210..e025dde65d 100644 --- a/tests/verbs/util.py +++ b/tests/verbs/util.py @@ -5,7 +5,7 @@ import pandas as pd from graphrag.index.run.utils import create_run_context from graphrag.index.typing.context import PipelineRunContext -from graphrag.utils.storage import load_table_from_storage, write_table_to_storage +from graphrag.utils.storage import write_table_to_storage from pandas.testing import assert_series_equal pd.set_option("display.max_columns", None) @@ -87,12 +87,3 @@ def compare_outputs( print("Actual:") print(actual[column]) raise - - -async def update_document_metadata(metadata: list[str], context: PipelineRunContext): - """Takes the default documents and adds the configured metadata columns for later parsing by the text units and final documents workflows.""" - documents = await load_table_from_storage("documents", context.output_storage) - documents["metadata"] = documents[metadata].apply(lambda row: row.to_dict(), axis=1) - await write_table_to_storage( - documents, "documents", context.output_storage - ) # write to the runtime context storage only From 36b7be72f1bd5c60996ef9011715032c1d1676f7 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Tue, 6 Jan 2026 16:48:14 -0800 Subject: [PATCH 13/30] Nicer automatic title --- .../graphrag/graphrag/index/input/structured_file_reader.py | 5 ++--- tests/unit/indexing/input/test_json_loader.py | 2 +- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index f5c8154a05..9e8475b402 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -45,9 +45,8 @@ async def process_data_columns( else gen_sha512_hash({"text": text}, ["text"]) ) # title is optional - harvest from dict or use filename - title = ( - row[self._title_column] if self._title_column else f"{path} ({index})" - ) + num = f" ({index})" if len(rows) > 1 else "" + title = row[self._title_column] if self._title_column else f"{path}{num}" creation_date = await self._storage.get_creation_date(path) documents.append( TextDocument( diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index ad3a25f022..d8fc2b9512 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -19,7 +19,7 @@ async def test_json_loader_one_file_one_object(): reader = create_input_reader(config, storage) documents = await reader.read_files() assert len(documents) == 1 - assert documents[0].title == "input.json (0)" + assert documents[0].title == "input.json" assert documents[0].raw_data == { "title": "Hello", "text": "Hi how are you today?", From 9d161bdd9ffd54bcb6e654c3748a3b4bccfbdbde Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Wed, 7 Jan 2026 14:10:48 -0800 Subject: [PATCH 14/30] Typo --- .../graphrag/graphrag/index/input/structured_file_reader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index 9e8475b402..274f89dcd8 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -38,7 +38,7 @@ async def process_data_columns( for index, row in enumerate(rows): # text column is required - harvest from dict text = row[self._text_column] - # id is optional - generate from harvest from dict or hash from text + # id is optional - harvest from dict or hash from text id = ( row[self._id_column] if self._id_column From 164c5e1188b9bea3b5ff15edb76767045bf6c7fb Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Wed, 7 Jan 2026 16:21:21 -0800 Subject: [PATCH 15/30] Add get_property utility for nested dictionary access with dot notation --- .../graphrag/index/input/get_property.py | 36 +++++++++ .../graphrag/index/input/text_document.py | 15 +++- .../unit/indexing/input/test_text_document.py | 76 +++++++++++++++++++ 3 files changed, 123 insertions(+), 4 deletions(-) create mode 100644 packages/graphrag/graphrag/index/input/get_property.py create mode 100644 tests/unit/indexing/input/test_text_document.py diff --git a/packages/graphrag/graphrag/index/input/get_property.py b/packages/graphrag/graphrag/index/input/get_property.py new file mode 100644 index 0000000000..8c82d69885 --- /dev/null +++ b/packages/graphrag/graphrag/index/input/get_property.py @@ -0,0 +1,36 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""Utility for retrieving properties from nested dictionaries.""" + +from typing import Any + + +def get_property(data: dict[str, Any], path: str) -> Any: + """Retrieve a property from a dictionary using dot notation. + + Parameters + ---------- + data : dict[str, Any] + The dictionary to retrieve the property from. + path : str + A dot-separated string representing the path to the property (e.g., "foo.bar.baz"). + + Returns + ------- + Any + The value at the specified path. + + Raises + ------ + KeyError + If the path does not exist in the dictionary. + """ + keys = path.split(".") + current = data + for key in keys: + if not isinstance(current, dict) or key not in current: + msg = f"Property '{path}' not found" + raise KeyError(msg) + current = current[key] + return current diff --git a/packages/graphrag/graphrag/index/input/text_document.py b/packages/graphrag/graphrag/index/input/text_document.py index 691393f71f..472d36ec08 100644 --- a/packages/graphrag/graphrag/index/input/text_document.py +++ b/packages/graphrag/graphrag/index/input/text_document.py @@ -3,9 +3,14 @@ """TextDocument dataclass.""" +import logging from dataclasses import dataclass from typing import Any +from graphrag.index.input.get_property import get_property + +logger = logging.getLogger(__name__) + @dataclass class TextDocument: @@ -37,10 +42,12 @@ def pluck_metadata(self, fields: list[str]) -> dict[str, Any]: value = getattr(self, field) else: raw = self.raw_data or {} - if field not in raw: - msg = f"Metadata field '{field}' not found in TextDocument standard fields or raw_data. Please check your configuration." - raise ValueError(msg) - value = raw.get(field, None) + value = get_property(raw, field) + if value is None: + logger.warning( + "Metadata field '%s' not found in TextDocument standard fields or raw_data. Please check your configuration.", + field, + ) if value is not None: metadata[field] = value return metadata diff --git a/tests/unit/indexing/input/test_text_document.py b/tests/unit/indexing/input/test_text_document.py new file mode 100644 index 0000000000..6d1ff877c0 --- /dev/null +++ b/tests/unit/indexing/input/test_text_document.py @@ -0,0 +1,76 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +import pytest +from graphrag.index.input.get_property import get_property + + +def test_get_property_single_level(): + data = {"foo": "bar"} + assert get_property(data, "foo") == "bar" + + +def test_get_property_two_levels(): + data = {"foo": {"bar": "baz"}} + assert get_property(data, "foo.bar") == "baz" + + +def test_get_property_three_levels(): + data = {"a": {"b": {"c": "value"}}} + assert get_property(data, "a.b.c") == "value" + + +def test_get_property_returns_dict(): + data = {"foo": {"bar": {"baz": "qux"}}} + result = get_property(data, "foo.bar") + assert result == {"baz": "qux"} + + +def test_get_property_missing_key_raises(): + data = {"foo": "bar"} + with pytest.raises(KeyError): + get_property(data, "missing") + + +def test_get_property_missing_nested_key_raises(): + data = {"foo": {"bar": "baz"}} + with pytest.raises(KeyError): + get_property(data, "foo.missing") + + +def test_get_property_non_dict_intermediate_raises(): + data = {"foo": "bar"} + with pytest.raises(KeyError): + get_property(data, "foo.bar") + + +def test_get_property_empty_dict_raises(): + data = {} + with pytest.raises(KeyError): + get_property(data, "foo") + + +def test_get_property_with_none_value(): + data = {"foo": None} + assert get_property(data, "foo") is None + + +def test_get_property_with_list_value(): + data = {"foo": [1, 2, 3]} + assert get_property(data, "foo") == [1, 2, 3] + + +def test_get_property_list_intermediate_raises(): + data = {"foo": [{"bar": "baz"}]} + with pytest.raises(KeyError): + get_property(data, "foo.bar") + + +def test_get_property_numeric_value(): + data = {"count": 42} + assert get_property(data, "count") == 42 + + +def test_get_property_boolean_value(): + data = {"enabled": True} + assert get_property(data, "enabled") is True From 868fde1c22bb9d9b146c6064613426d7f531b6f4 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Wed, 7 Jan 2026 16:22:00 -0800 Subject: [PATCH 16/30] Update structured_file_reader to use get_property utility --- .../graphrag/index/input/structured_file_reader.py | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag/graphrag/index/input/structured_file_reader.py index 274f89dcd8..14df809281 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag/graphrag/index/input/structured_file_reader.py @@ -6,6 +6,7 @@ import logging from typing import Any +from graphrag.index.input.get_property import get_property from graphrag.index.input.input_reader import InputReader from graphrag.index.input.text_document import TextDocument from graphrag.index.utils.hashing import gen_sha512_hash @@ -37,16 +38,20 @@ async def process_data_columns( documents = [] for index, row in enumerate(rows): # text column is required - harvest from dict - text = row[self._text_column] + text = get_property(row, self._text_column) # id is optional - harvest from dict or hash from text id = ( - row[self._id_column] + get_property(row, self._id_column) if self._id_column else gen_sha512_hash({"text": text}, ["text"]) ) # title is optional - harvest from dict or use filename num = f" ({index})" if len(rows) > 1 else "" - title = row[self._title_column] if self._title_column else f"{path}{num}" + title = ( + get_property(row, self._title_column) + if self._title_column + else f"{path}{num}" + ) creation_date = await self._storage.get_creation_date(path) documents.append( TextDocument( From e8e316f29105cf0dde9e912ed837ab715856fa11 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Wed, 7 Jan 2026 16:40:18 -0800 Subject: [PATCH 17/30] Extract input module into new graphrag-input monorepo package - Create new graphrag-input package with input loading utilities - Move InputConfig, InputFileType, InputReader, TextDocument, and file readers (CSV, JSON, JSONL, Text) - Add get_property utility for nested dictionary access with dot notation - Include hashing utility for document ID generation - Update all imports throughout codebase to use graphrag_input - Add package to workspace configuration and release tasks - Remove old graphrag.index.input module --- packages/graphrag-input/README.md | 36 ++++++++++++++++ .../graphrag-input/graphrag_input/__init__.py | 20 +++++++++ .../graphrag_input}/csv.py | 4 +- .../graphrag_input}/get_property.py | 0 .../graphrag-input/graphrag_input/hashing.py | 27 ++++++++++++ .../graphrag_input}/input_config.py | 19 ++++---- .../graphrag_input}/input_file_type.py | 0 .../graphrag_input}/input_reader.py | 2 +- .../graphrag_input}/input_reader_factory.py | 14 +++--- .../graphrag_input}/json.py | 4 +- .../graphrag_input}/jsonl.py | 8 ++-- .../graphrag_input}/structured_file_reader.py | 10 ++--- .../graphrag_input}/text.py | 6 +-- .../graphrag_input}/text_document.py | 2 +- packages/graphrag-input/pyproject.toml | 43 +++++++++++++++++++ packages/graphrag/graphrag/config/defaults.py | 2 +- .../config/models/graph_rag_config.py | 2 +- .../graphrag/graphrag/index/input/__init__.py | 4 -- .../index/workflows/create_base_text_units.py | 2 +- .../index/workflows/load_input_documents.py | 5 +-- .../index/workflows/load_update_documents.py | 4 +- .../graphrag/prompt_tune/loader/input.py | 2 +- packages/graphrag/pyproject.toml | 1 + pyproject.toml | 3 ++ tests/unit/config/utils.py | 2 +- tests/unit/indexing/input/test_csv_loader.py | 6 +-- tests/unit/indexing/input/test_json_loader.py | 4 +- .../unit/indexing/input/test_jsonl_loader.py | 4 +- .../unit/indexing/input/test_text_document.py | 2 +- tests/unit/indexing/input/test_txt_loader.py | 4 +- uv.lock | 20 +++++++++ 31 files changed, 196 insertions(+), 66 deletions(-) create mode 100644 packages/graphrag-input/README.md create mode 100644 packages/graphrag-input/graphrag_input/__init__.py rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/csv.py (84%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/get_property.py (100%) create mode 100644 packages/graphrag-input/graphrag_input/hashing.py rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/input_config.py (66%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/input_file_type.py (100%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/input_reader.py (97%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/input_reader_factory.py (84%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/json.py (86%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/jsonl.py (77%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/structured_file_reader.py (87%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/text.py (84%) rename packages/{graphrag/graphrag/index/input => graphrag-input/graphrag_input}/text_document.py (97%) create mode 100644 packages/graphrag-input/pyproject.toml delete mode 100644 packages/graphrag/graphrag/index/input/__init__.py diff --git a/packages/graphrag-input/README.md b/packages/graphrag-input/README.md new file mode 100644 index 0000000000..74c40a9255 --- /dev/null +++ b/packages/graphrag-input/README.md @@ -0,0 +1,36 @@ +# GraphRAG Inputs + +This package provides input document loading utilities for GraphRAG, supporting multiple file formats including CSV, JSON, JSON Lines, and plain text. + +## Supported File Types + +- **CSV** - Tabular data with configurable column mappings +- **JSON** - JSON files with configurable property paths +- **JSON Lines** - Line-delimited JSON records +- **Text** - Plain text files + +## Examples + +Basic usage with the factory: +```python +from graphrag_input import create_input_reader, InputConfig, InputFileType +from graphrag_storage import StorageConfig, create_storage + +config = InputConfig( + storage=StorageConfig(base_dir="./input"), + file_type=InputFileType.Csv, + text_column="content", + title_column="title", +) +storage = create_storage(config.storage) +reader = create_input_reader(config, storage) +documents = await reader.read_files() +``` + +Using dot notation for nested properties: +```python +from graphrag_input import get_property + +data = {"user": {"profile": {"name": "Alice"}}} +name = get_property(data, "user.profile.name") # Returns "Alice" +``` diff --git a/packages/graphrag-input/graphrag_input/__init__.py b/packages/graphrag-input/graphrag_input/__init__.py new file mode 100644 index 0000000000..4ed9048f85 --- /dev/null +++ b/packages/graphrag-input/graphrag_input/__init__.py @@ -0,0 +1,20 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""GraphRAG input document loading package.""" + +from graphrag_input.get_property import get_property +from graphrag_input.input_config import InputConfig +from graphrag_input.input_file_type import InputFileType +from graphrag_input.input_reader import InputReader +from graphrag_input.input_reader_factory import create_input_reader +from graphrag_input.text_document import TextDocument + +__all__ = [ + "InputConfig", + "InputFileType", + "InputReader", + "TextDocument", + "create_input_reader", + "get_property", +] diff --git a/packages/graphrag/graphrag/index/input/csv.py b/packages/graphrag-input/graphrag_input/csv.py similarity index 84% rename from packages/graphrag/graphrag/index/input/csv.py rename to packages/graphrag-input/graphrag_input/csv.py index e5830984a3..bcef1abe04 100644 --- a/packages/graphrag/graphrag/index/input/csv.py +++ b/packages/graphrag-input/graphrag_input/csv.py @@ -6,8 +6,8 @@ import csv import logging -from graphrag.index.input.structured_file_reader import StructuredFileReader -from graphrag.index.input.text_document import TextDocument +from graphrag_input.structured_file_reader import StructuredFileReader +from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) diff --git a/packages/graphrag/graphrag/index/input/get_property.py b/packages/graphrag-input/graphrag_input/get_property.py similarity index 100% rename from packages/graphrag/graphrag/index/input/get_property.py rename to packages/graphrag-input/graphrag_input/get_property.py diff --git a/packages/graphrag-input/graphrag_input/hashing.py b/packages/graphrag-input/graphrag_input/hashing.py new file mode 100644 index 0000000000..915824cd9f --- /dev/null +++ b/packages/graphrag-input/graphrag_input/hashing.py @@ -0,0 +1,27 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""Hashing utilities.""" + +from collections.abc import Iterable +from hashlib import sha512 +from typing import Any + + +def gen_sha512_hash(item: dict[str, Any], hashcode: Iterable[str]) -> str: + """Generate a SHA512 hash. + + Parameters + ---------- + item : dict[str, Any] + The dictionary containing values to hash. + hashcode : Iterable[str] + The keys to include in the hash. + + Returns + ------- + str + The SHA512 hash as a hexadecimal string. + """ + hashed = "".join([str(item[column]) for column in hashcode]) + return f"{sha512(hashed.encode('utf-8'), usedforsecurity=False).hexdigest()}" diff --git a/packages/graphrag/graphrag/index/input/input_config.py b/packages/graphrag-input/graphrag_input/input_config.py similarity index 66% rename from packages/graphrag/graphrag/index/input/input_config.py rename to packages/graphrag-input/graphrag_input/input_config.py index a378df1a01..0059e3f6ce 100644 --- a/packages/graphrag/graphrag/index/input/input_config.py +++ b/packages/graphrag-input/graphrag_input/input_config.py @@ -6,8 +6,7 @@ from graphrag_storage import StorageConfig from pydantic import BaseModel, ConfigDict, Field -import graphrag.config.defaults as defs -from graphrag.config.defaults import graphrag_config_defaults +from graphrag_input.input_file_type import InputFileType class InputConfig(BaseModel): @@ -18,31 +17,29 @@ class InputConfig(BaseModel): storage: StorageConfig = Field( description="The storage configuration to use for reading input documents.", - default=StorageConfig( - base_dir=graphrag_config_defaults.input.storage.base_dir, - ), + default_factory=lambda: StorageConfig(base_dir="input"), ) file_type: str = Field( description="The input file type to use.", - default=graphrag_config_defaults.input.file_type, + default=InputFileType.Text, ) encoding: str | None = Field( description="The input file encoding to use.", - default=defs.graphrag_config_defaults.input.encoding, + default=None, ) file_pattern: str | None = Field( description="The input file pattern to use.", - default=graphrag_config_defaults.input.file_pattern, + default=None, ) id_column: str | None = Field( description="The input ID column to use.", - default=graphrag_config_defaults.input.id_column, + default=None, ) title_column: str | None = Field( description="The input title column to use.", - default=graphrag_config_defaults.input.title_column, + default=None, ) text_column: str | None = Field( description="The input text column to use.", - default=graphrag_config_defaults.input.text_column, + default=None, ) diff --git a/packages/graphrag/graphrag/index/input/input_file_type.py b/packages/graphrag-input/graphrag_input/input_file_type.py similarity index 100% rename from packages/graphrag/graphrag/index/input/input_file_type.py rename to packages/graphrag-input/graphrag_input/input_file_type.py diff --git a/packages/graphrag/graphrag/index/input/input_reader.py b/packages/graphrag-input/graphrag_input/input_reader.py similarity index 97% rename from packages/graphrag/graphrag/index/input/input_reader.py rename to packages/graphrag-input/graphrag_input/input_reader.py index 246e768b06..3533608f66 100644 --- a/packages/graphrag/graphrag/index/input/input_reader.py +++ b/packages/graphrag-input/graphrag_input/input_reader.py @@ -13,7 +13,7 @@ if TYPE_CHECKING: from graphrag_storage import Storage - from graphrag.index.input.text_document import TextDocument + from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) diff --git a/packages/graphrag/graphrag/index/input/input_reader_factory.py b/packages/graphrag-input/graphrag_input/input_reader_factory.py similarity index 84% rename from packages/graphrag/graphrag/index/input/input_reader_factory.py rename to packages/graphrag-input/graphrag_input/input_reader_factory.py index ccd16bf21c..4dd1bde78b 100644 --- a/packages/graphrag/graphrag/index/input/input_reader_factory.py +++ b/packages/graphrag-input/graphrag_input/input_reader_factory.py @@ -10,9 +10,9 @@ from graphrag_common.factory.factory import ServiceScope from graphrag_storage.storage import Storage -from graphrag.index.input.input_config import InputConfig -from graphrag.index.input.input_file_type import InputFileType -from graphrag.index.input.input_reader import InputReader +from graphrag_input.input_config import InputConfig +from graphrag_input.input_file_type import InputFileType +from graphrag_input.input_reader import InputReader logger = logging.getLogger(__name__) @@ -62,19 +62,19 @@ def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: if input_strategy not in input_reader_factory: match input_strategy: case InputFileType.Csv: - from graphrag.index.input.csv import CSVFileReader + from graphrag_input.csv import CSVFileReader register_input_reader(InputFileType.Csv, CSVFileReader) case InputFileType.Text: - from graphrag.index.input.text import TextFileReader + from graphrag_input.text import TextFileReader register_input_reader(InputFileType.Text, TextFileReader) case InputFileType.Json: - from graphrag.index.input.json import JSONFileReader + from graphrag_input.json import JSONFileReader register_input_reader(InputFileType.Json, JSONFileReader) case InputFileType.JsonLines: - from graphrag.index.input.jsonl import JSONLinesFileReader + from graphrag_input.jsonl import JSONLinesFileReader register_input_reader(InputFileType.JsonLines, JSONLinesFileReader) case _: diff --git a/packages/graphrag/graphrag/index/input/json.py b/packages/graphrag-input/graphrag_input/json.py similarity index 86% rename from packages/graphrag/graphrag/index/input/json.py rename to packages/graphrag-input/graphrag_input/json.py index ef13b260fc..fbbd5defc8 100644 --- a/packages/graphrag/graphrag/index/input/json.py +++ b/packages/graphrag-input/graphrag_input/json.py @@ -6,8 +6,8 @@ import json import logging -from graphrag.index.input.structured_file_reader import StructuredFileReader -from graphrag.index.input.text_document import TextDocument +from graphrag_input.structured_file_reader import StructuredFileReader +from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) diff --git a/packages/graphrag/graphrag/index/input/jsonl.py b/packages/graphrag-input/graphrag_input/jsonl.py similarity index 77% rename from packages/graphrag/graphrag/index/input/jsonl.py rename to packages/graphrag-input/graphrag_input/jsonl.py index a3a3a929a5..9fce1a6e1d 100644 --- a/packages/graphrag/graphrag/index/input/jsonl.py +++ b/packages/graphrag-input/graphrag_input/jsonl.py @@ -1,19 +1,19 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -"""A module containing 'JSONFileReader' model.""" +"""A module containing 'JSONLinesFileReader' model.""" import json import logging -from graphrag.index.input.structured_file_reader import StructuredFileReader -from graphrag.index.input.text_document import TextDocument +from graphrag_input.structured_file_reader import StructuredFileReader +from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) class JSONLinesFileReader(StructuredFileReader): - """Reader implementation for json files.""" + """Reader implementation for json lines files.""" async def read_file(self, path: str) -> list[TextDocument]: """Read a JSON lines file into a list of documents. diff --git a/packages/graphrag/graphrag/index/input/structured_file_reader.py b/packages/graphrag-input/graphrag_input/structured_file_reader.py similarity index 87% rename from packages/graphrag/graphrag/index/input/structured_file_reader.py rename to packages/graphrag-input/graphrag_input/structured_file_reader.py index 14df809281..45628ff94d 100644 --- a/packages/graphrag/graphrag/index/input/structured_file_reader.py +++ b/packages/graphrag-input/graphrag_input/structured_file_reader.py @@ -1,15 +1,15 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -"""A module containing 'CSVFileReader' model.""" +"""A module containing 'StructuredFileReader' model.""" import logging from typing import Any -from graphrag.index.input.get_property import get_property -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.text_document import TextDocument -from graphrag.index.utils.hashing import gen_sha512_hash +from graphrag_input.get_property import get_property +from graphrag_input.hashing import gen_sha512_hash +from graphrag_input.input_reader import InputReader +from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) diff --git a/packages/graphrag/graphrag/index/input/text.py b/packages/graphrag-input/graphrag_input/text.py similarity index 84% rename from packages/graphrag/graphrag/index/input/text.py rename to packages/graphrag-input/graphrag_input/text.py index d5d14e1c4a..2db71d43c3 100644 --- a/packages/graphrag/graphrag/index/input/text.py +++ b/packages/graphrag-input/graphrag_input/text.py @@ -6,9 +6,9 @@ import logging from pathlib import Path -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.text_document import TextDocument -from graphrag.index.utils.hashing import gen_sha512_hash +from graphrag_input.hashing import gen_sha512_hash +from graphrag_input.input_reader import InputReader +from graphrag_input.text_document import TextDocument logger = logging.getLogger(__name__) diff --git a/packages/graphrag/graphrag/index/input/text_document.py b/packages/graphrag-input/graphrag_input/text_document.py similarity index 97% rename from packages/graphrag/graphrag/index/input/text_document.py rename to packages/graphrag-input/graphrag_input/text_document.py index 472d36ec08..67b2286a32 100644 --- a/packages/graphrag/graphrag/index/input/text_document.py +++ b/packages/graphrag-input/graphrag_input/text_document.py @@ -7,7 +7,7 @@ from dataclasses import dataclass from typing import Any -from graphrag.index.input.get_property import get_property +from graphrag_input.get_property import get_property logger = logging.getLogger(__name__) diff --git a/packages/graphrag-input/pyproject.toml b/packages/graphrag-input/pyproject.toml new file mode 100644 index 0000000000..36914a2cff --- /dev/null +++ b/packages/graphrag-input/pyproject.toml @@ -0,0 +1,43 @@ +[project] +name = "graphrag-input" +version = "2.7.0" +description = "Input document loading utilities for GraphRAG" +authors = [ + {name = "Alonso Guevara Fernández", email = "alonsog@microsoft.com"}, + {name = "Andrés Morales Esquivel", email = "andresmor@microsoft.com"}, + {name = "Chris Trevino", email = "chtrevin@microsoft.com"}, + {name = "David Tittsworth", email = "datittsw@microsoft.com"}, + {name = "Dayenne de Souza", email = "ddesouza@microsoft.com"}, + {name = "Derek Worthen", email = "deworthe@microsoft.com"}, + {name = "Gaudy Blanco Meneses", email = "gaudyb@microsoft.com"}, + {name = "Ha Trinh", email = "trinhha@microsoft.com"}, + {name = "Jonathan Larson", email = "jolarso@microsoft.com"}, + {name = "Josh Bradley", email = "joshbradley@microsoft.com"}, + {name = "Kate Lytvynets", email = "kalytv@microsoft.com"}, + {name = "Kenny Zhang", email = "zhangken@microsoft.com"}, + {name = "Mónica Carvajal"}, + {name = "Nathan Evans", email = "naevans@microsoft.com"}, + {name = "Rodrigo Racanicci", email = "rracanicci@microsoft.com"}, + {name = "Sarah Smith", email = "smithsarah@microsoft.com"}, +] +license = {text = "MIT"} +readme = "README.md" +requires-python = ">=3.11,<3.14" +classifiers = [ + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", +] +dependencies = [ + "graphrag-common==2.7.0", + "graphrag-storage==2.7.0", + "pydantic~=2.10", +] + +[project.urls] +Source = "https://github.com/microsoft/graphrag" + +[build-system] +requires = ["hatchling>=1.27.0,<2.0.0"] +build-backend = "hatchling.build" diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index dc2a857c78..6fbd94e1df 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -9,6 +9,7 @@ from graphrag_cache import CacheType from graphrag_chunking.chunk_strategy_type import ChunkerType +from graphrag_input import InputFileType from graphrag_storage import StorageType from graphrag.config.embeddings import default_embeddings @@ -20,7 +21,6 @@ ReportingType, VectorStoreType, ) -from graphrag.index.input.input_file_type import InputFileType from graphrag.index.operations.build_noun_graph.np_extractors.stop_words import ( EN_STOP_WORDS, ) diff --git a/packages/graphrag/graphrag/config/models/graph_rag_config.py b/packages/graphrag/graphrag/config/models/graph_rag_config.py index ca00eb7327..a856d233ab 100644 --- a/packages/graphrag/graphrag/config/models/graph_rag_config.py +++ b/packages/graphrag/graphrag/config/models/graph_rag_config.py @@ -9,6 +9,7 @@ from devtools import pformat from graphrag_cache import CacheConfig from graphrag_chunking.chunking_config import ChunkingConfig +from graphrag_input import InputConfig from graphrag_storage import StorageConfig, StorageType from pydantic import BaseModel, Field, model_validator @@ -32,7 +33,6 @@ SummarizeDescriptionsConfig, ) from graphrag.config.models.vector_store_config import VectorStoreConfig -from graphrag.index.input.input_config import InputConfig from graphrag.language_model.providers.litellm.services.rate_limiter.rate_limiter_factory import ( RateLimiterFactory, ) diff --git a/packages/graphrag/graphrag/index/input/__init__.py b/packages/graphrag/graphrag/index/input/__init__.py deleted file mode 100644 index 15177c91db..0000000000 --- a/packages/graphrag/graphrag/index/input/__init__.py +++ /dev/null @@ -1,4 +0,0 @@ -# Copyright (c) 2024 Microsoft Corporation. -# Licensed under the MIT License - -"""The Indexing Engine input package root.""" diff --git a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py index df933b521c..0723327b7a 100644 --- a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py +++ b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py @@ -10,10 +10,10 @@ from graphrag_chunking.add_metadata import add_metadata from graphrag_chunking.chunker import Chunker from graphrag_chunking.chunker_factory import create_chunker +from graphrag_input import TextDocument from graphrag.callbacks.workflow_callbacks import WorkflowCallbacks from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.text_document import TextDocument from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.index.utils.hashing import gen_sha512_hash diff --git a/packages/graphrag/graphrag/index/workflows/load_input_documents.py b/packages/graphrag/graphrag/index/workflows/load_input_documents.py index 55f503a941..1fa01827e6 100644 --- a/packages/graphrag/graphrag/index/workflows/load_input_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_input_documents.py @@ -6,12 +6,9 @@ import logging import pandas as pd +from graphrag_input import InputReader, create_input_reader from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.input_reader_factory import ( - create_input_reader, -) from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.utils.storage import write_table_to_storage diff --git a/packages/graphrag/graphrag/index/workflows/load_update_documents.py b/packages/graphrag/graphrag/index/workflows/load_update_documents.py index 4ccd96548b..1cab6cabfe 100644 --- a/packages/graphrag/graphrag/index/workflows/load_update_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_update_documents.py @@ -6,11 +6,11 @@ import logging import pandas as pd +from graphrag_input.input_reader import InputReader +from graphrag_input.input_reader_factory import create_input_reader from graphrag_storage import Storage from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.input_reader import InputReader -from graphrag.index.input.input_reader_factory import create_input_reader from graphrag.index.typing.context import PipelineRunContext from graphrag.index.typing.workflow import WorkflowFunctionOutput from graphrag.index.update.incremental_index import get_delta_docs diff --git a/packages/graphrag/graphrag/prompt_tune/loader/input.py b/packages/graphrag/graphrag/prompt_tune/loader/input.py index 46a956793c..edda2457e3 100644 --- a/packages/graphrag/graphrag/prompt_tune/loader/input.py +++ b/packages/graphrag/graphrag/prompt_tune/loader/input.py @@ -10,11 +10,11 @@ import pandas as pd from graphrag_cache.noop_cache import NoopCache from graphrag_chunking.chunker_factory import create_chunker +from graphrag_input import create_input_reader from graphrag_storage import create_storage from graphrag.callbacks.noop_workflow_callbacks import NoopWorkflowCallbacks from graphrag.config.models.graph_rag_config import GraphRagConfig -from graphrag.index.input.input_reader_factory import create_input_reader from graphrag.index.operations.embed_text.run_embed_text import ( run_embed_text, ) diff --git a/packages/graphrag/pyproject.toml b/packages/graphrag/pyproject.toml index 5c2cb687d7..769634bcb3 100644 --- a/packages/graphrag/pyproject.toml +++ b/packages/graphrag/pyproject.toml @@ -41,6 +41,7 @@ dependencies = [ "environs~=11.0", "graphrag-cache==2.7.0", "graphrag-common==2.7.0", + "graphrag-input==2.7.0", "graphrag-storage==2.7.0", "graspologic-native~=1.2", "json-repair~=0.30", diff --git a/pyproject.toml b/pyproject.toml index 1f4ab1d8c7..b2ec49f4c1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -55,6 +55,7 @@ members = ["packages/*"] [tool.uv.sources] graphrag-chunking = { workspace = true } graphrag-common = { workspace = true } +graphrag-input = { workspace = true } graphrag-storage = { workspace = true } graphrag-cache = { workspace = true } @@ -75,6 +76,7 @@ _semversioner_update_graphrag_chunking_toml_version = "update-toml update --file _semversioner_update_graphrag_common_toml_version = "update-toml update --file packages/graphrag-common/pyproject.toml --path project.version --value $(uv run semversioner current-version)" _semversioner_update_graphrag_storage_toml_version = "update-toml update --file packages/graphrag-storage/pyproject.toml --path project.version --value $(uv run semversioner current-version)" _semversioner_update_graphrag_cache_toml_version = "update-toml update --file packages/graphrag-cache/pyproject.toml --path project.version --value $(uv run semversioner current-version)" +_semversioner_update_graphrag_input_toml_version = "update-toml update --file packages/graphrag-input/pyproject.toml --path project.version --value $(uv run semversioner current-version)" _semversioner_update_workspace_dependency_versions = "python -m scripts.update_workspace_dependency_versions" semversioner_add = "semversioner add-change" coverage_report = 'coverage report --omit "**/tests/**" --show-missing' @@ -110,6 +112,7 @@ sequence = [ '_semversioner_update_graphrag_toml_version', '_semversioner_update_graphrag_common_toml_version', '_semversioner_update_graphrag_chunking_toml_version', + '_semversioner_update_graphrag_input_toml_version', '_semversioner_update_graphrag_storage_toml_version', '_semversioner_update_graphrag_cache_toml_version', '_semversioner_update_workspace_dependency_versions', diff --git a/tests/unit/config/utils.py b/tests/unit/config/utils.py index b54e465dd4..3b4cfea0bc 100644 --- a/tests/unit/config/utils.py +++ b/tests/unit/config/utils.py @@ -26,9 +26,9 @@ SummarizeDescriptionsConfig, ) from graphrag.config.models.vector_store_config import VectorStoreConfig -from graphrag.index.input.input_config import InputConfig from graphrag_cache import CacheConfig from graphrag_chunking.chunking_config import ChunkingConfig +from graphrag_input import InputConfig from graphrag_storage import StorageConfig from pydantic import BaseModel diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index fba94d6196..b57d6e7fa3 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -1,11 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.index.input.input_config import InputConfig -from graphrag.index.input.input_file_type import InputFileType -from graphrag.index.input.input_reader_factory import ( - create_input_reader, -) +from graphrag_input import InputConfig, InputFileType, create_input_reader from graphrag_storage import StorageConfig, create_storage diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index d8fc2b9512..b70228e739 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -1,9 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.index.input.input_config import InputConfig -from graphrag.index.input.input_file_type import InputFileType -from graphrag.index.input.input_reader_factory import create_input_reader +from graphrag_input import InputConfig, InputFileType, create_input_reader from graphrag_storage import StorageConfig, create_storage diff --git a/tests/unit/indexing/input/test_jsonl_loader.py b/tests/unit/indexing/input/test_jsonl_loader.py index 3293693875..81deaa8b52 100644 --- a/tests/unit/indexing/input/test_jsonl_loader.py +++ b/tests/unit/indexing/input/test_jsonl_loader.py @@ -1,9 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.index.input.input_config import InputConfig -from graphrag.index.input.input_file_type import InputFileType -from graphrag.index.input.input_reader_factory import create_input_reader +from graphrag_input import InputConfig, InputFileType, create_input_reader from graphrag_storage import StorageConfig, create_storage diff --git a/tests/unit/indexing/input/test_text_document.py b/tests/unit/indexing/input/test_text_document.py index 6d1ff877c0..d71c515bf5 100644 --- a/tests/unit/indexing/input/test_text_document.py +++ b/tests/unit/indexing/input/test_text_document.py @@ -2,7 +2,7 @@ # Licensed under the MIT License import pytest -from graphrag.index.input.get_property import get_property +from graphrag_input import get_property def test_get_property_single_level(): diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index 0190876c65..f649d60841 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -1,9 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag.index.input.input_config import InputConfig -from graphrag.index.input.input_file_type import InputFileType -from graphrag.index.input.input_reader_factory import create_input_reader +from graphrag_input import InputConfig, InputFileType, create_input_reader from graphrag_storage import StorageConfig, create_storage diff --git a/uv.lock b/uv.lock index 94c8626cc5..95da3c7031 100644 --- a/uv.lock +++ b/uv.lock @@ -12,6 +12,7 @@ members = [ "graphrag-cache", "graphrag-chunking", "graphrag-common", + "graphrag-input", "graphrag-monorepo", "graphrag-storage", ] @@ -854,6 +855,7 @@ dependencies = [ { name = "fastuuid" }, { name = "graphrag-cache" }, { name = "graphrag-common" }, + { name = "graphrag-input" }, { name = "graphrag-storage" }, { name = "graspologic-native" }, { name = "json-repair" }, @@ -887,6 +889,7 @@ requires-dist = [ { name = "fastuuid", specifier = "~=0.13" }, { name = "graphrag-cache", editable = "packages/graphrag-cache" }, { name = "graphrag-common", editable = "packages/graphrag-common" }, + { name = "graphrag-input", editable = "packages/graphrag-input" }, { name = "graphrag-storage", editable = "packages/graphrag-storage" }, { name = "graspologic-native", specifier = "~=1.2" }, { name = "json-repair", specifier = "~=0.30" }, @@ -952,6 +955,23 @@ requires-dist = [ { name = "pyyaml", specifier = "~=6.0" }, ] +[[package]] +name = "graphrag-input" +version = "2.7.0" +source = { editable = "packages/graphrag-input" } +dependencies = [ + { name = "graphrag-common" }, + { name = "graphrag-storage" }, + { name = "pydantic" }, +] + +[package.metadata] +requires-dist = [ + { name = "graphrag-common", editable = "packages/graphrag-common" }, + { name = "graphrag-storage", editable = "packages/graphrag-storage" }, + { name = "pydantic", specifier = "~=2.10" }, +] + [[package]] name = "graphrag-monorepo" version = "0.0.0" From 39125b2b132aa62fae815afc8bee7917abbff319 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Wed, 7 Jan 2026 17:43:34 -0800 Subject: [PATCH 18/30] Rename ChunkResult to TextChunk and add transformer support - Rename chunk_result.py to text_chunk.py with ChunkResult -> TextChunk - Add 'original' field to TextChunk to track pre-transform text - Add optional transform callback to chunker.chunk() method - Add add_metadata transformer for prepending metadata to chunks - Update create_chunk_results to apply transforms and populate original - Update sentence_chunker and token_chunker with transform support - Refactor create_base_text_units to use new transformer pattern - Rename pluck_metadata to get/collect methods on TextDocument --- .../graphrag_chunking/add_metadata.py | 19 ---------- .../graphrag_chunking/chunk_result.py | 17 --------- .../graphrag_chunking/chunker.py | 7 +++- .../graphrag_chunking/create_chunk_results.py | 16 ++++---- .../graphrag_chunking/sentence_chunker.py | 10 +++-- .../graphrag_chunking/text_chunk.py | 29 ++++++++++++++ .../graphrag_chunking/token_chunker.py | 8 ++-- .../graphrag_chunking/transformers.py | 25 ++++++++++++ .../graphrag_input/text_document.py | 38 +++++++++++-------- .../index/workflows/create_base_text_units.py | 20 +++++----- tests/unit/chunking/test_prepend_metadata.py | 17 +++++---- 11 files changed, 122 insertions(+), 84 deletions(-) delete mode 100644 packages/graphrag-chunking/graphrag_chunking/add_metadata.py delete mode 100644 packages/graphrag-chunking/graphrag_chunking/chunk_result.py create mode 100644 packages/graphrag-chunking/graphrag_chunking/text_chunk.py create mode 100644 packages/graphrag-chunking/graphrag_chunking/transformers.py diff --git a/packages/graphrag-chunking/graphrag_chunking/add_metadata.py b/packages/graphrag-chunking/graphrag_chunking/add_metadata.py deleted file mode 100644 index 79203b3ce4..0000000000 --- a/packages/graphrag-chunking/graphrag_chunking/add_metadata.py +++ /dev/null @@ -1,19 +0,0 @@ -# Copyright (c) 2024 Microsoft Corporation. -# Licensed under the MIT License - -"""A module containing 'add_metadata' function.""" - - -def add_metadata( - text: str, - metadata: dict, - delimiter: str = ": ", - line_delimiter: str = "\n", - append: bool = False, -) -> str: - """Add metadata to the given text, prepending by default. This utility writes the dict as rows of key/value pairs.""" - metadata_str = ( - line_delimiter.join(f"{k}{delimiter}{v}" for k, v in metadata.items()) - + line_delimiter - ) - return text + metadata_str if append else metadata_str + text diff --git a/packages/graphrag-chunking/graphrag_chunking/chunk_result.py b/packages/graphrag-chunking/graphrag_chunking/chunk_result.py deleted file mode 100644 index d9b3177511..0000000000 --- a/packages/graphrag-chunking/graphrag_chunking/chunk_result.py +++ /dev/null @@ -1,17 +0,0 @@ -# Copyright (c) 2024 Microsoft Corporation. -# Licensed under the MIT License - -"""The ChunkResult dataclass.""" - -from dataclasses import dataclass - - -@dataclass -class ChunkResult: - """Result of chunking a document.""" - - text: str - index: int - start_char: int - end_char: int - token_count: int | None = None diff --git a/packages/graphrag-chunking/graphrag_chunking/chunker.py b/packages/graphrag-chunking/graphrag_chunking/chunker.py index 552b28a8a8..3e44ce46f4 100644 --- a/packages/graphrag-chunking/graphrag_chunking/chunker.py +++ b/packages/graphrag-chunking/graphrag_chunking/chunker.py @@ -4,9 +4,10 @@ """A module containing the 'Chunker' class.""" from abc import ABC, abstractmethod +from collections.abc import Callable from typing import Any -from graphrag_chunking.chunk_result import ChunkResult +from graphrag_chunking.text_chunk import TextChunk class Chunker(ABC): @@ -17,5 +18,7 @@ def __init__(self, **kwargs: Any) -> None: """Create a chunker instance.""" @abstractmethod - def chunk(self, text: str) -> list[ChunkResult]: + def chunk( + self, text: str, transform: Callable[[str], str] | None = None + ) -> list[TextChunk]: """Chunk method definition.""" diff --git a/packages/graphrag-chunking/graphrag_chunking/create_chunk_results.py b/packages/graphrag-chunking/graphrag_chunking/create_chunk_results.py index 3eb15befff..780de6a0bc 100644 --- a/packages/graphrag-chunking/graphrag_chunking/create_chunk_results.py +++ b/packages/graphrag-chunking/graphrag_chunking/create_chunk_results.py @@ -5,26 +5,28 @@ from collections.abc import Callable -from graphrag_chunking.chunk_result import ChunkResult +from graphrag_chunking.text_chunk import TextChunk def create_chunk_results( chunks: list[str], + transform: Callable[[str], str] | None = None, encode: Callable[[str], list[int]] | None = None, -) -> list[ChunkResult]: - """Create chunk results from a list of text chunks. The index assignments are 0-based and assume chunks we not stripped relative to the source text.""" +) -> list[TextChunk]: + """Create chunk results from a list of text chunks. The index assignments are 0-based and assume chunks were not stripped relative to the source text.""" results = [] start_char = 0 for index, chunk in enumerate(chunks): end_char = start_char + len(chunk) - 1 # 0-based indices - chunk = ChunkResult( - text=chunk, + result = TextChunk( + original=chunk, + text=transform(chunk) if transform else chunk, index=index, start_char=start_char, end_char=end_char, ) if encode: - chunk.token_count = len(encode(chunk.text)) - results.append(chunk) + result.token_count = len(encode(result.text)) + results.append(result) start_char = end_char + 1 return results diff --git a/packages/graphrag-chunking/graphrag_chunking/sentence_chunker.py b/packages/graphrag-chunking/graphrag_chunking/sentence_chunker.py index 91e68ccaf2..42d8a9a211 100644 --- a/packages/graphrag-chunking/graphrag_chunking/sentence_chunker.py +++ b/packages/graphrag-chunking/graphrag_chunking/sentence_chunker.py @@ -9,9 +9,9 @@ import nltk from graphrag_chunking.bootstrap_nltk import bootstrap -from graphrag_chunking.chunk_result import ChunkResult from graphrag_chunking.chunker import Chunker from graphrag_chunking.create_chunk_results import create_chunk_results +from graphrag_chunking.text_chunk import TextChunk class SentenceChunker(Chunker): @@ -24,10 +24,14 @@ def __init__( self._encode = encode bootstrap() - def chunk(self, text) -> list[ChunkResult]: + def chunk( + self, text: str, transform: Callable[[str], str] | None = None + ) -> list[TextChunk]: """Chunk the text into sentence-based chunks.""" sentences = nltk.sent_tokenize(text.strip()) - results = create_chunk_results(sentences, encode=self._encode) + results = create_chunk_results( + sentences, transform=transform, encode=self._encode + ) # nltk sentence tokenizer may trim whitespace, so we need to adjust start/end chars for index, result in enumerate(results): txt = result.text diff --git a/packages/graphrag-chunking/graphrag_chunking/text_chunk.py b/packages/graphrag-chunking/graphrag_chunking/text_chunk.py new file mode 100644 index 0000000000..876832f734 --- /dev/null +++ b/packages/graphrag-chunking/graphrag_chunking/text_chunk.py @@ -0,0 +1,29 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""The TextChunk dataclass.""" + +from dataclasses import dataclass + + +@dataclass +class TextChunk: + """Result of chunking a document.""" + + original: str + """Raw original text chunk before any transformation.""" + + text: str + """The final text content of this chunk.""" + + index: int + """Zero-based index of this chunk within the source document.""" + + start_char: int + """Character index where the raw chunk text begins in the source document.""" + + end_char: int + """Character index where the raw chunk text ends in the source document.""" + + token_count: int | None = None + """Number of tokens in the final chunk text, if computed.""" diff --git a/packages/graphrag-chunking/graphrag_chunking/token_chunker.py b/packages/graphrag-chunking/graphrag_chunking/token_chunker.py index 9a5e8ecfb0..41921a0415 100644 --- a/packages/graphrag-chunking/graphrag_chunking/token_chunker.py +++ b/packages/graphrag-chunking/graphrag_chunking/token_chunker.py @@ -6,9 +6,9 @@ from collections.abc import Callable from typing import Any -from graphrag_chunking.chunk_result import ChunkResult from graphrag_chunking.chunker import Chunker from graphrag_chunking.create_chunk_results import create_chunk_results +from graphrag_chunking.text_chunk import TextChunk class TokenChunker(Chunker): @@ -28,7 +28,9 @@ def __init__( self._encode = encode self._decode = decode - def chunk(self, text: str) -> list[ChunkResult]: + def chunk( + self, text: str, transform: Callable[[str], str] | None = None + ) -> list[TextChunk]: """Chunk the text into token-based chunks.""" chunks = split_text_on_tokens( text, @@ -37,7 +39,7 @@ def chunk(self, text: str) -> list[ChunkResult]: encode=self._encode, decode=self._decode, ) - return create_chunk_results(chunks, encode=self._encode) + return create_chunk_results(chunks, transform=transform, encode=self._encode) def split_text_on_tokens( diff --git a/packages/graphrag-chunking/graphrag_chunking/transformers.py b/packages/graphrag-chunking/graphrag_chunking/transformers.py new file mode 100644 index 0000000000..5d6f11e0e6 --- /dev/null +++ b/packages/graphrag-chunking/graphrag_chunking/transformers.py @@ -0,0 +1,25 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A collection of useful built-in transformers you can use for chunking.""" + +from collections.abc import Callable +from typing import Any + + +def add_metadata( + metadata: dict[str, Any], + delimiter: str = ": ", + line_delimiter: str = "\n", + append: bool = False, +) -> Callable[[str], str]: + """Add metadata to the given text, prepending by default. This utility writes the dict as rows of key/value pairs.""" + + def transformer(text: str) -> str: + metadata_str = ( + line_delimiter.join(f"{k}{delimiter}{v}" for k, v in metadata.items()) + + line_delimiter + ) + return text + metadata_str if append else metadata_str + text + + return transformer diff --git a/packages/graphrag-input/graphrag_input/text_document.py b/packages/graphrag-input/graphrag_input/text_document.py index 67b2286a32..a771f30d43 100644 --- a/packages/graphrag-input/graphrag_input/text_document.py +++ b/packages/graphrag-input/graphrag_input/text_document.py @@ -27,27 +27,33 @@ class TextDocument: raw_data: dict[str, Any] | None = None """Raw data from source document.""" - def pluck_metadata(self, fields: list[str]) -> dict[str, Any]: - """Extract metadata fields from a TextDocument. + def get(self, field: str, default_value: Any = None) -> Any: + """ + Get a single field from the TextDocument. + + Functions like the get method on a dictionary, returning default_value if the field is not found. + + Supports nested fields using dot notation. This takes a two step approach for flexibility: 1. If the field is one of the standard text document fields (id, title, text, creation_date), just grab it directly. This accommodates unstructured text for example, which just has the standard fields. 2. Otherwise. try to extract it from the raw_data dict. This allows users to specify any column from the original input file. - If a field does not exist in either location, we'll throw because that means the user config is incorrect. """ - metadata = {} + if field in ["id", "title", "text", "creation_date"]: + return getattr(self, field) + + raw = self.raw_data or {} + try: + return get_property(raw, field) + except KeyError: + return default_value + + def collect(self, fields: list[str]) -> dict[str, Any]: + """Extract data fields from a TextDocument into a dict.""" + data = {} for field in fields: - if field in ["id", "title", "text", "creation_date"]: - value = getattr(self, field) - else: - raw = self.raw_data or {} - value = get_property(raw, field) - if value is None: - logger.warning( - "Metadata field '%s' not found in TextDocument standard fields or raw_data. Please check your configuration.", - field, - ) + value = self.get(field) if value is not None: - metadata[field] = value - return metadata + data[field] = value + return data diff --git a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py index 0723327b7a..c14129b47f 100644 --- a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py +++ b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py @@ -7,9 +7,9 @@ from typing import Any, cast import pandas as pd -from graphrag_chunking.add_metadata import add_metadata from graphrag_chunking.chunker import Chunker from graphrag_chunking.chunker_factory import create_chunker +from graphrag_chunking.transformers import add_metadata from graphrag_input import TextDocument from graphrag.callbacks.workflow_callbacks import WorkflowCallbacks @@ -66,8 +66,6 @@ def create_base_text_units( logger.info("Starting chunking process for %d documents", total_rows) def chunker_with_logging(row: pd.Series, row_index: int) -> Any: - row["chunks"] = [chunk.text for chunk in chunker.chunk(row["text"])] - if prepend_metadata: # create a standard text document for metadata plucking # ignore any additional fields in case the input dataframe has extra columns @@ -76,13 +74,17 @@ def chunker_with_logging(row: pd.Series, row_index: int) -> Any: title=row["title"], text=row["text"], creation_date=row["creation_date"], - raw_data=row.get("raw_data", None), + raw_data=row["raw_data"], ) - metadata = document.pluck_metadata(prepend_metadata) - row["chunks"] = [ - add_metadata(chunk, metadata, line_delimiter=".\n") - for chunk in row["chunks"] - ] + metadata = document.collect(prepend_metadata) + transformer = add_metadata(metadata=metadata, line_delimiter=".\n") # delim with . for back-compat older indexes + else: + transformer = None + + row["chunks"] = [ + chunk.text for chunk in chunker.chunk(row["text"], transform=transformer) + ] + tick() logger.info("chunker progress: %d/%d", row_index + 1, total_rows) return row diff --git a/tests/unit/chunking/test_prepend_metadata.py b/tests/unit/chunking/test_prepend_metadata.py index 99f99c3093..74f5a698e5 100644 --- a/tests/unit/chunking/test_prepend_metadata.py +++ b/tests/unit/chunking/test_prepend_metadata.py @@ -1,14 +1,15 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag_chunking.add_metadata import add_metadata +from graphrag_chunking.transformers import add_metadata def test_add_metadata_one_row(): """Test prepending metadata to chunks""" chunks = ["This is a test.", "Another sentence."] metadata = {"message": "hello"} - results = [add_metadata(chunk, metadata) for chunk in chunks] + transformer = add_metadata(metadata) + results = [transformer(chunk) for chunk in chunks] assert results[0] == "message: hello\nThis is a test." assert results[1] == "message: hello\nAnother sentence." @@ -17,7 +18,8 @@ def test_add_metadata_one_row_append(): """Test prepending metadata to chunks""" chunks = ["This is a test.", "Another sentence."] metadata = {"message": "hello"} - results = [add_metadata(chunk, metadata, append=True) for chunk in chunks] + transformer = add_metadata(metadata, append=True) + results = [transformer(chunk) for chunk in chunks] assert results[0] == "This is a test.message: hello\n" assert results[1] == "Another sentence.message: hello\n" @@ -26,7 +28,8 @@ def test_add_metadata_multiple_rows(): """Test prepending metadata to chunks""" chunks = ["This is a test.", "Another sentence."] metadata = {"message": "hello", "tag": "first"} - results = [add_metadata(chunk, metadata) for chunk in chunks] + transformer = add_metadata(metadata) + results = [transformer(chunk) for chunk in chunks] assert results[0] == "message: hello\ntag: first\nThis is a test." assert results[1] == "message: hello\ntag: first\nAnother sentence." @@ -35,9 +38,7 @@ def test_add_metadata_custom_delimiters(): """Test prepending metadata to chunks""" chunks = ["This is a test.", "Another sentence."] metadata = {"message": "hello", "tag": "first"} - results = [ - add_metadata(chunk, metadata, delimiter="-", line_delimiter="_") - for chunk in chunks - ] + transformer = add_metadata(metadata, delimiter="-", line_delimiter="_") + results = [transformer(chunk) for chunk in chunks] assert results[0] == "message-hello_tag-first_This is a test." assert results[1] == "message-hello_tag-first_Another sentence." From 2f6d075b9758dcb9baefa508537a912ad2de15d3 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Thu, 8 Jan 2026 12:13:11 -0800 Subject: [PATCH 19/30] Back-compat comment --- .../graphrag/index/workflows/create_base_text_units.py | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py index c14129b47f..1b1d9b48a9 100644 --- a/packages/graphrag/graphrag/index/workflows/create_base_text_units.py +++ b/packages/graphrag/graphrag/index/workflows/create_base_text_units.py @@ -77,7 +77,9 @@ def chunker_with_logging(row: pd.Series, row_index: int) -> Any: raw_data=row["raw_data"], ) metadata = document.collect(prepend_metadata) - transformer = add_metadata(metadata=metadata, line_delimiter=".\n") # delim with . for back-compat older indexes + transformer = add_metadata( + metadata=metadata, line_delimiter=".\n" + ) # delim with . for back-compat older indexes else: transformer = None From a671aa4fe478354014e3599e35624d9aacb2ed9a Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Thu, 8 Jan 2026 15:41:28 -0800 Subject: [PATCH 20/30] Align input config type name with other factory configs --- docs/config/yaml.md | 4 ++-- docs/index/inputs.md | 4 ++-- packages/graphrag-input/README.md | 4 ++-- .../graphrag-input/graphrag_input/__init__.py | 4 ++-- packages/graphrag-input/graphrag_input/csv.py | 6 +++++ .../graphrag_input/input_config.py | 6 ++--- .../graphrag_input/input_reader.py | 19 ++++------------ .../graphrag_input/input_reader_factory.py | 22 +++++++++---------- .../{input_file_type.py => input_type.py} | 2 +- .../graphrag-input/graphrag_input/json.py | 6 +++++ .../graphrag-input/graphrag_input/jsonl.py | 6 +++++ .../graphrag-input/graphrag_input/text.py | 6 +++++ packages/graphrag/graphrag/config/defaults.py | 4 ++-- .../graphrag/graphrag/config/init_content.py | 2 +- tests/fixtures/azure/config.json | 2 +- tests/fixtures/azure/settings.yml | 2 +- tests/fixtures/min-csv/config.json | 2 +- tests/fixtures/min-csv/settings.yml | 2 +- tests/fixtures/text/config.json | 2 +- tests/smoke/test_fixtures.py | 6 ++--- tests/unit/config/utils.py | 2 +- tests/unit/indexing/input/test_csv_loader.py | 8 +++---- tests/unit/indexing/input/test_json_loader.py | 10 ++++----- .../unit/indexing/input/test_jsonl_loader.py | 6 ++--- tests/unit/indexing/input/test_txt_loader.py | 6 ++--- 25 files changed, 78 insertions(+), 65 deletions(-) rename packages/graphrag-input/graphrag_input/{input_file_type.py => input_type.py} (94%) diff --git a/docs/config/yaml.md b/docs/config/yaml.md index 10973fd211..1885db1fe5 100644 --- a/docs/config/yaml.md +++ b/docs/config/yaml.md @@ -87,9 +87,9 @@ Our pipeline can ingest .csv, .txt, or .json data from an input location. See th - `container_name` **str** - (blob/cosmosdb only) The Azure Storage container name. - `storage_account_blob_url` **str** - (blob only) The storage account blob URL to use. - `cosmosdb_account_blob_url` **str** - (cosmosdb only) The CosmosDB account blob URL to use. -- `file_type` **text|csv|json** - The type of input data to load. Default is `text` +- `type` **text|csv|json** - The type of input data to load. Default is `text` - `encoding` **str** - The encoding of the input file. Default is `utf-8` -- `file_pattern` **str** - A regex to match input files. Default is `.*\.csv$`, `.*\.txt$`, or `.*\.json$` depending on the specified `file_type`, but you can customize it if needed. +- `file_pattern` **str** - A regex to match input files. Default is `.*\.csv$`, `.*\.txt$`, or `.*\.json$` depending on the specified `type`, but you can customize it if needed. - `text_column` **str** - (CSV/JSON only) The text column name. If unset we expect a column named `text`. - `title_column` **str** - (CSV/JSON only) The title column name, filename will be used if unset. - `metadata` **list[str]** - (CSV/JSON only) The additional document attributes fields to keep. diff --git a/docs/index/inputs.md b/docs/index/inputs.md index 7f34370a70..458306bf49 100644 --- a/docs/index/inputs.md +++ b/docs/index/inputs.md @@ -116,7 +116,7 @@ settings.yaml ```yaml input: - file_type: text + type: text metadata: [title] chunks: @@ -194,7 +194,7 @@ settings.yaml ```yaml input: - file_type: json + type: json title_column: headline text_column: content diff --git a/packages/graphrag-input/README.md b/packages/graphrag-input/README.md index 74c40a9255..35ab13e18d 100644 --- a/packages/graphrag-input/README.md +++ b/packages/graphrag-input/README.md @@ -13,12 +13,12 @@ This package provides input document loading utilities for GraphRAG, supporting Basic usage with the factory: ```python -from graphrag_input import create_input_reader, InputConfig, InputFileType +from graphrag_input import create_input_reader, InputConfig, InputType from graphrag_storage import StorageConfig, create_storage config = InputConfig( storage=StorageConfig(base_dir="./input"), - file_type=InputFileType.Csv, + type=InputType.Csv, text_column="content", title_column="title", ) diff --git a/packages/graphrag-input/graphrag_input/__init__.py b/packages/graphrag-input/graphrag_input/__init__.py index 4ed9048f85..e742d7f06b 100644 --- a/packages/graphrag-input/graphrag_input/__init__.py +++ b/packages/graphrag-input/graphrag_input/__init__.py @@ -5,15 +5,15 @@ from graphrag_input.get_property import get_property from graphrag_input.input_config import InputConfig -from graphrag_input.input_file_type import InputFileType from graphrag_input.input_reader import InputReader from graphrag_input.input_reader_factory import create_input_reader +from graphrag_input.input_type import InputType from graphrag_input.text_document import TextDocument __all__ = [ "InputConfig", - "InputFileType", "InputReader", + "InputType", "TextDocument", "create_input_reader", "get_property", diff --git a/packages/graphrag-input/graphrag_input/csv.py b/packages/graphrag-input/graphrag_input/csv.py index bcef1abe04..22c8f180b2 100644 --- a/packages/graphrag-input/graphrag_input/csv.py +++ b/packages/graphrag-input/graphrag_input/csv.py @@ -15,6 +15,12 @@ class CSVFileReader(StructuredFileReader): """Reader implementation for csv files.""" + def __init__(self, file_pattern: str | None = None, **kwargs): + super().__init__( + file_pattern=file_pattern if file_pattern is not None else ".*\\.csv$", + **kwargs, + ) + async def read_file(self, path: str) -> list[TextDocument]: """Read a csv file into a list of documents. diff --git a/packages/graphrag-input/graphrag_input/input_config.py b/packages/graphrag-input/graphrag_input/input_config.py index 0059e3f6ce..0d6c25a896 100644 --- a/packages/graphrag-input/graphrag_input/input_config.py +++ b/packages/graphrag-input/graphrag_input/input_config.py @@ -6,7 +6,7 @@ from graphrag_storage import StorageConfig from pydantic import BaseModel, ConfigDict, Field -from graphrag_input.input_file_type import InputFileType +from graphrag_input.input_type import InputType class InputConfig(BaseModel): @@ -19,9 +19,9 @@ class InputConfig(BaseModel): description="The storage configuration to use for reading input documents.", default_factory=lambda: StorageConfig(base_dir="input"), ) - file_type: str = Field( + type: str = Field( description="The input file type to use.", - default=InputFileType.Text, + default=InputType.Text, ) encoding: str | None = Field( description="The input file encoding to use.", diff --git a/packages/graphrag-input/graphrag_input/input_reader.py b/packages/graphrag-input/graphrag_input/input_reader.py index 3533608f66..d2175d8228 100644 --- a/packages/graphrag-input/graphrag_input/input_reader.py +++ b/packages/graphrag-input/graphrag_input/input_reader.py @@ -24,30 +24,19 @@ class InputReader(metaclass=ABCMeta): def __init__( self, storage: Storage, - file_type: str, encoding: str = "utf-8", file_pattern: str | None = None, **kwargs, ): self._storage = storage - self._file_type = file_type self._encoding = encoding - - # built-in readers set a default pattern if none is provided - # this is usually just the file type itself, e.g., the file extension - pattern = ( - file_pattern if file_pattern is not None else f".*\\.{self._file_type}$" - ) - if file_pattern is None and self._file_type == "text": - pattern = ".*\\.txt$" - - self._file_pattern = pattern + self._file_pattern = file_pattern async def read_files(self) -> list[TextDocument]: """Load files from storage and apply a loader function based on file type. Process metadata on the results if needed.""" files = list(self._storage.find(re.compile(self._file_pattern))) if len(files) == 0: - msg = f"No {self._file_type} files found in storage" # TODO: use a storage __str__ to define it per impl + msg = f"No {self._file_pattern} matches found in storage" logger.warning(msg) files = [] @@ -63,11 +52,11 @@ async def read_files(self) -> list[TextDocument]: logger.info( "Found %d %s files, loading %d", len(files), - self._file_type, + self._file_pattern, len(documents), ) total_files_log = ( - f"Total number of unfiltered {self._file_type} rows: {len(documents)}" + f"Total number of unfiltered {self._file_pattern} rows: {len(documents)}" ) logger.info(total_files_log) diff --git a/packages/graphrag-input/graphrag_input/input_reader_factory.py b/packages/graphrag-input/graphrag_input/input_reader_factory.py index 4dd1bde78b..ba42084694 100644 --- a/packages/graphrag-input/graphrag_input/input_reader_factory.py +++ b/packages/graphrag-input/graphrag_input/input_reader_factory.py @@ -11,8 +11,8 @@ from graphrag_storage.storage import Storage from graphrag_input.input_config import InputConfig -from graphrag_input.input_file_type import InputFileType from graphrag_input.input_reader import InputReader +from graphrag_input.input_type import InputType logger = logging.getLogger(__name__) @@ -57,28 +57,28 @@ def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: The created input reader implementation. """ config_model = config.model_dump() - input_strategy = config.file_type + input_strategy = config.type if input_strategy not in input_reader_factory: match input_strategy: - case InputFileType.Csv: + case InputType.Csv: from graphrag_input.csv import CSVFileReader - register_input_reader(InputFileType.Csv, CSVFileReader) - case InputFileType.Text: + register_input_reader(InputType.Csv, CSVFileReader) + case InputType.Text: from graphrag_input.text import TextFileReader - register_input_reader(InputFileType.Text, TextFileReader) - case InputFileType.Json: + register_input_reader(InputType.Text, TextFileReader) + case InputType.Json: from graphrag_input.json import JSONFileReader - register_input_reader(InputFileType.Json, JSONFileReader) - case InputFileType.JsonLines: + register_input_reader(InputType.Json, JSONFileReader) + case InputType.JsonLines: from graphrag_input.jsonl import JSONLinesFileReader - register_input_reader(InputFileType.JsonLines, JSONLinesFileReader) + register_input_reader(InputType.JsonLines, JSONLinesFileReader) case _: - msg = f"InputConfig.file_type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." + msg = f"InputConfig.type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." raise ValueError(msg) config_model["storage"] = storage diff --git a/packages/graphrag-input/graphrag_input/input_file_type.py b/packages/graphrag-input/graphrag_input/input_type.py similarity index 94% rename from packages/graphrag-input/graphrag_input/input_file_type.py rename to packages/graphrag-input/graphrag_input/input_type.py index 704ff05d5c..8c59b086cd 100644 --- a/packages/graphrag-input/graphrag_input/input_file_type.py +++ b/packages/graphrag-input/graphrag_input/input_type.py @@ -6,7 +6,7 @@ from enum import StrEnum -class InputFileType(StrEnum): +class InputType(StrEnum): """The input file type for the pipeline.""" Csv = "csv" diff --git a/packages/graphrag-input/graphrag_input/json.py b/packages/graphrag-input/graphrag_input/json.py index fbbd5defc8..1e4bdefe8d 100644 --- a/packages/graphrag-input/graphrag_input/json.py +++ b/packages/graphrag-input/graphrag_input/json.py @@ -15,6 +15,12 @@ class JSONFileReader(StructuredFileReader): """Reader implementation for json files.""" + def __init__(self, file_pattern: str | None = None, **kwargs): + super().__init__( + file_pattern=file_pattern if file_pattern is not None else ".*\\.json$", + **kwargs, + ) + async def read_file(self, path: str) -> list[TextDocument]: """Read a JSON file into a list of documents. diff --git a/packages/graphrag-input/graphrag_input/jsonl.py b/packages/graphrag-input/graphrag_input/jsonl.py index 9fce1a6e1d..f038aafaa5 100644 --- a/packages/graphrag-input/graphrag_input/jsonl.py +++ b/packages/graphrag-input/graphrag_input/jsonl.py @@ -15,6 +15,12 @@ class JSONLinesFileReader(StructuredFileReader): """Reader implementation for json lines files.""" + def __init__(self, file_pattern: str | None = None, **kwargs): + super().__init__( + file_pattern=file_pattern if file_pattern is not None else ".*\\.jsonl$", + **kwargs, + ) + async def read_file(self, path: str) -> list[TextDocument]: """Read a JSON lines file into a list of documents. diff --git a/packages/graphrag-input/graphrag_input/text.py b/packages/graphrag-input/graphrag_input/text.py index 2db71d43c3..43269723e6 100644 --- a/packages/graphrag-input/graphrag_input/text.py +++ b/packages/graphrag-input/graphrag_input/text.py @@ -16,6 +16,12 @@ class TextFileReader(InputReader): """Reader implementation for text files.""" + def __init__(self, file_pattern: str | None = None, **kwargs): + super().__init__( + file_pattern=file_pattern if file_pattern is not None else ".*\\.txt$", + **kwargs, + ) + async def read_file(self, path: str) -> list[TextDocument]: """Read a text file into a DataFrame of documents. diff --git a/packages/graphrag/graphrag/config/defaults.py b/packages/graphrag/graphrag/config/defaults.py index 6fbd94e1df..573989effa 100644 --- a/packages/graphrag/graphrag/config/defaults.py +++ b/packages/graphrag/graphrag/config/defaults.py @@ -9,7 +9,7 @@ from graphrag_cache import CacheType from graphrag_chunking.chunk_strategy_type import ChunkerType -from graphrag_input import InputFileType +from graphrag_input import InputType from graphrag_storage import StorageType from graphrag.config.embeddings import default_embeddings @@ -237,7 +237,7 @@ class InputDefaults: """Default values for input.""" storage: InputStorageDefaults = field(default_factory=InputStorageDefaults) - file_type: ClassVar[InputFileType] = InputFileType.Text + type: ClassVar[InputType] = InputType.Text encoding: str | None = None file_pattern: None = None id_column: None = None diff --git a/packages/graphrag/graphrag/config/init_content.py b/packages/graphrag/graphrag/config/init_content.py index 086228bf55..e038d03075 100644 --- a/packages/graphrag/graphrag/config/init_content.py +++ b/packages/graphrag/graphrag/config/init_content.py @@ -52,7 +52,7 @@ storage: type: {graphrag_config_defaults.input.storage.type} # [file, blob, cosmosdb] base_dir: "{graphrag_config_defaults.input.storage.base_dir}" - file_type: {graphrag_config_defaults.input.file_type.value} # [csv, text, json] + type: {graphrag_config_defaults.input.type.value} # [csv, text, json] chunking: type: {graphrag_config_defaults.chunking.type} diff --git a/tests/fixtures/azure/config.json b/tests/fixtures/azure/config.json index 91d9fc51d0..774228d0ad 100644 --- a/tests/fixtures/azure/config.json +++ b/tests/fixtures/azure/config.json @@ -1,6 +1,6 @@ { "input_path": "./tests/fixtures/azure", - "input_file_type": "text", + "input_type": "text", "index_method": "standard", "workflow_config": { "skip_assert": true, diff --git a/tests/fixtures/azure/settings.yml b/tests/fixtures/azure/settings.yml index 80ba02e56b..b220786d88 100644 --- a/tests/fixtures/azure/settings.yml +++ b/tests/fixtures/azure/settings.yml @@ -14,7 +14,7 @@ input: connection_string: ${LOCAL_BLOB_STORAGE_CONNECTION_STRING} container_name: azurefixture base_dir: input - file_type: text + type: text cache: diff --git a/tests/fixtures/min-csv/config.json b/tests/fixtures/min-csv/config.json index 88d38f1e61..3fa7641fa4 100644 --- a/tests/fixtures/min-csv/config.json +++ b/tests/fixtures/min-csv/config.json @@ -1,6 +1,6 @@ { "input_path": "./tests/fixtures/min-csv", - "input_file_type": "text", + "input_type": "text", "index_method": "standard", "workflow_config": { "load_input_documents": { diff --git a/tests/fixtures/min-csv/settings.yml b/tests/fixtures/min-csv/settings.yml index 82066e753c..16748bb792 100644 --- a/tests/fixtures/min-csv/settings.yml +++ b/tests/fixtures/min-csv/settings.yml @@ -35,7 +35,7 @@ vector_store: overwrite: True input: - file_type: csv + type: csv snapshots: embeddings: true \ No newline at end of file diff --git a/tests/fixtures/text/config.json b/tests/fixtures/text/config.json index 6248a08044..71756da365 100644 --- a/tests/fixtures/text/config.json +++ b/tests/fixtures/text/config.json @@ -1,6 +1,6 @@ { "input_path": "./tests/fixtures/text", - "input_file_type": "text", + "input_type": "text", "index_method": "fast", "workflow_config": { "load_input_documents": { diff --git a/tests/smoke/test_fixtures.py b/tests/smoke/test_fixtures.py index 53205c7c09..7d43b0140a 100644 --- a/tests/smoke/test_fixtures.py +++ b/tests/smoke/test_fixtures.py @@ -126,7 +126,7 @@ class TestIndexer: def __run_indexer( self, root: Path, - input_file_type: str, + input_type: str, index_method: str, ): command = [ @@ -232,7 +232,7 @@ def __run_query(self, root: Path, query_config: dict[str, str]): def test_fixture( self, input_path: str, - input_file_type: str, + input_type: str, index_method: str, workflow_config: dict[str, dict[str, Any]], query_config: list[dict[str, str]], @@ -248,7 +248,7 @@ def test_fixture( dispose = asyncio.run(prepare_azurite_data(input_path, azure)) print("running indexer") - self.__run_indexer(root, input_file_type, index_method) + self.__run_indexer(root, input_type, index_method) print("indexer complete") if dispose is not None: diff --git a/tests/unit/config/utils.py b/tests/unit/config/utils.py index 3b4cfea0bc..8511a71706 100644 --- a/tests/unit/config/utils.py +++ b/tests/unit/config/utils.py @@ -144,7 +144,7 @@ def assert_cache_configs(actual: CacheConfig, expected: CacheConfig) -> None: def assert_input_configs(actual: InputConfig, expected: InputConfig) -> None: assert_storage_config(actual.storage, expected.storage) - assert actual.file_type == expected.file_type + assert actual.type == expected.type assert actual.encoding == expected.encoding assert actual.file_pattern == expected.file_pattern assert actual.text_column == expected.text_column diff --git a/tests/unit/indexing/input/test_csv_loader.py b/tests/unit/indexing/input/test_csv_loader.py index b57d6e7fa3..857302bbf0 100644 --- a/tests/unit/indexing/input/test_csv_loader.py +++ b/tests/unit/indexing/input/test_csv_loader.py @@ -1,7 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag_input import InputConfig, InputFileType, create_input_reader +from graphrag_input import InputConfig, InputType, create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -10,7 +10,7 @@ async def test_csv_loader_one_file(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-csv", ), - file_type=InputFileType.Csv, + type=InputType.Csv, file_pattern=".*\\.csv$", ) storage = create_storage(config.storage) @@ -30,7 +30,7 @@ async def test_csv_loader_one_file_with_title(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-csv", ), - file_type=InputFileType.Csv, + type=InputType.Csv, title_column="title", ) storage = create_storage(config.storage) @@ -45,7 +45,7 @@ async def test_csv_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-csvs", ), - file_type=InputFileType.Csv, + type=InputType.Csv, ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) diff --git a/tests/unit/indexing/input/test_json_loader.py b/tests/unit/indexing/input/test_json_loader.py index b70228e739..ead2ae13f1 100644 --- a/tests/unit/indexing/input/test_json_loader.py +++ b/tests/unit/indexing/input/test_json_loader.py @@ -1,7 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag_input import InputConfig, InputFileType, create_input_reader +from graphrag_input import InputConfig, InputType, create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -10,7 +10,7 @@ async def test_json_loader_one_file_one_object(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-one-object", ), - file_type=InputFileType.Json, + type=InputType.Json, file_pattern=".*\\.json$", ) storage = create_storage(config.storage) @@ -29,7 +29,7 @@ async def test_json_loader_one_file_multiple_objects(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-multiple-objects", ), - file_type=InputFileType.Json, + type=InputType.Json, ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) @@ -44,7 +44,7 @@ async def test_json_loader_one_file_with_title(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-json-one-object", ), - file_type=InputFileType.Json, + type=InputType.Json, title_column="title", ) storage = create_storage(config.storage) @@ -59,7 +59,7 @@ async def test_json_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-jsons", ), - file_type=InputFileType.Json, + type=InputType.Json, ) storage = create_storage(config.storage) reader = create_input_reader(config, storage) diff --git a/tests/unit/indexing/input/test_jsonl_loader.py b/tests/unit/indexing/input/test_jsonl_loader.py index 81deaa8b52..0a1e090cbc 100644 --- a/tests/unit/indexing/input/test_jsonl_loader.py +++ b/tests/unit/indexing/input/test_jsonl_loader.py @@ -1,7 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag_input import InputConfig, InputFileType, create_input_reader +from graphrag_input import InputConfig, InputType, create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -10,7 +10,7 @@ async def test_jsonl_loader_one_file_multiple_objects(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-jsonl", ), - file_type=InputFileType.JsonLines, + type=InputType.JsonLines, file_pattern=".*\\.jsonl$", ) storage = create_storage(config.storage) @@ -30,7 +30,7 @@ async def test_jsonl_loader_one_file_with_title(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-jsonl", ), - file_type=InputFileType.JsonLines, + type=InputType.JsonLines, title_column="title", ) storage = create_storage(config.storage) diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_txt_loader.py index f649d60841..f3ff14f180 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_txt_loader.py @@ -1,7 +1,7 @@ # Copyright (c) 2024 Microsoft Corporation. # Licensed under the MIT License -from graphrag_input import InputConfig, InputFileType, create_input_reader +from graphrag_input import InputConfig, InputType, create_input_reader from graphrag_storage import StorageConfig, create_storage @@ -10,7 +10,7 @@ async def test_txt_loader_one_file(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-txt", ), - file_type=InputFileType.Text, + type=InputType.Text, file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) @@ -26,7 +26,7 @@ async def test_txt_loader_multiple_files(): storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-txts", ), - file_type=InputFileType.Text, + type=InputType.Text, file_pattern=".*\\.txt$", ) storage = create_storage(config.storage) From 6d5076aa51bbf23e2406d5e568ed7981e855ffb6 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Fri, 9 Jan 2026 11:54:59 -0800 Subject: [PATCH 21/30] Add MarkItDown support --- packages/graphrag-cache/pyproject.toml | 4 +- packages/graphrag-input/README.md | 40 +- .../graphrag_input/input_reader_factory.py | 4 + .../graphrag_input/input_type.py | 2 + .../graphrag_input/markitdown.py | 55 ++ .../graphrag-input/graphrag_input/text.py | 4 +- packages/graphrag-input/pyproject.toml | 1 + .../index/workflows/load_input_documents.py | 2 +- .../indexing/input/data/one-html/input.html | 8 + .../indexing/input/test_markitdown_loader.py | 25 + ...test_txt_loader.py => test_text_loader.py} | 4 +- uv.lock | 669 +++++++++++++++++- 12 files changed, 803 insertions(+), 15 deletions(-) create mode 100644 packages/graphrag-input/graphrag_input/markitdown.py create mode 100644 tests/unit/indexing/input/data/one-html/input.html create mode 100644 tests/unit/indexing/input/test_markitdown_loader.py rename tests/unit/indexing/input/{test_txt_loader.py => test_text_loader.py} (92%) diff --git a/packages/graphrag-cache/pyproject.toml b/packages/graphrag-cache/pyproject.toml index e87f5d81e0..69b79de36b 100644 --- a/packages/graphrag-cache/pyproject.toml +++ b/packages/graphrag-cache/pyproject.toml @@ -23,12 +23,12 @@ authors = [ license = "MIT" readme = "README.md" license-files = ["LICENSE"] -requires-python = ">=3.10,<3.13" +requires-python = ">=3.11,<3.14" classifiers = [ "Programming Language :: Python :: 3", - "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", ] dependencies = [ "graphrag-common==2.7.0", diff --git a/packages/graphrag-input/README.md b/packages/graphrag-input/README.md index 35ab13e18d..34d18a0cfb 100644 --- a/packages/graphrag-input/README.md +++ b/packages/graphrag-input/README.md @@ -4,11 +4,19 @@ This package provides input document loading utilities for GraphRAG, supporting ## Supported File Types +The following four standard file formats are supported out of the box: + - **CSV** - Tabular data with configurable column mappings - **JSON** - JSON files with configurable property paths - **JSON Lines** - Line-delimited JSON records - **Text** - Plain text files +### Markitdown Support + +Additionally, we support the `InputType.MarkItDown` format, which uses the [MarkItDown](https://github.com/microsoft/markitdown) library to import any supported file type. The MarkItDown converter can handle a wide variety of file formats including Office documents, PDFs, HTML, and more. + +**Note:** Additional optional dependencies may need to be installed depending on the file type you're processing. The choice of converter is determined by MarkItDowns's processing logic, which primarily uses the file extension to select the appropriate converter. Please refer to the [MarkItDown repository](https://github.com/microsoft/markitdown) for installation instructions and detailed information about supported formats. + ## Examples Basic usage with the factory: @@ -27,7 +35,37 @@ reader = create_input_reader(config, storage) documents = await reader.read_files() ``` -Using dot notation for nested properties: +Import a pdf with MarkItDown: + +```bash +pip install 'markitdown[pdf]' # required dependency for pdf processing +``` + +```python +from graphrag_input import create_input_reader, InputConfig, InputType +from graphrag_storage import StorageConfig, create_storage + +config = InputConfig( + storage=StorageConfig(base_dir="./input"), + type=InputType.MarkitDown, + file_pattern=".*\\.pdf$" +) +storage = create_storage(config.storage) +reader = create_input_reader(config, storage) +documents = await reader.read_files() +``` + +YAML config example for above: +```yaml +input: + storage: + type: file + base_dir: "input" + type: markitdown + file_pattern: ".*\\.pdf$$" +``` + +Note that when specifying column names for data extraction, we can handle nested objects (e.g., in JSON) with dot notation: ```python from graphrag_input import get_property diff --git a/packages/graphrag-input/graphrag_input/input_reader_factory.py b/packages/graphrag-input/graphrag_input/input_reader_factory.py index ba42084694..825665fa9d 100644 --- a/packages/graphrag-input/graphrag_input/input_reader_factory.py +++ b/packages/graphrag-input/graphrag_input/input_reader_factory.py @@ -77,6 +77,10 @@ def create_input_reader(config: InputConfig, storage: Storage) -> InputReader: from graphrag_input.jsonl import JSONLinesFileReader register_input_reader(InputType.JsonLines, JSONLinesFileReader) + case InputType.MarkItDown: + from graphrag_input.markitdown import MarkItDownFileReader + + register_input_reader(InputType.MarkItDown, MarkItDownFileReader) case _: msg = f"InputConfig.type '{input_strategy}' is not registered in the InputReaderFactory. Registered types: {', '.join(input_reader_factory.keys())}." raise ValueError(msg) diff --git a/packages/graphrag-input/graphrag_input/input_type.py b/packages/graphrag-input/graphrag_input/input_type.py index 8c59b086cd..39d0559c8e 100644 --- a/packages/graphrag-input/graphrag_input/input_type.py +++ b/packages/graphrag-input/graphrag_input/input_type.py @@ -17,6 +17,8 @@ class InputType(StrEnum): """The JSON input type.""" JsonLines = "jsonl" """The JSON Lines input type.""" + MarkItDown = "markitdown" + """The MarkItDown input type.""" def __repr__(self): """Get a string representation.""" diff --git a/packages/graphrag-input/graphrag_input/markitdown.py b/packages/graphrag-input/graphrag_input/markitdown.py new file mode 100644 index 0000000000..20b34c4b5d --- /dev/null +++ b/packages/graphrag-input/graphrag_input/markitdown.py @@ -0,0 +1,55 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +"""A module containing 'TextFileReader' model.""" + +import logging +from io import BytesIO +from pathlib import Path + +from markitdown import MarkItDown, StreamInfo + +from graphrag_input.hashing import gen_sha512_hash +from graphrag_input.input_reader import InputReader +from graphrag_input.text_document import TextDocument + +logger = logging.getLogger(__name__) + + +class MarkItDownFileReader(InputReader): + """Reader implementation for any file type supported by markitdown. + + https://github.com/microsoft/markitdown + """ + + def __init__(self, file_pattern: str | None = None, **kwargs): + super().__init__( + file_pattern=file_pattern if file_pattern is not None else ".*\\.txt$", + **kwargs, + ) + + async def read_file(self, path: str) -> list[TextDocument]: + """Read a text file into a DataFrame of documents. + + Args: + - path - The path to read the file from. + + Returns + ------- + - output - list with a TextDocument for each row in the file. + """ + bytes = await self._storage.get(path, encoding=self._encoding, as_bytes=True) + md = MarkItDown(enable_plugins=False) + result = md.convert_stream( + BytesIO(bytes), stream_info=StreamInfo(extension=Path(path).suffix) + ) + text = result.markdown + + document = TextDocument( + id=gen_sha512_hash({"text": text}, ["text"]), + title=result.title if result.title else str(Path(path).name), + text=text, + creation_date=await self._storage.get_creation_date(path), + raw_data=None, + ) + return [document] diff --git a/packages/graphrag-input/graphrag_input/text.py b/packages/graphrag-input/graphrag_input/text.py index 43269723e6..5d42924181 100644 --- a/packages/graphrag-input/graphrag_input/text.py +++ b/packages/graphrag-input/graphrag_input/text.py @@ -23,14 +23,14 @@ def __init__(self, file_pattern: str | None = None, **kwargs): ) async def read_file(self, path: str) -> list[TextDocument]: - """Read a text file into a DataFrame of documents. + """Read a text file into a list of documents. Args: - path - The path to read the file from. Returns ------- - - output - DataFrame with a row for each document in the file. + - output - list with a TextDocument for each row in the file. """ text = await self._storage.get(path, encoding=self._encoding) document = TextDocument( diff --git a/packages/graphrag-input/pyproject.toml b/packages/graphrag-input/pyproject.toml index 36914a2cff..0a7d6b269f 100644 --- a/packages/graphrag-input/pyproject.toml +++ b/packages/graphrag-input/pyproject.toml @@ -33,6 +33,7 @@ dependencies = [ "graphrag-common==2.7.0", "graphrag-storage==2.7.0", "pydantic~=2.10", + "markitdown~=0.1.0" ] [project.urls] diff --git a/packages/graphrag/graphrag/index/workflows/load_input_documents.py b/packages/graphrag/graphrag/index/workflows/load_input_documents.py index 1fa01827e6..0a5aa65454 100644 --- a/packages/graphrag/graphrag/index/workflows/load_input_documents.py +++ b/packages/graphrag/graphrag/index/workflows/load_input_documents.py @@ -26,7 +26,7 @@ async def run_workflow( output = await load_input_documents(input_reader) if len(output) == 0: - msg = "No input documents found." + msg = "Error reading documents, please see logs." logger.error(msg) raise ValueError(msg) diff --git a/tests/unit/indexing/input/data/one-html/input.html b/tests/unit/indexing/input/data/one-html/input.html new file mode 100644 index 0000000000..dbf8badc70 --- /dev/null +++ b/tests/unit/indexing/input/data/one-html/input.html @@ -0,0 +1,8 @@ + + +Test + + +Hi how are you today? + + \ No newline at end of file diff --git a/tests/unit/indexing/input/test_markitdown_loader.py b/tests/unit/indexing/input/test_markitdown_loader.py new file mode 100644 index 0000000000..846d7f00d0 --- /dev/null +++ b/tests/unit/indexing/input/test_markitdown_loader.py @@ -0,0 +1,25 @@ +# Copyright (c) 2024 Microsoft Corporation. +# Licensed under the MIT License + +from graphrag_input import InputConfig, InputType, create_input_reader +from graphrag_storage import StorageConfig, create_storage + + +# these tests just confirm we can load files with MarkItDown, +# and use html specifically because it requires no additional dependency installation +async def test_markitdown_loader_one_file(): + config = InputConfig( + storage=StorageConfig( + base_dir="tests/unit/indexing/input/data/one-html", + ), + type=InputType.MarkItDown, + file_pattern=".*\\.html$", + ) + storage = create_storage(config.storage) + reader = create_input_reader(config, storage) + documents = await reader.read_files() + assert len(documents) == 1 + # markitdown will extract the title and body from the HTML if present and clean them + assert documents[0].title == "Test" + assert documents[0].text == "Hi how are you today?" + assert documents[0].raw_data is None \ No newline at end of file diff --git a/tests/unit/indexing/input/test_txt_loader.py b/tests/unit/indexing/input/test_text_loader.py similarity index 92% rename from tests/unit/indexing/input/test_txt_loader.py rename to tests/unit/indexing/input/test_text_loader.py index f3ff14f180..2ed2c8bcf0 100644 --- a/tests/unit/indexing/input/test_txt_loader.py +++ b/tests/unit/indexing/input/test_text_loader.py @@ -5,7 +5,7 @@ from graphrag_storage import StorageConfig, create_storage -async def test_txt_loader_one_file(): +async def test_text_loader_one_file(): config = InputConfig( storage=StorageConfig( base_dir="tests/unit/indexing/input/data/one-txt", @@ -21,7 +21,7 @@ async def test_txt_loader_one_file(): assert documents[0].raw_data is None -async def test_txt_loader_multiple_files(): +async def test_text_loader_multiple_files(): config = InputConfig( storage=StorageConfig( base_dir="tests/unit/indexing/input/data/multiple-txts", diff --git a/uv.lock b/uv.lock index 95da3c7031..72a6db6f11 100644 --- a/uv.lock +++ b/uv.lock @@ -1,9 +1,13 @@ version = 1 revision = 1 -requires-python = ">=3.11, <3.13" +requires-python = ">=3.11, <3.14" resolution-markers = [ - "python_full_version >= '3.12'", - "python_full_version < '3.12'", + "python_full_version >= '3.13' and sys_platform == 'win32'", + "python_full_version >= '3.13' and sys_platform != 'win32'", + "python_full_version == '3.12.*' and sys_platform == 'win32'", + "python_full_version == '3.12.*' and sys_platform != 'win32'", + "python_full_version < '3.12' and sys_platform == 'win32'", + "python_full_version < '3.12' and sys_platform != 'win32'", ] [manifest] @@ -84,6 +88,23 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/3d/e6/9d30554e7f1e700bfeae4ab6b153d5dc7441606a9ec5e929288fa93a1477/aiohttp-3.13.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:222c828243b4789d79a706a876910f656fad4381661691220ba57b2ab4547865", size = 1717461 }, { url = "https://files.pythonhosted.org/packages/1f/e5/29cca547990a59ea54f0674fc01de98519fc628cfceeab6175711750eca7/aiohttp-3.13.0-cp312-cp312-win32.whl", hash = "sha256:682d2e434ff2f1108314ff7f056ce44e457f12dbed0249b24e106e385cf154b9", size = 424633 }, { url = "https://files.pythonhosted.org/packages/8b/68/46dd042d7bc62eab30bafdb8569f55ef125c3a88bb174270324224f8df56/aiohttp-3.13.0-cp312-cp312-win_amd64.whl", hash = "sha256:0a2be20eb23888df130214b91c262a90e2de1553d6fb7de9e9010cec994c0ff2", size = 451401 }, + { url = "https://files.pythonhosted.org/packages/86/2c/ac53efdc9c10e41399acc2395af98f835b86d0141d5c3820857eb9f6a14a/aiohttp-3.13.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:00243e51f16f6ec0fb021659d4af92f675f3cf9f9b39efd142aa3ad641d8d1e6", size = 730090 }, + { url = "https://files.pythonhosted.org/packages/13/18/1ac95683e1c1d48ef4503965c96f5401618a04c139edae12e200392daae8/aiohttp-3.13.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:059978d2fddc462e9211362cbc8446747ecd930537fa559d3d25c256f032ff54", size = 488041 }, + { url = "https://files.pythonhosted.org/packages/fd/79/ef0d477c771a642d1a881b92d226314c43d3c74bc674c93e12e679397a97/aiohttp-3.13.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:564b36512a7da3b386143c611867e3f7cfb249300a1bf60889bd9985da67ab77", size = 486989 }, + { url = "https://files.pythonhosted.org/packages/37/b4/0e440481a0e77a551d6c5dcab5d11f1ff6b2b2ddb8dedc24f54f5caad732/aiohttp-3.13.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4aa995b9156ae499393d949a456a7ab0b994a8241a96db73a3b73c7a090eff6a", size = 1718331 }, + { url = "https://files.pythonhosted.org/packages/e6/59/76c421cc4a75bb1aceadb92f20ee6f05a990aa6960c64b59e8e0d340e3f5/aiohttp-3.13.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:55ca0e95a3905f62f00900255ed807c580775174252999286f283e646d675a49", size = 1686263 }, + { url = "https://files.pythonhosted.org/packages/ec/ac/5095f12a79c7775f402cfc3e83651b6e0a92ade10ddf7f2c78c4fed79f71/aiohttp-3.13.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:49ce7525853a981fc35d380aa2353536a01a9ec1b30979ea4e35966316cace7e", size = 1754265 }, + { url = "https://files.pythonhosted.org/packages/05/d7/a48e4989bd76cc70600c505bbdd0d90ca1ad7f9053eceeb9dbcf9345a9ec/aiohttp-3.13.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:2117be9883501eaf95503bd313eb4c7a23d567edd44014ba15835a1e9ec6d852", size = 1856486 }, + { url = "https://files.pythonhosted.org/packages/1e/02/45b388b49e37933f316e1fb39c0de6fb1d77384b0c8f4cf6af5f2cbe3ea6/aiohttp-3.13.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d169c47e40c911f728439da853b6fd06da83761012e6e76f11cb62cddae7282b", size = 1737545 }, + { url = "https://files.pythonhosted.org/packages/6c/a7/4fde058f1605c34a219348a83a99f14724cc64e68a42480fc03cf40f9ea3/aiohttp-3.13.0-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:703ad3f742fc81e543638a7bebddd35acadaa0004a5e00535e795f4b6f2c25ca", size = 1552958 }, + { url = "https://files.pythonhosted.org/packages/d1/12/0bac4d29231981e3aa234e88d1931f6ba38135ff4c2cf3afbb7895527630/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:5bf635c3476f4119b940cc8d94ad454cbe0c377e61b4527f0192aabeac1e9370", size = 1681166 }, + { url = "https://files.pythonhosted.org/packages/71/95/b829eb5f8ac1ca1d8085bb8df614c8acf3ff32e23ad5ad1173c7c9761daa/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:cfe6285ef99e7ee51cef20609be2bc1dd0e8446462b71c9db8bb296ba632810a", size = 1710516 }, + { url = "https://files.pythonhosted.org/packages/47/6d/15ccf4ef3c254d899f62580e0c7fc717014f4d14a3ac31771e505d2c736c/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:34d8af6391c5f2e69749d7f037b614b8c5c42093c251f336bdbfa4b03c57d6c4", size = 1731354 }, + { url = "https://files.pythonhosted.org/packages/46/6a/8acf6c57e03b6fdcc8b4c06392e66abaff3213ea275e41db3edb20738d91/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:12f5d820fadc5848d4559ea838aef733cf37ed2a1103bba148ac2f5547c14c29", size = 1548040 }, + { url = "https://files.pythonhosted.org/packages/75/7d/fbfd59ab2a83fe2578ce79ac3db49727b81e9f4c3376217ad09c03c6d279/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:0f1338b61ea66f4757a0544ed8a02ccbf60e38d9cfb3225888888dd4475ebb96", size = 1756031 }, + { url = "https://files.pythonhosted.org/packages/99/e7/cc9f0fdf06cab3ca61e6b62bff9a4b978b8ca736e9d76ddf54365673ab19/aiohttp-3.13.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:582770f82513419512da096e8df21ca44f86a2e56e25dc93c5ab4df0fe065bf0", size = 1714933 }, + { url = "https://files.pythonhosted.org/packages/db/43/7abbe1de94748a58a71881163ee280fd3217db36e8344d109f63638fe16a/aiohttp-3.13.0-cp313-cp313-win32.whl", hash = "sha256:3194b8cab8dbc882f37c13ef1262e0a3d62064fa97533d3aa124771f7bf1ecee", size = 423799 }, + { url = "https://files.pythonhosted.org/packages/c9/58/afab7f2b9e7df88c995995172eb78cae8a3d5a62d5681abaade86b3f0089/aiohttp-3.13.0-cp313-cp313-win_amd64.whl", hash = "sha256:7897298b3eedc790257fef8a6ec582ca04e9dbe568ba4a9a890913b925b8ea21", size = 450138 }, ] [[package]] @@ -92,7 +113,7 @@ version = "1.4.0" source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "frozenlist" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/61/62/06741b579156360248d1ec624842ad0edf697050bbaf7c3e46394e106ad1/aiosignal-1.4.0.tar.gz", hash = "sha256:f47eecd9468083c2029cc99945502cb7708b082c232f9aca65da147157b251c7", size = 25007 } wheels = [ @@ -115,7 +136,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "idna" }, { name = "sniffio" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/c6/78/7d432127c41b50bccba979505f272c16cbcadcc33645d5fa3a738110ae75/anyio-4.11.0.tar.gz", hash = "sha256:82a8d0b81e318cc5ce71a5f1f8b5c4e63619620b63141ef8c995fa0db95a57c4", size = 219094 } wheels = [ @@ -307,6 +328,7 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/19/4d/798dc1f30468134906575156c089c492cf79b5a5fd373f07fe26c4d046bf/backrefs-5.9-py310-none-any.whl", hash = "sha256:db8e8ba0e9de81fcd635f440deab5ae5f2591b54ac1ebe0550a2ca063488cd9f", size = 380267 }, { url = "https://files.pythonhosted.org/packages/55/07/f0b3375bf0d06014e9787797e6b7cc02b38ac9ff9726ccfe834d94e9991e/backrefs-5.9-py311-none-any.whl", hash = "sha256:6907635edebbe9b2dc3de3a2befff44d74f30a4562adbb8b36f21252ea19c5cf", size = 392072 }, { url = "https://files.pythonhosted.org/packages/9d/12/4f345407259dd60a0997107758ba3f221cf89a9b5a0f8ed5b961aef97253/backrefs-5.9-py312-none-any.whl", hash = "sha256:7fdf9771f63e6028d7fee7e0c497c81abda597ea45d6b8f89e8ad76994f5befa", size = 397947 }, + { url = "https://files.pythonhosted.org/packages/10/bf/fa31834dc27a7f05e5290eae47c82690edc3a7b37d58f7fb35a1bdbf355b/backrefs-5.9-py313-none-any.whl", hash = "sha256:cc37b19fa219e93ff825ed1fed8879e47b4d89aa7a1884860e2db64ccd7c676b", size = 399843 }, { url = "https://files.pythonhosted.org/packages/41/ff/392bff89415399a979be4a65357a41d92729ae8580a66073d8ec8d810f98/backrefs-5.9-py39-none-any.whl", hash = "sha256:f48ee18f6252b8f5777a22a00a09a85de0ca931658f1dd96d4406a34f3748c60", size = 380265 }, ] @@ -363,6 +385,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/78/82/816a7adfe1f7acc8151f01ec86ef64467a3c833932d8f19f8e06613b8a4e/blis-1.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:8c888438ae99c500422d50698e3028b65caa8ebb44e24204d87fda2df64058f7", size = 3023686 }, { url = "https://files.pythonhosted.org/packages/1e/e2/0e93b865f648b5519360846669a35f28ee8f4e1d93d054f6850d8afbabde/blis-1.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:8177879fd3590b5eecdd377f9deafb5dc8af6d684f065bd01553302fb3fcf9a7", size = 14250939 }, { url = "https://files.pythonhosted.org/packages/20/07/fb43edc2ff0a6a367e4a94fc39eb3b85aa1e55e24cc857af2db145ce9f0d/blis-1.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:f20f7ad69aaffd1ce14fe77de557b6df9b61e0c9e582f75a843715d836b5c8af", size = 6192759 }, + { url = "https://files.pythonhosted.org/packages/e6/f7/d26e62d9be3d70473a63e0a5d30bae49c2fe138bebac224adddcdef8a7ce/blis-1.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:1e647341f958421a86b028a2efe16ce19c67dba2a05f79e8f7e80b1ff45328aa", size = 6928322 }, + { url = "https://files.pythonhosted.org/packages/4a/78/750d12da388f714958eb2f2fd177652323bbe7ec528365c37129edd6eb84/blis-1.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:d563160f874abb78a57e346f07312c5323f7ad67b6370052b6b17087ef234a8e", size = 1229635 }, + { url = "https://files.pythonhosted.org/packages/e8/36/eac4199c5b200a5f3e93cad197da8d26d909f218eb444c4f552647c95240/blis-1.3.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:30b8a5b90cb6cb81d1ada9ae05aa55fb8e70d9a0ae9db40d2401bb9c1c8f14c4", size = 2815650 }, + { url = "https://files.pythonhosted.org/packages/bf/51/472e7b36a6bedb5242a9757e7486f702c3619eff76e256735d0c8b1679c6/blis-1.3.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:e9f5c53b277f6ac5b3ca30bc12ebab7ea16c8f8c36b14428abb56924213dc127", size = 11359008 }, + { url = "https://files.pythonhosted.org/packages/84/da/d0dfb6d6e6321ae44df0321384c32c322bd07b15740d7422727a1a49fc5d/blis-1.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6297e7616c158b305c9a8a4e47ca5fc9b0785194dd96c903b1a1591a7ca21ddf", size = 3011959 }, + { url = "https://files.pythonhosted.org/packages/20/c5/2b0b5e556fa0364ed671051ea078a6d6d7b979b1cfef78d64ad3ca5f0c7f/blis-1.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:3f966ca74f89f8a33e568b9a1d71992fc9a0d29a423e047f0a212643e21b5458", size = 14232456 }, + { url = "https://files.pythonhosted.org/packages/31/07/4cdc81a47bf862c0b06d91f1bc6782064e8b69ac9b5d4ff51d97e4ff03da/blis-1.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:7a0fc4b237a3a453bdc3c7ab48d91439fcd2d013b665c46948d9eaf9c3e45a97", size = 6192624 }, ] [[package]] @@ -417,6 +446,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/7b/2b/2b6435f76bfeb6bbf055596976da087377ede68df465419d192acf00c437/cffi-2.0.0-cp312-cp312-win32.whl", hash = "sha256:da902562c3e9c550df360bfa53c035b2f241fed6d9aef119048073680ace4a18", size = 172932 }, { url = "https://files.pythonhosted.org/packages/f8/ed/13bd4418627013bec4ed6e54283b1959cf6db888048c7cf4b4c3b5b36002/cffi-2.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:da68248800ad6320861f129cd9c1bf96ca849a2771a59e0344e88681905916f5", size = 183557 }, { url = "https://files.pythonhosted.org/packages/95/31/9f7f93ad2f8eff1dbc1c3656d7ca5bfd8fb52c9d786b4dcf19b2d02217fa/cffi-2.0.0-cp312-cp312-win_arm64.whl", hash = "sha256:4671d9dd5ec934cb9a73e7ee9676f9362aba54f7f34910956b84d727b0d73fb6", size = 177762 }, + { url = "https://files.pythonhosted.org/packages/4b/8d/a0a47a0c9e413a658623d014e91e74a50cdd2c423f7ccfd44086ef767f90/cffi-2.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:00bdf7acc5f795150faa6957054fbbca2439db2f775ce831222b66f192f03beb", size = 185230 }, + { url = "https://files.pythonhosted.org/packages/4a/d2/a6c0296814556c68ee32009d9c2ad4f85f2707cdecfd7727951ec228005d/cffi-2.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:45d5e886156860dc35862657e1494b9bae8dfa63bf56796f2fb56e1679fc0bca", size = 181043 }, + { url = "https://files.pythonhosted.org/packages/b0/1e/d22cc63332bd59b06481ceaac49d6c507598642e2230f201649058a7e704/cffi-2.0.0-cp313-cp313-manylinux1_i686.manylinux2014_i686.manylinux_2_17_i686.manylinux_2_5_i686.whl", hash = "sha256:07b271772c100085dd28b74fa0cd81c8fb1a3ba18b21e03d7c27f3436a10606b", size = 212446 }, + { url = "https://files.pythonhosted.org/packages/a9/f5/a2c23eb03b61a0b8747f211eb716446c826ad66818ddc7810cc2cc19b3f2/cffi-2.0.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:d48a880098c96020b02d5a1f7d9251308510ce8858940e6fa99ece33f610838b", size = 220101 }, + { url = "https://files.pythonhosted.org/packages/f2/7f/e6647792fc5850d634695bc0e6ab4111ae88e89981d35ac269956605feba/cffi-2.0.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.whl", hash = "sha256:f93fd8e5c8c0a4aa1f424d6173f14a892044054871c771f8566e4008eaa359d2", size = 207948 }, + { url = "https://files.pythonhosted.org/packages/cb/1e/a5a1bd6f1fb30f22573f76533de12a00bf274abcdc55c8edab639078abb6/cffi-2.0.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.whl", hash = "sha256:dd4f05f54a52fb558f1ba9f528228066954fee3ebe629fc1660d874d040ae5a3", size = 206422 }, + { url = "https://files.pythonhosted.org/packages/98/df/0a1755e750013a2081e863e7cd37e0cdd02664372c754e5560099eb7aa44/cffi-2.0.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:c8d3b5532fc71b7a77c09192b4a5a200ea992702734a2e9279a37f2478236f26", size = 219499 }, + { url = "https://files.pythonhosted.org/packages/50/e1/a969e687fcf9ea58e6e2a928ad5e2dd88cc12f6f0ab477e9971f2309b57c/cffi-2.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:d9b29c1f0ae438d5ee9acb31cadee00a58c46cc9c0b2f9038c6b0b3470877a8c", size = 222928 }, + { url = "https://files.pythonhosted.org/packages/36/54/0362578dd2c9e557a28ac77698ed67323ed5b9775ca9d3fe73fe191bb5d8/cffi-2.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:6d50360be4546678fc1b79ffe7a66265e28667840010348dd69a314145807a1b", size = 221302 }, + { url = "https://files.pythonhosted.org/packages/eb/6d/bf9bda840d5f1dfdbf0feca87fbdb64a918a69bca42cfa0ba7b137c48cb8/cffi-2.0.0-cp313-cp313-win32.whl", hash = "sha256:74a03b9698e198d47562765773b4a8309919089150a0bb17d829ad7b44b60d27", size = 172909 }, + { url = "https://files.pythonhosted.org/packages/37/18/6519e1ee6f5a1e579e04b9ddb6f1676c17368a7aba48299c3759bbc3c8b3/cffi-2.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:19f705ada2530c1167abacb171925dd886168931e0a7b78f5bffcae5c6b5be75", size = 183402 }, + { url = "https://files.pythonhosted.org/packages/cb/0e/02ceeec9a7d6ee63bb596121c2c8e9b3a9e150936f4fbef6ca1943e6137c/cffi-2.0.0-cp313-cp313-win_arm64.whl", hash = "sha256:256f80b80ca3853f90c21b23ee78cd008713787b1b1e93eae9f3d6a7134abd91", size = 177780 }, ] [[package]] @@ -447,6 +488,17 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c1/35/6525b21aa0db614cf8b5792d232021dca3df7f90a1944db934efa5d20bb1/charset_normalizer-3.4.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:320e8e66157cc4e247d9ddca8e21f427efc7a04bbd0ac8a9faf56583fa543f9f", size = 153173 }, { url = "https://files.pythonhosted.org/packages/50/ee/f4704bad8201de513fdc8aac1cabc87e38c5818c93857140e06e772b5892/charset_normalizer-3.4.3-cp312-cp312-win32.whl", hash = "sha256:fb6fecfd65564f208cbf0fba07f107fb661bcd1a7c389edbced3f7a493f70e37", size = 99822 }, { url = "https://files.pythonhosted.org/packages/39/f5/3b3836ca6064d0992c58c7561c6b6eee1b3892e9665d650c803bd5614522/charset_normalizer-3.4.3-cp312-cp312-win_amd64.whl", hash = "sha256:86df271bf921c2ee3818f0522e9a5b8092ca2ad8b065ece5d7d9d0e9f4849bcc", size = 107543 }, + { url = "https://files.pythonhosted.org/packages/65/ca/2135ac97709b400c7654b4b764daf5c5567c2da45a30cdd20f9eefe2d658/charset_normalizer-3.4.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:14c2a87c65b351109f6abfc424cab3927b3bdece6f706e4d12faaf3d52ee5efe", size = 205326 }, + { url = "https://files.pythonhosted.org/packages/71/11/98a04c3c97dd34e49c7d247083af03645ca3730809a5509443f3c37f7c99/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:41d1fc408ff5fdfb910200ec0e74abc40387bccb3252f3f27c0676731df2b2c8", size = 146008 }, + { url = "https://files.pythonhosted.org/packages/60/f5/4659a4cb3c4ec146bec80c32d8bb16033752574c20b1252ee842a95d1a1e/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:1bb60174149316da1c35fa5233681f7c0f9f514509b8e399ab70fea5f17e45c9", size = 159196 }, + { url = "https://files.pythonhosted.org/packages/86/9e/f552f7a00611f168b9a5865a1414179b2c6de8235a4fa40189f6f79a1753/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:30d006f98569de3459c2fc1f2acde170b7b2bd265dc1943e87e1a4efe1b67c31", size = 156819 }, + { url = "https://files.pythonhosted.org/packages/7e/95/42aa2156235cbc8fa61208aded06ef46111c4d3f0de233107b3f38631803/charset_normalizer-3.4.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:416175faf02e4b0810f1f38bcb54682878a4af94059a1cd63b8747244420801f", size = 151350 }, + { url = "https://files.pythonhosted.org/packages/c2/a9/3865b02c56f300a6f94fc631ef54f0a8a29da74fb45a773dfd3dcd380af7/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6aab0f181c486f973bc7262a97f5aca3ee7e1437011ef0c2ec04b5a11d16c927", size = 148644 }, + { url = "https://files.pythonhosted.org/packages/77/d9/cbcf1a2a5c7d7856f11e7ac2d782aec12bdfea60d104e60e0aa1c97849dc/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:fdabf8315679312cfa71302f9bd509ded4f2f263fb5b765cf1433b39106c3cc9", size = 160468 }, + { url = "https://files.pythonhosted.org/packages/f6/42/6f45efee8697b89fda4d50580f292b8f7f9306cb2971d4b53f8914e4d890/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:bd28b817ea8c70215401f657edef3a8aa83c29d447fb0b622c35403780ba11d5", size = 158187 }, + { url = "https://files.pythonhosted.org/packages/70/99/f1c3bdcfaa9c45b3ce96f70b14f070411366fa19549c1d4832c935d8e2c3/charset_normalizer-3.4.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:18343b2d246dc6761a249ba1fb13f9ee9a2bcd95decc767319506056ea4ad4dc", size = 152699 }, + { url = "https://files.pythonhosted.org/packages/a3/ad/b0081f2f99a4b194bcbb1934ef3b12aa4d9702ced80a37026b7607c72e58/charset_normalizer-3.4.3-cp313-cp313-win32.whl", hash = "sha256:6fb70de56f1859a3f71261cbe41005f56a7842cc348d3aeb26237560bfa5e0ce", size = 99580 }, + { url = "https://files.pythonhosted.org/packages/9a/8f/ae790790c7b64f925e5c953b924aaa42a243fb778fed9e41f147b2a5715a/charset_normalizer-3.4.3-cp313-cp313-win_amd64.whl", hash = "sha256:cf1ebb7d78e1ad8ec2a8c4732c7be2e736f6e5123a4146c5b89c9d1f585f8cef", size = 107366 }, { url = "https://files.pythonhosted.org/packages/8a/1f/f041989e93b001bc4e44bb1669ccdcf54d3f00e628229a85b08d330615c5/charset_normalizer-3.4.3-py3-none-any.whl", hash = "sha256:ce571ab16d890d23b5c278547ba694193a45011ff86a9162a71307ed9f86759a", size = 53175 }, ] @@ -480,6 +532,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/d1/d6/3965ed04c63042e047cb6a3e6ed1a63a35087b6a609aa3a15ed8ac56c221/colorama-0.4.6-py2.py3-none-any.whl", hash = "sha256:4f1d9991f5acc0ca119f9d443620b77f9d6b33703e51011c16baf57afb285fc6", size = 25335 }, ] +[[package]] +name = "coloredlogs" +version = "15.0.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "humanfriendly" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cc/c7/eed8f27100517e8c0e6b923d5f0845d0cb99763da6fdee00478f91db7325/coloredlogs-15.0.1.tar.gz", hash = "sha256:7c991aa71a4577af2f82600d8f8f3a89f936baeaf9b50a9c197da014e5bf16b0", size = 278520 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a7/06/3d6badcf13db419e25b07041d9c7b4a2c331d3f4e7134445ec5df57714cd/coloredlogs-15.0.1-py2.py3-none-any.whl", hash = "sha256:612ee75c546f53e92e70049c9dbfcc18c935a2b9a53b66085ce9ef6a6e5c0934", size = 46018 }, +] + [[package]] name = "comm" version = "0.2.3" @@ -534,6 +598,32 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/5e/75/61b9bbd6c7d24d896bfeec57acba78e0f8deac68e6baf2d4804f7aae1f88/coverage-7.10.7-cp312-cp312-win32.whl", hash = "sha256:77eb4c747061a6af8d0f7bdb31f1e108d172762ef579166ec84542f711d90256", size = 220699 }, { url = "https://files.pythonhosted.org/packages/ca/f3/3bf7905288b45b075918d372498f1cf845b5b579b723c8fd17168018d5f5/coverage-7.10.7-cp312-cp312-win_amd64.whl", hash = "sha256:f51328ffe987aecf6d09f3cd9d979face89a617eacdaea43e7b3080777f647ba", size = 221512 }, { url = "https://files.pythonhosted.org/packages/5c/44/3e32dbe933979d05cf2dac5e697c8599cfe038aaf51223ab901e208d5a62/coverage-7.10.7-cp312-cp312-win_arm64.whl", hash = "sha256:bda5e34f8a75721c96085903c6f2197dc398c20ffd98df33f866a9c8fd95f4bf", size = 220147 }, + { url = "https://files.pythonhosted.org/packages/9a/94/b765c1abcb613d103b64fcf10395f54d69b0ef8be6a0dd9c524384892cc7/coverage-7.10.7-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:981a651f543f2854abd3b5fcb3263aac581b18209be49863ba575de6edf4c14d", size = 218320 }, + { url = "https://files.pythonhosted.org/packages/72/4f/732fff31c119bb73b35236dd333030f32c4bfe909f445b423e6c7594f9a2/coverage-7.10.7-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:73ab1601f84dc804f7812dc297e93cd99381162da39c47040a827d4e8dafe63b", size = 218575 }, + { url = "https://files.pythonhosted.org/packages/87/02/ae7e0af4b674be47566707777db1aa375474f02a1d64b9323e5813a6cdd5/coverage-7.10.7-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:a8b6f03672aa6734e700bbcd65ff050fd19cddfec4b031cc8cf1c6967de5a68e", size = 249568 }, + { url = "https://files.pythonhosted.org/packages/a2/77/8c6d22bf61921a59bce5471c2f1f7ac30cd4ac50aadde72b8c48d5727902/coverage-7.10.7-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:10b6ba00ab1132a0ce4428ff68cf50a25efd6840a42cdf4239c9b99aad83be8b", size = 252174 }, + { url = "https://files.pythonhosted.org/packages/b1/20/b6ea4f69bbb52dac0aebd62157ba6a9dddbfe664f5af8122dac296c3ee15/coverage-7.10.7-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c79124f70465a150e89340de5963f936ee97097d2ef76c869708c4248c63ca49", size = 253447 }, + { url = "https://files.pythonhosted.org/packages/f9/28/4831523ba483a7f90f7b259d2018fef02cb4d5b90bc7c1505d6e5a84883c/coverage-7.10.7-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:69212fbccdbd5b0e39eac4067e20a4a5256609e209547d86f740d68ad4f04911", size = 249779 }, + { url = "https://files.pythonhosted.org/packages/a7/9f/4331142bc98c10ca6436d2d620c3e165f31e6c58d43479985afce6f3191c/coverage-7.10.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:7ea7c6c9d0d286d04ed3541747e6597cbe4971f22648b68248f7ddcd329207f0", size = 251604 }, + { url = "https://files.pythonhosted.org/packages/ce/60/bda83b96602036b77ecf34e6393a3836365481b69f7ed7079ab85048202b/coverage-7.10.7-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b9be91986841a75042b3e3243d0b3cb0b2434252b977baaf0cd56e960fe1e46f", size = 249497 }, + { url = "https://files.pythonhosted.org/packages/5f/af/152633ff35b2af63977edd835d8e6430f0caef27d171edf2fc76c270ef31/coverage-7.10.7-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:b281d5eca50189325cfe1f365fafade89b14b4a78d9b40b05ddd1fc7d2a10a9c", size = 249350 }, + { url = "https://files.pythonhosted.org/packages/9d/71/d92105d122bd21cebba877228990e1646d862e34a98bb3374d3fece5a794/coverage-7.10.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:99e4aa63097ab1118e75a848a28e40d68b08a5e19ce587891ab7fd04475e780f", size = 251111 }, + { url = "https://files.pythonhosted.org/packages/a2/9e/9fdb08f4bf476c912f0c3ca292e019aab6712c93c9344a1653986c3fd305/coverage-7.10.7-cp313-cp313-win32.whl", hash = "sha256:dc7c389dce432500273eaf48f410b37886be9208b2dd5710aaf7c57fd442c698", size = 220746 }, + { url = "https://files.pythonhosted.org/packages/b1/b1/a75fd25df44eab52d1931e89980d1ada46824c7a3210be0d3c88a44aaa99/coverage-7.10.7-cp313-cp313-win_amd64.whl", hash = "sha256:cac0fdca17b036af3881a9d2729a850b76553f3f716ccb0360ad4dbc06b3b843", size = 221541 }, + { url = "https://files.pythonhosted.org/packages/14/3a/d720d7c989562a6e9a14b2c9f5f2876bdb38e9367126d118495b89c99c37/coverage-7.10.7-cp313-cp313-win_arm64.whl", hash = "sha256:4b6f236edf6e2f9ae8fcd1332da4e791c1b6ba0dc16a2dc94590ceccb482e546", size = 220170 }, + { url = "https://files.pythonhosted.org/packages/bb/22/e04514bf2a735d8b0add31d2b4ab636fc02370730787c576bb995390d2d5/coverage-7.10.7-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:a0ec07fd264d0745ee396b666d47cef20875f4ff2375d7c4f58235886cc1ef0c", size = 219029 }, + { url = "https://files.pythonhosted.org/packages/11/0b/91128e099035ece15da3445d9015e4b4153a6059403452d324cbb0a575fa/coverage-7.10.7-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:dd5e856ebb7bfb7672b0086846db5afb4567a7b9714b8a0ebafd211ec7ce6a15", size = 219259 }, + { url = "https://files.pythonhosted.org/packages/8b/51/66420081e72801536a091a0c8f8c1f88a5c4bf7b9b1bdc6222c7afe6dc9b/coverage-7.10.7-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:f57b2a3c8353d3e04acf75b3fed57ba41f5c0646bbf1d10c7c282291c97936b4", size = 260592 }, + { url = "https://files.pythonhosted.org/packages/5d/22/9b8d458c2881b22df3db5bb3e7369e63d527d986decb6c11a591ba2364f7/coverage-7.10.7-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:1ef2319dd15a0b009667301a3f84452a4dc6fddfd06b0c5c53ea472d3989fbf0", size = 262768 }, + { url = "https://files.pythonhosted.org/packages/f7/08/16bee2c433e60913c610ea200b276e8eeef084b0d200bdcff69920bd5828/coverage-7.10.7-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:83082a57783239717ceb0ad584de3c69cf581b2a95ed6bf81ea66034f00401c0", size = 264995 }, + { url = "https://files.pythonhosted.org/packages/20/9d/e53eb9771d154859b084b90201e5221bca7674ba449a17c101a5031d4054/coverage-7.10.7-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:50aa94fb1fb9a397eaa19c0d5ec15a5edd03a47bf1a3a6111a16b36e190cff65", size = 259546 }, + { url = "https://files.pythonhosted.org/packages/ad/b0/69bc7050f8d4e56a89fb550a1577d5d0d1db2278106f6f626464067b3817/coverage-7.10.7-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:2120043f147bebb41c85b97ac45dd173595ff14f2a584f2963891cbcc3091541", size = 262544 }, + { url = "https://files.pythonhosted.org/packages/ef/4b/2514b060dbd1bc0aaf23b852c14bb5818f244c664cb16517feff6bb3a5ab/coverage-7.10.7-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2fafd773231dd0378fdba66d339f84904a8e57a262f583530f4f156ab83863e6", size = 260308 }, + { url = "https://files.pythonhosted.org/packages/54/78/7ba2175007c246d75e496f64c06e94122bdb914790a1285d627a918bd271/coverage-7.10.7-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:0b944ee8459f515f28b851728ad224fa2d068f1513ef6b7ff1efafeb2185f999", size = 258920 }, + { url = "https://files.pythonhosted.org/packages/c0/b3/fac9f7abbc841409b9a410309d73bfa6cfb2e51c3fada738cb607ce174f8/coverage-7.10.7-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:4b583b97ab2e3efe1b3e75248a9b333bd3f8b0b1b8e5b45578e05e5850dfb2c2", size = 261434 }, + { url = "https://files.pythonhosted.org/packages/ee/51/a03bec00d37faaa891b3ff7387192cef20f01604e5283a5fabc95346befa/coverage-7.10.7-cp313-cp313t-win32.whl", hash = "sha256:2a78cd46550081a7909b3329e2266204d584866e8d97b898cd7fb5ac8d888b1a", size = 221403 }, + { url = "https://files.pythonhosted.org/packages/53/22/3cf25d614e64bf6d8e59c7c669b20d6d940bb337bdee5900b9ca41c820bb/coverage-7.10.7-cp313-cp313t-win_amd64.whl", hash = "sha256:33a5e6396ab684cb43dc7befa386258acb2d7fae7f67330ebb85ba4ea27938eb", size = 222469 }, + { url = "https://files.pythonhosted.org/packages/49/a1/00164f6d30d8a01c3c9c48418a7a5be394de5349b421b9ee019f380df2a0/coverage-7.10.7-cp313-cp313t-win_arm64.whl", hash = "sha256:86b0e7308289ddde73d863b7683f596d8d21c7d8664ce1dee061d0bcf3fbb4bb", size = 220731 }, { url = "https://files.pythonhosted.org/packages/ec/16/114df1c291c22cac3b0c127a73e0af5c12ed7bbb6558d310429a0ae24023/coverage-7.10.7-py3-none-any.whl", hash = "sha256:f7941f6f2fe6dd6807a1208737b8a0cbcf1cc6d7b07d24998ad2d63590868260", size = 209952 }, ] @@ -604,6 +694,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e4/f3/ceda70bf6447880140602285b7c6fa171cb7c78b623d35345cc32505cd06/cymem-2.0.11-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:04ee6b4041ddec24512d6e969ed6445e57917f01e73b9dabbe17b7e6b27fef05", size = 215325 }, { url = "https://files.pythonhosted.org/packages/d3/47/6915eaa521e1ce7a0ba480eecb6870cb4f681bcd64ced88c2f0ed7a744b4/cymem-2.0.11-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:e1048dae7e627ee25f22c87bb670b13e06bc0aecc114b89b959a798d487d1bf4", size = 216447 }, { url = "https://files.pythonhosted.org/packages/7b/be/8e02bdd31e557f642741a06c8e886782ef78f0b00daffd681922dc9bbc88/cymem-2.0.11-cp312-cp312-win_amd64.whl", hash = "sha256:0c269c7a867d74adeb9db65fa1d226342aacf44d64b7931282f0b0eb22eb6275", size = 39283 }, + { url = "https://files.pythonhosted.org/packages/bd/90/b064e2677e27a35cf3605146abc3285d4f599cc1b6c18fc445ae876dd1e3/cymem-2.0.11-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:f4a311c82f743275c84f708df89ac5bf60ddefe4713d532000c887931e22941f", size = 42389 }, + { url = "https://files.pythonhosted.org/packages/fd/60/7aa0561a6c1f0d42643b02c4fdeb2a16181b0ff4e85d73d2d80c6689e92a/cymem-2.0.11-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:02ed92bead896cca36abad00502b14fa651bdf5d8319461126a2d5ac8c9674c5", size = 41948 }, + { url = "https://files.pythonhosted.org/packages/5f/4e/88a29cc5575374982e527b4ebcab3781bdc826ce693c6418a0f836544246/cymem-2.0.11-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:44ddd3588379f8f376116384af99e3fb5f90091d90f520c341942618bf22f05e", size = 219382 }, + { url = "https://files.pythonhosted.org/packages/9b/3a/8f96e167e93b7f7ec105ed7b25c77bbf215d15bcbf4a24082cdc12234cd6/cymem-2.0.11-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:87ec985623624bbd298762d8163fc194a096cb13282731a017e09ff8a60bb8b1", size = 222974 }, + { url = "https://files.pythonhosted.org/packages/6a/fc/ce016bb0c66a4776345fac7508fddec3b739b9dd4363094ac89cce048832/cymem-2.0.11-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:e3385a47285435848e0ed66cfd29b35f3ed8703218e2b17bd7a0c053822f26bf", size = 213426 }, + { url = "https://files.pythonhosted.org/packages/5c/c8/accf7cc768f751447a5050b14a195af46798bc22767ac25f49b02861b1eb/cymem-2.0.11-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:5461e65340d6572eb64deadce79242a446a1d39cb7bf70fe7b7e007eb0d799b0", size = 219195 }, + { url = "https://files.pythonhosted.org/packages/74/65/c162fbac63e867a055240b6600b92ef96c0eb7a1895312ac53c4be93d056/cymem-2.0.11-cp313-cp313-win_amd64.whl", hash = "sha256:25da111adf425c29af0cfd9fecfec1c71c8d82e2244a85166830a0817a66ada7", size = 39090 }, ] [[package]] @@ -620,6 +717,10 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/b4/78/eb0d77f02971c05fca0eb7465b18058ba84bd957062f5eec82f941ac792a/debugpy-1.8.17-cp312-cp312-manylinux_2_34_x86_64.whl", hash = "sha256:24693179ef9dfa20dca8605905a42b392be56d410c333af82f1c5dff807a64cc", size = 4309417 }, { url = "https://files.pythonhosted.org/packages/37/42/c40f1d8cc1fed1e75ea54298a382395b8b937d923fcf41ab0797a554f555/debugpy-1.8.17-cp312-cp312-win32.whl", hash = "sha256:6a4e9dacf2cbb60d2514ff7b04b4534b0139facbf2abdffe0639ddb6088e59cf", size = 5277130 }, { url = "https://files.pythonhosted.org/packages/72/22/84263b205baad32b81b36eac076de0cdbe09fe2d0637f5b32243dc7c925b/debugpy-1.8.17-cp312-cp312-win_amd64.whl", hash = "sha256:e8f8f61c518952fb15f74a302e068b48d9c4691768ade433e4adeea961993464", size = 5319053 }, + { url = "https://files.pythonhosted.org/packages/50/76/597e5cb97d026274ba297af8d89138dfd9e695767ba0e0895edb20963f40/debugpy-1.8.17-cp313-cp313-macosx_15_0_universal2.whl", hash = "sha256:857c1dd5d70042502aef1c6d1c2801211f3ea7e56f75e9c335f434afb403e464", size = 2538386 }, + { url = "https://files.pythonhosted.org/packages/5f/60/ce5c34fcdfec493701f9d1532dba95b21b2f6394147234dce21160bd923f/debugpy-1.8.17-cp313-cp313-manylinux_2_34_x86_64.whl", hash = "sha256:3bea3b0b12f3946e098cce9b43c3c46e317b567f79570c3f43f0b96d00788088", size = 4292100 }, + { url = "https://files.pythonhosted.org/packages/e8/95/7873cf2146577ef71d2a20bf553f12df865922a6f87b9e8ee1df04f01785/debugpy-1.8.17-cp313-cp313-win32.whl", hash = "sha256:e34ee844c2f17b18556b5bbe59e1e2ff4e86a00282d2a46edab73fd7f18f4a83", size = 5277002 }, + { url = "https://files.pythonhosted.org/packages/46/11/18c79a1cee5ff539a94ec4aa290c1c069a5580fd5cfd2fb2e282f8e905da/debugpy-1.8.17-cp313-cp313-win_amd64.whl", hash = "sha256:6c5cd6f009ad4fca8e33e5238210dc1e5f42db07d4b6ab21ac7ffa904a196420", size = 5319047 }, { url = "https://files.pythonhosted.org/packages/b0/d0/89247ec250369fc76db477720a26b2fce7ba079ff1380e4ab4529d2fe233/debugpy-1.8.17-py2.py3-none-any.whl", hash = "sha256:60c7dca6571efe660ccb7a9508d73ca14b8796c4ed484c2002abba714226cfef", size = 5283210 }, ] @@ -757,6 +858,17 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/be/9c/909e8c95b494e8e140e8be6165d5fc3f61fdc46198c1554df7b3e1764471/fastuuid-0.14.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:3acdf655684cc09e60fb7e4cf524e8f42ea760031945aa8086c7eae2eeeabeb8", size = 450894 }, { url = "https://files.pythonhosted.org/packages/90/eb/d29d17521976e673c55ef7f210d4cdd72091a9ec6755d0fd4710d9b3c871/fastuuid-0.14.0-cp312-cp312-win32.whl", hash = "sha256:9579618be6280700ae36ac42c3efd157049fe4dd40ca49b021280481c78c3176", size = 154374 }, { url = "https://files.pythonhosted.org/packages/cc/fc/f5c799a6ea6d877faec0472d0b27c079b47c86b1cdc577720a5386483b36/fastuuid-0.14.0-cp312-cp312-win_amd64.whl", hash = "sha256:d9e4332dc4ba054434a9594cbfaf7823b57993d7d8e7267831c3e059857cf397", size = 156550 }, + { url = "https://files.pythonhosted.org/packages/a5/83/ae12dd39b9a39b55d7f90abb8971f1a5f3c321fd72d5aa83f90dc67fe9ed/fastuuid-0.14.0-cp313-cp313-macosx_10_12_x86_64.macosx_11_0_arm64.macosx_10_12_universal2.whl", hash = "sha256:77a09cb7427e7af74c594e409f7731a0cf887221de2f698e1ca0ebf0f3139021", size = 510720 }, + { url = "https://files.pythonhosted.org/packages/53/b0/a4b03ff5d00f563cc7546b933c28cb3f2a07344b2aec5834e874f7d44143/fastuuid-0.14.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:9bd57289daf7b153bfa3e8013446aa144ce5e8c825e9e366d455155ede5ea2dc", size = 262024 }, + { url = "https://files.pythonhosted.org/packages/9c/6d/64aee0a0f6a58eeabadd582e55d0d7d70258ffdd01d093b30c53d668303b/fastuuid-0.14.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ac60fc860cdf3c3f327374db87ab8e064c86566ca8c49d2e30df15eda1b0c2d5", size = 251679 }, + { url = "https://files.pythonhosted.org/packages/60/f5/a7e9cda8369e4f7919d36552db9b2ae21db7915083bc6336f1b0082c8b2e/fastuuid-0.14.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:ab32f74bd56565b186f036e33129da77db8be09178cd2f5206a5d4035fb2a23f", size = 277862 }, + { url = "https://files.pythonhosted.org/packages/f0/d3/8ce11827c783affffd5bd4d6378b28eb6cc6d2ddf41474006b8d62e7448e/fastuuid-0.14.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:33e678459cf4addaedd9936bbb038e35b3f6b2061330fd8f2f6a1d80414c0f87", size = 278278 }, + { url = "https://files.pythonhosted.org/packages/a2/51/680fb6352d0bbade04036da46264a8001f74b7484e2fd1f4da9e3db1c666/fastuuid-0.14.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:1e3cc56742f76cd25ecb98e4b82a25f978ccffba02e4bdce8aba857b6d85d87b", size = 301788 }, + { url = "https://files.pythonhosted.org/packages/fa/7c/2014b5785bd8ebdab04ec857635ebd84d5ee4950186a577db9eff0fb8ff6/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:cb9a030f609194b679e1660f7e32733b7a0f332d519c5d5a6a0a580991290022", size = 459819 }, + { url = "https://files.pythonhosted.org/packages/01/d2/524d4ceeba9160e7a9bc2ea3e8f4ccf1ad78f3bde34090ca0c51f09a5e91/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_i686.whl", hash = "sha256:09098762aad4f8da3a888eb9ae01c84430c907a297b97166b8abc07b640f2995", size = 478546 }, + { url = "https://files.pythonhosted.org/packages/bc/17/354d04951ce114bf4afc78e27a18cfbd6ee319ab1829c2d5fb5e94063ac6/fastuuid-0.14.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:1383fff584fa249b16329a059c68ad45d030d5a4b70fb7c73a08d98fd53bcdab", size = 450921 }, + { url = "https://files.pythonhosted.org/packages/fb/be/d7be8670151d16d88f15bb121c5b66cdb5ea6a0c2a362d0dcf30276ade53/fastuuid-0.14.0-cp313-cp313-win32.whl", hash = "sha256:a0809f8cc5731c066c909047f9a314d5f536c871a7a22e815cc4967c110ac9ad", size = 154559 }, + { url = "https://files.pythonhosted.org/packages/22/1d/5573ef3624ceb7abf4a46073d3554e37191c868abc3aecd5289a72f9810a/fastuuid-0.14.0-cp313-cp313-win_amd64.whl", hash = "sha256:0df14e92e7ad3276327631c9e7cec09e32572ce82089c55cb1bb8df71cf394ed", size = 156539 }, ] [[package]] @@ -768,6 +880,14 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/76/91/7216b27286936c16f5b4d0c530087e4a54eead683e6b0b73dd0c64844af6/filelock-3.20.0-py3-none-any.whl", hash = "sha256:339b4732ffda5cd79b13f4e2711a31b0365ce445d95d243bb996273d072546a2", size = 16054 }, ] +[[package]] +name = "flatbuffers" +version = "25.12.19" +source = { registry = "https://pypi.org/simple" } +wheels = [ + { url = "https://files.pythonhosted.org/packages/e8/2d/d2a548598be01649e2d46231d151a6c56d10b964d94043a335ae56ea2d92/flatbuffers-25.12.19-py2.py3-none-any.whl", hash = "sha256:7634f50c427838bb021c2d66a3d1168e9d199b0607e6329399f04846d42e20b4", size = 26661 }, +] + [[package]] name = "fqdn" version = "1.5.1" @@ -815,6 +935,38 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/66/bb/852b9d6db2fa40be96f29c0d1205c306288f0684df8fd26ca1951d461a56/frozenlist-1.8.0-cp312-cp312-win32.whl", hash = "sha256:433403ae80709741ce34038da08511d4a77062aa924baf411ef73d1146e74faf", size = 39985 }, { url = "https://files.pythonhosted.org/packages/b8/af/38e51a553dd66eb064cdf193841f16f077585d4d28394c2fa6235cb41765/frozenlist-1.8.0-cp312-cp312-win_amd64.whl", hash = "sha256:34187385b08f866104f0c0617404c8eb08165ab1272e884abc89c112e9c00746", size = 44591 }, { url = "https://files.pythonhosted.org/packages/a7/06/1dc65480ab147339fecc70797e9c2f69d9cea9cf38934ce08df070fdb9cb/frozenlist-1.8.0-cp312-cp312-win_arm64.whl", hash = "sha256:fe3c58d2f5db5fbd18c2987cba06d51b0529f52bc3a6cdc33d3f4eab725104bd", size = 40102 }, + { url = "https://files.pythonhosted.org/packages/2d/40/0832c31a37d60f60ed79e9dfb5a92e1e2af4f40a16a29abcc7992af9edff/frozenlist-1.8.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8d92f1a84bb12d9e56f818b3a746f3efba93c1b63c8387a73dde655e1e42282a", size = 85717 }, + { url = "https://files.pythonhosted.org/packages/30/ba/b0b3de23f40bc55a7057bd38434e25c34fa48e17f20ee273bbde5e0650f3/frozenlist-1.8.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:96153e77a591c8adc2ee805756c61f59fef4cf4073a9275ee86fe8cba41241f7", size = 49651 }, + { url = "https://files.pythonhosted.org/packages/0c/ab/6e5080ee374f875296c4243c381bbdef97a9ac39c6e3ce1d5f7d42cb78d6/frozenlist-1.8.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f21f00a91358803399890ab167098c131ec2ddd5f8f5fd5fe9c9f2c6fcd91e40", size = 49417 }, + { url = "https://files.pythonhosted.org/packages/d5/4e/e4691508f9477ce67da2015d8c00acd751e6287739123113a9fca6f1604e/frozenlist-1.8.0-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:fb30f9626572a76dfe4293c7194a09fb1fe93ba94c7d4f720dfae3b646b45027", size = 234391 }, + { url = "https://files.pythonhosted.org/packages/40/76/c202df58e3acdf12969a7895fd6f3bc016c642e6726aa63bd3025e0fc71c/frozenlist-1.8.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:eaa352d7047a31d87dafcacbabe89df0aa506abb5b1b85a2fb91bc3faa02d822", size = 233048 }, + { url = "https://files.pythonhosted.org/packages/f9/c0/8746afb90f17b73ca5979c7a3958116e105ff796e718575175319b5bb4ce/frozenlist-1.8.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:03ae967b4e297f58f8c774c7eabcce57fe3c2434817d4385c50661845a058121", size = 226549 }, + { url = "https://files.pythonhosted.org/packages/7e/eb/4c7eefc718ff72f9b6c4893291abaae5fbc0c82226a32dcd8ef4f7a5dbef/frozenlist-1.8.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:f6292f1de555ffcc675941d65fffffb0a5bcd992905015f85d0592201793e0e5", size = 239833 }, + { url = "https://files.pythonhosted.org/packages/c2/4e/e5c02187cf704224f8b21bee886f3d713ca379535f16893233b9d672ea71/frozenlist-1.8.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:29548f9b5b5e3460ce7378144c3010363d8035cea44bc0bf02d57f5a685e084e", size = 245363 }, + { url = "https://files.pythonhosted.org/packages/1f/96/cb85ec608464472e82ad37a17f844889c36100eed57bea094518bf270692/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ec3cc8c5d4084591b4237c0a272cc4f50a5b03396a47d9caaf76f5d7b38a4f11", size = 229314 }, + { url = "https://files.pythonhosted.org/packages/5d/6f/4ae69c550e4cee66b57887daeebe006fe985917c01d0fff9caab9883f6d0/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:517279f58009d0b1f2e7c1b130b377a349405da3f7621ed6bfae50b10adf20c1", size = 243365 }, + { url = "https://files.pythonhosted.org/packages/7a/58/afd56de246cf11780a40a2c28dc7cbabbf06337cc8ddb1c780a2d97e88d8/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:db1e72ede2d0d7ccb213f218df6a078a9c09a7de257c2fe8fcef16d5925230b1", size = 237763 }, + { url = "https://files.pythonhosted.org/packages/cb/36/cdfaf6ed42e2644740d4a10452d8e97fa1c062e2a8006e4b09f1b5fd7d63/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:b4dec9482a65c54a5044486847b8a66bf10c9cb4926d42927ec4e8fd5db7fed8", size = 240110 }, + { url = "https://files.pythonhosted.org/packages/03/a8/9ea226fbefad669f11b52e864c55f0bd57d3c8d7eb07e9f2e9a0b39502e1/frozenlist-1.8.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:21900c48ae04d13d416f0e1e0c4d81f7931f73a9dfa0b7a8746fb2fe7dd970ed", size = 233717 }, + { url = "https://files.pythonhosted.org/packages/1e/0b/1b5531611e83ba7d13ccc9988967ea1b51186af64c42b7a7af465dcc9568/frozenlist-1.8.0-cp313-cp313-win32.whl", hash = "sha256:8b7b94a067d1c504ee0b16def57ad5738701e4ba10cec90529f13fa03c833496", size = 39628 }, + { url = "https://files.pythonhosted.org/packages/d8/cf/174c91dbc9cc49bc7b7aab74d8b734e974d1faa8f191c74af9b7e80848e6/frozenlist-1.8.0-cp313-cp313-win_amd64.whl", hash = "sha256:878be833caa6a3821caf85eb39c5ba92d28e85df26d57afb06b35b2efd937231", size = 43882 }, + { url = "https://files.pythonhosted.org/packages/c1/17/502cd212cbfa96eb1388614fe39a3fc9ab87dbbe042b66f97acb57474834/frozenlist-1.8.0-cp313-cp313-win_arm64.whl", hash = "sha256:44389d135b3ff43ba8cc89ff7f51f5a0bb6b63d829c8300f79a2fe4fe61bcc62", size = 39676 }, + { url = "https://files.pythonhosted.org/packages/d2/5c/3bbfaa920dfab09e76946a5d2833a7cbdf7b9b4a91c714666ac4855b88b4/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:e25ac20a2ef37e91c1b39938b591457666a0fa835c7783c3a8f33ea42870db94", size = 89235 }, + { url = "https://files.pythonhosted.org/packages/d2/d6/f03961ef72166cec1687e84e8925838442b615bd0b8854b54923ce5b7b8a/frozenlist-1.8.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07cdca25a91a4386d2e76ad992916a85038a9b97561bf7a3fd12d5d9ce31870c", size = 50742 }, + { url = "https://files.pythonhosted.org/packages/1e/bb/a6d12b7ba4c3337667d0e421f7181c82dda448ce4e7ad7ecd249a16fa806/frozenlist-1.8.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:4e0c11f2cc6717e0a741f84a527c52616140741cd812a50422f83dc31749fb52", size = 51725 }, + { url = "https://files.pythonhosted.org/packages/bc/71/d1fed0ffe2c2ccd70b43714c6cab0f4188f09f8a67a7914a6b46ee30f274/frozenlist-1.8.0-cp313-cp313t-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:b3210649ee28062ea6099cfda39e147fa1bc039583c8ee4481cb7811e2448c51", size = 284533 }, + { url = "https://files.pythonhosted.org/packages/c9/1f/fb1685a7b009d89f9bf78a42d94461bc06581f6e718c39344754a5d9bada/frozenlist-1.8.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:581ef5194c48035a7de2aefc72ac6539823bb71508189e5de01d60c9dcd5fa65", size = 292506 }, + { url = "https://files.pythonhosted.org/packages/e6/3b/b991fe1612703f7e0d05c0cf734c1b77aaf7c7d321df4572e8d36e7048c8/frozenlist-1.8.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:3ef2d026f16a2b1866e1d86fc4e1291e1ed8a387b2c333809419a2f8b3a77b82", size = 274161 }, + { url = "https://files.pythonhosted.org/packages/ca/ec/c5c618767bcdf66e88945ec0157d7f6c4a1322f1473392319b7a2501ded7/frozenlist-1.8.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5500ef82073f599ac84d888e3a8c1f77ac831183244bfd7f11eaa0289fb30714", size = 294676 }, + { url = "https://files.pythonhosted.org/packages/7c/ce/3934758637d8f8a88d11f0585d6495ef54b2044ed6ec84492a91fa3b27aa/frozenlist-1.8.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:50066c3997d0091c411a66e710f4e11752251e6d2d73d70d8d5d4c76442a199d", size = 300638 }, + { url = "https://files.pythonhosted.org/packages/fc/4f/a7e4d0d467298f42de4b41cbc7ddaf19d3cfeabaf9ff97c20c6c7ee409f9/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:5c1c8e78426e59b3f8005e9b19f6ff46e5845895adbde20ece9218319eca6506", size = 283067 }, + { url = "https://files.pythonhosted.org/packages/dc/48/c7b163063d55a83772b268e6d1affb960771b0e203b632cfe09522d67ea5/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:eefdba20de0d938cec6a89bd4d70f346a03108a19b9df4248d3cf0d88f1b0f51", size = 292101 }, + { url = "https://files.pythonhosted.org/packages/9f/d0/2366d3c4ecdc2fd391e0afa6e11500bfba0ea772764d631bbf82f0136c9d/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:cf253e0e1c3ceb4aaff6df637ce033ff6535fb8c70a764a8f46aafd3d6ab798e", size = 289901 }, + { url = "https://files.pythonhosted.org/packages/b8/94/daff920e82c1b70e3618a2ac39fbc01ae3e2ff6124e80739ce5d71c9b920/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:032efa2674356903cd0261c4317a561a6850f3ac864a63fc1583147fb05a79b0", size = 289395 }, + { url = "https://files.pythonhosted.org/packages/e3/20/bba307ab4235a09fdcd3cc5508dbabd17c4634a1af4b96e0f69bfe551ebd/frozenlist-1.8.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6da155091429aeba16851ecb10a9104a108bcd32f6c1642867eadaee401c1c41", size = 283659 }, + { url = "https://files.pythonhosted.org/packages/fd/00/04ca1c3a7a124b6de4f8a9a17cc2fcad138b4608e7a3fc5877804b8715d7/frozenlist-1.8.0-cp313-cp313t-win32.whl", hash = "sha256:0f96534f8bfebc1a394209427d0f8a63d343c9779cda6fc25e8e121b5fd8555b", size = 43492 }, + { url = "https://files.pythonhosted.org/packages/59/5e/c69f733a86a94ab10f68e496dc6b7e8bc078ebb415281d5698313e3af3a1/frozenlist-1.8.0-cp313-cp313t-win_amd64.whl", hash = "sha256:5d63a068f978fc69421fb0e6eb91a9603187527c86b7cd3f534a5b77a592b888", size = 48034 }, + { url = "https://files.pythonhosted.org/packages/16/6c/be9d79775d8abe79b05fa6d23da99ad6e7763a1d080fbae7290b286093fd/frozenlist-1.8.0-cp313-cp313t-win_arm64.whl", hash = "sha256:bf0a7e10b077bf5fb9380ad3ae8ce20ef919a6ad93b4552896419ac7e1d8e042", size = 41749 }, { url = "https://files.pythonhosted.org/packages/9a/9a/e35b4a917281c0b8419d4207f4334c8e8c5dbf4f3f5f9ada73958d937dcc/frozenlist-1.8.0-py3-none-any.whl", hash = "sha256:0c18a16eab41e82c295618a77502e17b195883241c563b00f0aa5106fc4eaa0d", size = 13409 }, ] @@ -962,6 +1114,7 @@ source = { editable = "packages/graphrag-input" } dependencies = [ { name = "graphrag-common" }, { name = "graphrag-storage" }, + { name = "markitdown" }, { name = "pydantic" }, ] @@ -969,6 +1122,7 @@ dependencies = [ requires-dist = [ { name = "graphrag-common", editable = "packages/graphrag-common" }, { name = "graphrag-storage", editable = "packages/graphrag-storage" }, + { name = "markitdown", specifier = "~=0.1.0" }, { name = "pydantic", specifier = "~=2.10" }, ] @@ -1133,6 +1287,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/31/a0/651f93d154cb72323358bf2bbae3e642bdb5d2f1bfc874d096f7cb159fa0/huggingface_hub-0.35.3-py3-none-any.whl", hash = "sha256:0e3a01829c19d86d03793e4577816fe3bdfc1602ac62c7fb220d593d351224ba", size = 564262 }, ] +[[package]] +name = "humanfriendly" +version = "10.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "pyreadline3", marker = "sys_platform == 'win32'" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/cc/3f/2c29224acb2e2df4d2046e4c73ee2662023c58ff5b113c4c1adac0886c43/humanfriendly-10.0.tar.gz", hash = "sha256:6b0b831ce8f15f7300721aa49829fc4e83921a9a301cc7f606be6686a2288ddc", size = 360702 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/f0/0f/310fb31e39e2d734ccaa2c0fb981ee41f7bd5056ce9bc29b2248bd569169/humanfriendly-10.0-py2.py3-none-any.whl", hash = "sha256:1697e1a8a8f550fd43c2865cd84542fc175a61dcb779b6fee18cf6b6ccba1477", size = 86794 }, +] + [[package]] name = "idna" version = "3.10" @@ -1312,6 +1478,21 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/89/b5/4a283bec43b15aad54fcae18d951f06a2ec3f78db5708d3b59a48e9c3fbd/jiter-0.11.0-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:11840d2324c9ab5162fc1abba23bc922124fedcff0d7b7f85fffa291e2f69206", size = 509461 }, { url = "https://files.pythonhosted.org/packages/34/a5/f8bad793010534ea73c985caaeef8cc22dfb1fedb15220ecdf15c623c07a/jiter-0.11.0-cp312-cp312-win32.whl", hash = "sha256:4f01a744d24a5f2bb4a11657a1b27b61dc038ae2e674621a74020406e08f749b", size = 206664 }, { url = "https://files.pythonhosted.org/packages/ed/42/5823ec2b1469395a160b4bf5f14326b4a098f3b6898fbd327366789fa5d3/jiter-0.11.0-cp312-cp312-win_amd64.whl", hash = "sha256:29fff31190ab3a26de026da2f187814f4b9c6695361e20a9ac2123e4d4378a4c", size = 203520 }, + { url = "https://files.pythonhosted.org/packages/97/c4/d530e514d0f4f29b2b68145e7b389cbc7cac7f9c8c23df43b04d3d10fa3e/jiter-0.11.0-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:4441a91b80a80249f9a6452c14b2c24708f139f64de959943dfeaa6cb915e8eb", size = 305021 }, + { url = "https://files.pythonhosted.org/packages/7a/77/796a19c567c5734cbfc736a6f987affc0d5f240af8e12063c0fb93990ffa/jiter-0.11.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:ff85fc6d2a431251ad82dbd1ea953affb5a60376b62e7d6809c5cd058bb39471", size = 314384 }, + { url = "https://files.pythonhosted.org/packages/14/9c/824334de0b037b91b6f3fa9fe5a191c83977c7ec4abe17795d3cb6d174cf/jiter-0.11.0-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:c5e86126d64706fd28dfc46f910d496923c6f95b395138c02d0e252947f452bd", size = 337389 }, + { url = "https://files.pythonhosted.org/packages/a2/95/ed4feab69e6cf9b2176ea29d4ef9d01a01db210a3a2c8a31a44ecdc68c38/jiter-0.11.0-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:4ad8bd82165961867a10f52010590ce0b7a8c53da5ddd8bbb62fef68c181b921", size = 360519 }, + { url = "https://files.pythonhosted.org/packages/b5/0c/2ad00f38d3e583caba3909d95b7da1c3a7cd82c0aa81ff4317a8016fb581/jiter-0.11.0-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b42c2cd74273455ce439fd9528db0c6e84b5623cb74572305bdd9f2f2961d3df", size = 487198 }, + { url = "https://files.pythonhosted.org/packages/ea/8b/919b64cf3499b79bdfba6036da7b0cac5d62d5c75a28fb45bad7819e22f0/jiter-0.11.0-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f0062dab98172dd0599fcdbf90214d0dcde070b1ff38a00cc1b90e111f071982", size = 377835 }, + { url = "https://files.pythonhosted.org/packages/29/7f/8ebe15b6e0a8026b0d286c083b553779b4dd63db35b43a3f171b544de91d/jiter-0.11.0-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bb948402821bc76d1f6ef0f9e19b816f9b09f8577844ba7140f0b6afe994bc64", size = 347655 }, + { url = "https://files.pythonhosted.org/packages/8e/64/332127cef7e94ac75719dda07b9a472af6158ba819088d87f17f3226a769/jiter-0.11.0-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:25a5b1110cca7329fd0daf5060faa1234be5c11e988948e4f1a1923b6a457fe1", size = 386135 }, + { url = "https://files.pythonhosted.org/packages/20/c8/557b63527442f84c14774159948262a9d4fabb0d61166f11568f22fc60d2/jiter-0.11.0-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:bf11807e802a214daf6c485037778843fadd3e2ec29377ae17e0706ec1a25758", size = 516063 }, + { url = "https://files.pythonhosted.org/packages/86/13/4164c819df4a43cdc8047f9a42880f0ceef5afeb22e8b9675c0528ebdccd/jiter-0.11.0-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:dbb57da40631c267861dd0090461222060960012d70fd6e4c799b0f62d0ba166", size = 508139 }, + { url = "https://files.pythonhosted.org/packages/fa/70/6e06929b401b331d41ddb4afb9f91cd1168218e3371972f0afa51c9f3c31/jiter-0.11.0-cp313-cp313-win32.whl", hash = "sha256:8e36924dad32c48d3c5e188d169e71dc6e84d6cb8dedefea089de5739d1d2f80", size = 206369 }, + { url = "https://files.pythonhosted.org/packages/f4/0d/8185b8e15de6dce24f6afae63380e16377dd75686d56007baa4f29723ea1/jiter-0.11.0-cp313-cp313-win_amd64.whl", hash = "sha256:452d13e4fd59698408087235259cebe67d9d49173b4dacb3e8d35ce4acf385d6", size = 202538 }, + { url = "https://files.pythonhosted.org/packages/13/3a/d61707803260d59520721fa326babfae25e9573a88d8b7b9cb54c5423a59/jiter-0.11.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:089f9df9f69532d1339e83142438668f52c97cd22ee2d1195551c2b1a9e6cf33", size = 313737 }, + { url = "https://files.pythonhosted.org/packages/cd/cc/c9f0eec5d00f2a1da89f6bdfac12b8afdf8d5ad974184863c75060026457/jiter-0.11.0-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:29ed1fe69a8c69bf0f2a962d8d706c7b89b50f1332cd6b9fbda014f60bd03a03", size = 346183 }, + { url = "https://files.pythonhosted.org/packages/a6/87/fc632776344e7aabbab05a95a0075476f418c5d29ab0f2eec672b7a1f0ac/jiter-0.11.0-cp313-cp313t-win_amd64.whl", hash = "sha256:a4d71d7ea6ea8786291423fe209acf6f8d398a0759d03e7f24094acb8ab686ba", size = 204225 }, { url = "https://files.pythonhosted.org/packages/70/f3/ce100253c80063a7b8b406e1d1562657fd4b9b4e1b562db40e68645342fb/jiter-0.11.0-graalpy311-graalpy242_311_native-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:902b43386c04739229076bd1c4c69de5d115553d982ab442a8ae82947c72ede7", size = 336380 }, ] @@ -1686,6 +1867,24 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/86/50/53df2244d4aca2af73d2f2c6ad21c731cf24bd0dbe89d896184a1eaa874f/litellm-1.77.7-py3-none-any.whl", hash = "sha256:1b3a1b17bd521a0ad25226fb62a912602c803922aabb4a16adf83834673be574", size = 9223061 }, ] +[[package]] +name = "magika" +version = "0.6.3" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "click" }, + { name = "numpy" }, + { name = "onnxruntime" }, + { name = "python-dotenv" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/a3/f3/3d1dcdd7b9c41d589f5cff252d32ed91cdf86ba84391cfc81d9d8773571d/magika-0.6.3.tar.gz", hash = "sha256:7cc52aa7359af861957043e2bf7265ed4741067251c104532765cd668c0c0cb1", size = 3042784 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/e4/35c323beb3280482c94299d61626116856ac2d4ec16ecef50afc4fdd4291/magika-0.6.3-py3-none-any.whl", hash = "sha256:eda443d08006ee495e02083b32e51b98cb3696ab595a7d13900d8e2ef506ec9d", size = 2969474 }, + { url = "https://files.pythonhosted.org/packages/25/8f/132b0d7cd51c02c39fd52658a5896276c30c8cc2fd453270b19db8c40f7e/magika-0.6.3-py3-none-macosx_11_0_arm64.whl", hash = "sha256:86901e64b05dde5faff408c9b8245495b2e1fd4c226e3393d3d2a3fee65c504b", size = 13358841 }, + { url = "https://files.pythonhosted.org/packages/c4/03/5ed859be502903a68b7b393b17ae0283bf34195cfcca79ce2dc25b9290e7/magika-0.6.3-py3-none-manylinux_2_28_x86_64.whl", hash = "sha256:3d9661eedbdf445ac9567e97e7ceefb93545d77a6a32858139ea966b5806fb64", size = 15367335 }, + { url = "https://files.pythonhosted.org/packages/7b/9e/f8ee7d644affa3b80efdd623a3d75865c8f058f3950cb87fb0c48e3559bc/magika-0.6.3-py3-none-win_amd64.whl", hash = "sha256:e57f75674447b20cab4db928ae58ab264d7d8582b55183a0b876711c2b2787f3", size = 12692831 }, +] + [[package]] name = "marisa-trie" version = "1.3.1" @@ -1708,6 +1907,22 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/58/da/244d9d4e414ce6c73124cba4cc293dd140bf3b04ca18dec64c2775cca951/marisa_trie-1.3.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:0b9816ab993001a7854b02a7daec228892f35bd5ab0ac493bacbd1b80baec9f1", size = 2256104 }, { url = "https://files.pythonhosted.org/packages/c4/f1/1a36ecd7da6668685a7753522af89a19928ffc80f1cc1dbc301af216f011/marisa_trie-1.3.1-cp312-cp312-win32.whl", hash = "sha256:c785fd6dae9daa6825734b7b494cdac972f958be1f9cb3fb1f32be8598d2b936", size = 115624 }, { url = "https://files.pythonhosted.org/packages/35/b2/aabd1c9f1c102aa31d66633ed5328c447be166e0a703f9723e682478fd83/marisa_trie-1.3.1-cp312-cp312-win_amd64.whl", hash = "sha256:9868b7a8e0f648d09ffe25ac29511e6e208cc5fb0d156c295385f9d5dc2a138e", size = 138562 }, + { url = "https://files.pythonhosted.org/packages/46/a2/8331b995c1b3eee83aa745f4a6502d737ec523d5955a48f167d4177db105/marisa_trie-1.3.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:9de573d933db4753a50af891bcb3ffbfe14e200406214c223aa5dfe2163f316d", size = 172272 }, + { url = "https://files.pythonhosted.org/packages/97/b8/7b9681b5c0ea1bb950f907a4e3919eb7f7b7b3febafaae346f3b3f199f6f/marisa_trie-1.3.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f4bae4f920f2a1082eaf766c1883df7da84abdf333bafa15b8717c10416a615e", size = 154671 }, + { url = "https://files.pythonhosted.org/packages/ca/16/929c1f83fdcff13f8d08500f434aaa18c21c8168d16cf81585d69085e980/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bf9f2b97fcfd5e2dbb0090d0664023872dcde990df0b545eca8d0ce95795a409", size = 1238754 }, + { url = "https://files.pythonhosted.org/packages/0f/0a/b0e04d3ef91a87d4c7ea0b66c004fdfc6e65c9ed83edaebecfb482dfe0ed/marisa_trie-1.3.1-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ecdb19d33b26738a32602ef432b06cc6deeca4b498ce67ba8e5e39c8a7c19745", size = 1262653 }, + { url = "https://files.pythonhosted.org/packages/de/1f/0ecf610ddc9a209ee63116baabb47584d5b8ecd01610091a593d9429537e/marisa_trie-1.3.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a7416f1a084eb889c5792c57317875aeaa86abfe0bdc6f167712cebcec1d36ee", size = 2172399 }, + { url = "https://files.pythonhosted.org/packages/ac/74/6b47deff3b3920449c135b9187c80f0d656adcdc5d41463745a61b012ea1/marisa_trie-1.3.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ee428575377e29c636f2b4b3b0488875dcea310c6c5b3412ec4ef997f7bb37cc", size = 2255138 }, + { url = "https://files.pythonhosted.org/packages/bd/fa/3dbcbe93dfaa626a5b3e741e7bcf3d7389aa5777175213bd8d9a9d3c992d/marisa_trie-1.3.1-cp313-cp313-win32.whl", hash = "sha256:d0f87bdf660f01e88ab3a507955697b2e3284065afa0b94fc9e77d6ad153ed5e", size = 115391 }, + { url = "https://files.pythonhosted.org/packages/3b/ce/ddfab303646b21aef07ff9dbc83fba92e5d493f49d3bc03d899ffd45c86f/marisa_trie-1.3.1-cp313-cp313-win_amd64.whl", hash = "sha256:a83f5f7ae3494e0cc25211296252b1b86901c788ed82c83adda19d0c98f828d6", size = 139130 }, + { url = "https://files.pythonhosted.org/packages/5a/1e/734b618048ad05c50cb1673ce2c6e836dc38ddeeeb011ed1804af07327a4/marisa_trie-1.3.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:a850b151bd1e3a5d9afef113adc22727d696603659d575d7e84f994bd8d04bf1", size = 175131 }, + { url = "https://files.pythonhosted.org/packages/d3/78/c7051147cc918cb8ff4a2920e11a9b17d9dcb4d8fc122122694b486e2bfe/marisa_trie-1.3.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:9dc61fb8f8993589544f6df268229c6cf0a56ad4ed3e8585a9cd23c5ad79527b", size = 163094 }, + { url = "https://files.pythonhosted.org/packages/ee/b8/3b904178d7878319aacaabae5131c1f281519aaac0f8c68c8ed312912ccf/marisa_trie-1.3.1-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d4bd41a6e73c0d0adafe4de449b6d35530a4ce6a836a6ee839baf117785ecfd7", size = 1279812 }, + { url = "https://files.pythonhosted.org/packages/fb/bf/e77a1284247b980560b4104bbdd5d06ed2c2ae3d56ab954f97293b6dbbcd/marisa_trie-1.3.1-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8c8b2386d2d22c57880ed20a913ceca86363765623175671137484a7d223f07a", size = 1285690 }, + { url = "https://files.pythonhosted.org/packages/48/82/f6f10db5ec72de2642499f3a6e4e8607bbd2cfb28269ea08d0d8ddac3313/marisa_trie-1.3.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9c56001badaf1779afae5c24b7ab85938644ab8ef3c5fd438ab5d49621b84482", size = 2197943 }, + { url = "https://files.pythonhosted.org/packages/2a/d0/74b6c3011b1ebf4a8131430156b14c3af694082cf34c392fff766096fd4b/marisa_trie-1.3.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:83a3748088d117a9b15d8981c947df9e4f56eb2e4b5456ae34fe1f83666c9185", size = 2280132 }, + { url = "https://files.pythonhosted.org/packages/28/b2/b8b0cb738fa3ab07309ed92025c6e1b278f84c7255e976921a52b30d8d1b/marisa_trie-1.3.1-cp313-cp313t-win32.whl", hash = "sha256:137010598d8cebc53dbfb7caf59bde96c33a6af555e3e1bdbf30269b6a157e1e", size = 126446 }, + { url = "https://files.pythonhosted.org/packages/b6/c6/2381648d0c946556ef51c673397cea40712d945444ceed0a0a0b51a174d2/marisa_trie-1.3.1-cp313-cp313t-win_amd64.whl", hash = "sha256:ec633e108f277f2b7f4671d933a909f39bba549910bf103e2940b87a14da2783", size = 153885 }, ] [[package]] @@ -1731,6 +1946,37 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/94/54/e7d793b573f298e1c9013b8c4dade17d481164aa517d1d7148619c2cedbf/markdown_it_py-4.0.0-py3-none-any.whl", hash = "sha256:87327c59b172c5011896038353a81343b6754500a08cd7a4973bb48c6d578147", size = 87321 }, ] +[[package]] +name = "markdownify" +version = "1.2.2" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "six" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/3f/bc/c8c8eea5335341306b0fa7e1cb33c5e1c8d24ef70ddd684da65f41c49c92/markdownify-1.2.2.tar.gz", hash = "sha256:b274f1b5943180b031b699b199cbaeb1e2ac938b75851849a31fd0c3d6603d09", size = 18816 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/43/ce/f1e3e9d959db134cedf06825fae8d5b294bd368aacdd0831a3975b7c4d55/markdownify-1.2.2-py3-none-any.whl", hash = "sha256:3f02d3cc52714084d6e589f70397b6fc9f2f3a8531481bf35e8cc39f975e186a", size = 15724 }, +] + +[[package]] +name = "markitdown" +version = "0.1.4" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "beautifulsoup4" }, + { name = "charset-normalizer" }, + { name = "defusedxml" }, + { name = "magika" }, + { name = "markdownify" }, + { name = "onnxruntime", marker = "sys_platform == 'win32'" }, + { name = "requests" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/f3/4d/06567465c1886c2ea47bac24eab0c96bb6b4ecea47224323409dc9cbb614/markitdown-0.1.4.tar.gz", hash = "sha256:e72a481d1a50c82ff744e85e3289f79a940c5d0ad5ffa2b37c33de814c195bb1", size = 39951 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/9f/b3/6138d2b23d5b534b0fa3736987a2e11bcef5419cbc9286c8afd229d21558/markitdown-0.1.4-py3-none-any.whl", hash = "sha256:d7f3805716b22545f693d355e28e89584226c0614b3b80b7c4a3f825f068492d", size = 58314 }, +] + [[package]] name = "markupsafe" version = "3.0.3" @@ -1759,6 +2005,28 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/2f/e1/78ee7a023dac597a5825441ebd17170785a9dab23de95d2c7508ade94e0e/markupsafe-3.0.3-cp312-cp312-win32.whl", hash = "sha256:d88b440e37a16e651bda4c7c2b930eb586fd15ca7406cb39e211fcff3bf3017d", size = 14540 }, { url = "https://files.pythonhosted.org/packages/aa/5b/bec5aa9bbbb2c946ca2733ef9c4ca91c91b6a24580193e891b5f7dbe8e1e/markupsafe-3.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:26a5784ded40c9e318cfc2bdb30fe164bdb8665ded9cd64d500a34fb42067b1c", size = 15105 }, { url = "https://files.pythonhosted.org/packages/e5/f1/216fc1bbfd74011693a4fd837e7026152e89c4bcf3e77b6692fba9923123/markupsafe-3.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:35add3b638a5d900e807944a078b51922212fb3dedb01633a8defc4b01a3c85f", size = 13906 }, + { url = "https://files.pythonhosted.org/packages/38/2f/907b9c7bbba283e68f20259574b13d005c121a0fa4c175f9bed27c4597ff/markupsafe-3.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:e1cf1972137e83c5d4c136c43ced9ac51d0e124706ee1c8aa8532c1287fa8795", size = 11622 }, + { url = "https://files.pythonhosted.org/packages/9c/d9/5f7756922cdd676869eca1c4e3c0cd0df60ed30199ffd775e319089cb3ed/markupsafe-3.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:116bb52f642a37c115f517494ea5feb03889e04df47eeff5b130b1808ce7c219", size = 12029 }, + { url = "https://files.pythonhosted.org/packages/00/07/575a68c754943058c78f30db02ee03a64b3c638586fba6a6dd56830b30a3/markupsafe-3.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:133a43e73a802c5562be9bbcd03d090aa5a1fe899db609c29e8c8d815c5f6de6", size = 24374 }, + { url = "https://files.pythonhosted.org/packages/a9/21/9b05698b46f218fc0e118e1f8168395c65c8a2c750ae2bab54fc4bd4e0e8/markupsafe-3.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ccfcd093f13f0f0b7fdd0f198b90053bf7b2f02a3927a30e63f3ccc9df56b676", size = 22980 }, + { url = "https://files.pythonhosted.org/packages/7f/71/544260864f893f18b6827315b988c146b559391e6e7e8f7252839b1b846a/markupsafe-3.0.3-cp313-cp313-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:509fa21c6deb7a7a273d629cf5ec029bc209d1a51178615ddf718f5918992ab9", size = 21990 }, + { url = "https://files.pythonhosted.org/packages/c2/28/b50fc2f74d1ad761af2f5dcce7492648b983d00a65b8c0e0cb457c82ebbe/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a4afe79fb3de0b7097d81da19090f4df4f8d3a2b3adaa8764138aac2e44f3af1", size = 23784 }, + { url = "https://files.pythonhosted.org/packages/ed/76/104b2aa106a208da8b17a2fb72e033a5a9d7073c68f7e508b94916ed47a9/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_riscv64.whl", hash = "sha256:795e7751525cae078558e679d646ae45574b47ed6e7771863fcc079a6171a0fc", size = 21588 }, + { url = "https://files.pythonhosted.org/packages/b5/99/16a5eb2d140087ebd97180d95249b00a03aa87e29cc224056274f2e45fd6/markupsafe-3.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:8485f406a96febb5140bfeca44a73e3ce5116b2501ac54fe953e488fb1d03b12", size = 23041 }, + { url = "https://files.pythonhosted.org/packages/19/bc/e7140ed90c5d61d77cea142eed9f9c303f4c4806f60a1044c13e3f1471d0/markupsafe-3.0.3-cp313-cp313-win32.whl", hash = "sha256:bdd37121970bfd8be76c5fb069c7751683bdf373db1ed6c010162b2a130248ed", size = 14543 }, + { url = "https://files.pythonhosted.org/packages/05/73/c4abe620b841b6b791f2edc248f556900667a5a1cf023a6646967ae98335/markupsafe-3.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:9a1abfdc021a164803f4d485104931fb8f8c1efd55bc6b748d2f5774e78b62c5", size = 15113 }, + { url = "https://files.pythonhosted.org/packages/f0/3a/fa34a0f7cfef23cf9500d68cb7c32dd64ffd58a12b09225fb03dd37d5b80/markupsafe-3.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:7e68f88e5b8799aa49c85cd116c932a1ac15caaa3f5db09087854d218359e485", size = 13911 }, + { url = "https://files.pythonhosted.org/packages/e4/d7/e05cd7efe43a88a17a37b3ae96e79a19e846f3f456fe79c57ca61356ef01/markupsafe-3.0.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:218551f6df4868a8d527e3062d0fb968682fe92054e89978594c28e642c43a73", size = 11658 }, + { url = "https://files.pythonhosted.org/packages/99/9e/e412117548182ce2148bdeacdda3bb494260c0b0184360fe0d56389b523b/markupsafe-3.0.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:3524b778fe5cfb3452a09d31e7b5adefeea8c5be1d43c4f810ba09f2ceb29d37", size = 12066 }, + { url = "https://files.pythonhosted.org/packages/bc/e6/fa0ffcda717ef64a5108eaa7b4f5ed28d56122c9a6d70ab8b72f9f715c80/markupsafe-3.0.3-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4e885a3d1efa2eadc93c894a21770e4bc67899e3543680313b09f139e149ab19", size = 25639 }, + { url = "https://files.pythonhosted.org/packages/96/ec/2102e881fe9d25fc16cb4b25d5f5cde50970967ffa5dddafdb771237062d/markupsafe-3.0.3-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:8709b08f4a89aa7586de0aadc8da56180242ee0ada3999749b183aa23df95025", size = 23569 }, + { url = "https://files.pythonhosted.org/packages/4b/30/6f2fce1f1f205fc9323255b216ca8a235b15860c34b6798f810f05828e32/markupsafe-3.0.3-cp313-cp313t-manylinux_2_31_riscv64.manylinux_2_39_riscv64.whl", hash = "sha256:b8512a91625c9b3da6f127803b166b629725e68af71f8184ae7e7d54686a56d6", size = 23284 }, + { url = "https://files.pythonhosted.org/packages/58/47/4a0ccea4ab9f5dcb6f79c0236d954acb382202721e704223a8aafa38b5c8/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:9b79b7a16f7fedff2495d684f2b59b0457c3b493778c9eed31111be64d58279f", size = 24801 }, + { url = "https://files.pythonhosted.org/packages/6a/70/3780e9b72180b6fecb83a4814d84c3bf4b4ae4bf0b19c27196104149734c/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_riscv64.whl", hash = "sha256:12c63dfb4a98206f045aa9563db46507995f7ef6d83b2f68eda65c307c6829eb", size = 22769 }, + { url = "https://files.pythonhosted.org/packages/98/c5/c03c7f4125180fc215220c035beac6b9cb684bc7a067c84fc69414d315f5/markupsafe-3.0.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:8f71bc33915be5186016f675cd83a1e08523649b0e33efdb898db577ef5bb009", size = 23642 }, + { url = "https://files.pythonhosted.org/packages/80/d6/2d1b89f6ca4bff1036499b1e29a1d02d282259f3681540e16563f27ebc23/markupsafe-3.0.3-cp313-cp313t-win32.whl", hash = "sha256:69c0b73548bc525c8cb9a251cddf1931d1db4d2258e9599c28c07ef3580ef354", size = 14612 }, + { url = "https://files.pythonhosted.org/packages/2b/98/e48a4bfba0a0ffcf9925fe2d69240bfaa19c6f7507b8cd09c70684a53c1e/markupsafe-3.0.3-cp313-cp313t-win_amd64.whl", hash = "sha256:1b4b79e8ebf6b55351f0d91fe80f893b4743f104bff22e90697db1590e47a218", size = 15200 }, + { url = "https://files.pythonhosted.org/packages/0e/72/e3cc540f351f316e9ed0f092757459afbc595824ca724cbc5a5d4263713f/markupsafe-3.0.3-cp313-cp313t-win_arm64.whl", hash = "sha256:ad2cf8aa28b8c020ab2fc8287b0f823d0a7d8630784c31e9ee5edea20f406287", size = 13973 }, ] [[package]] @@ -1932,6 +2200,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/38/34/4d6722b7cdb5e37474272205df6f2080ad01aff74570820a83dedb314f1b/mkdocs_typer-0.0.3-py3-none-any.whl", hash = "sha256:b2a9a44da590a7100114fde4de9123fedfea692d229379984db20ee3b3f12d7c", size = 11564 }, ] +[[package]] +name = "mpmath" +version = "1.3.0" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/e0/47/dd32fa426cc72114383ac549964eecb20ecfd886d1e5ccf5340b55b02f57/mpmath-1.3.0.tar.gz", hash = "sha256:7a28eb2a9774d00c7bc92411c19a89209d5da7c4c9a9e227be8330a23a25b91f", size = 508106 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/43/e3/7d92a15f894aa0c9c4b49b8ee9ac9850d6e63b03c9c32c0367a13ae62209/mpmath-1.3.0-py3-none-any.whl", hash = "sha256:a0b2b9fe80bbcd81a6647ff13108738cfb482d481d826cc0e02f5b35e5c88d2c", size = 536198 }, +] + [[package]] name = "msal" version = "1.34.0" @@ -2000,6 +2277,42 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e3/9a/201bb1e17e7af53139597069c375e7b0dcbd47594604f65c2d5359508566/multidict-6.7.0-cp312-cp312-win32.whl", hash = "sha256:dd32a49400a2c3d52088e120ee00c1e3576cbff7e10b98467962c74fdb762ed4", size = 41895 }, { url = "https://files.pythonhosted.org/packages/46/e2/348cd32faad84eaf1d20cce80e2bb0ef8d312c55bca1f7fa9865e7770aaf/multidict-6.7.0-cp312-cp312-win_amd64.whl", hash = "sha256:92abb658ef2d7ef22ac9f8bb88e8b6c3e571671534e029359b6d9e845923eb1b", size = 46073 }, { url = "https://files.pythonhosted.org/packages/25/ec/aad2613c1910dce907480e0c3aa306905830f25df2e54ccc9dea450cb5aa/multidict-6.7.0-cp312-cp312-win_arm64.whl", hash = "sha256:490dab541a6a642ce1a9d61a4781656b346a55c13038f0b1244653828e3a83ec", size = 43226 }, + { url = "https://files.pythonhosted.org/packages/d2/86/33272a544eeb36d66e4d9a920602d1a2f57d4ebea4ef3cdfe5a912574c95/multidict-6.7.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:bee7c0588aa0076ce77c0ea5d19a68d76ad81fcd9fe8501003b9a24f9d4000f6", size = 76135 }, + { url = "https://files.pythonhosted.org/packages/91/1c/eb97db117a1ebe46d457a3d235a7b9d2e6dcab174f42d1b67663dd9e5371/multidict-6.7.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:7ef6b61cad77091056ce0e7ce69814ef72afacb150b7ac6a3e9470def2198159", size = 45117 }, + { url = "https://files.pythonhosted.org/packages/f1/d8/6c3442322e41fb1dd4de8bd67bfd11cd72352ac131f6368315617de752f1/multidict-6.7.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9c0359b1ec12b1d6849c59f9d319610b7f20ef990a6d454ab151aa0e3b9f78ca", size = 43472 }, + { url = "https://files.pythonhosted.org/packages/75/3f/e2639e80325af0b6c6febdf8e57cc07043ff15f57fa1ef808f4ccb5ac4cd/multidict-6.7.0-cp313-cp313-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:cd240939f71c64bd658f186330603aac1a9a81bf6273f523fca63673cb7378a8", size = 249342 }, + { url = "https://files.pythonhosted.org/packages/5d/cc/84e0585f805cbeaa9cbdaa95f9a3d6aed745b9d25700623ac89a6ecff400/multidict-6.7.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:a60a4d75718a5efa473ebd5ab685786ba0c67b8381f781d1be14da49f1a2dc60", size = 257082 }, + { url = "https://files.pythonhosted.org/packages/b0/9c/ac851c107c92289acbbf5cfb485694084690c1b17e555f44952c26ddc5bd/multidict-6.7.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:53a42d364f323275126aff81fb67c5ca1b7a04fda0546245730a55c8c5f24bc4", size = 240704 }, + { url = "https://files.pythonhosted.org/packages/50/cc/5f93e99427248c09da95b62d64b25748a5f5c98c7c2ab09825a1d6af0e15/multidict-6.7.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:3b29b980d0ddbecb736735ee5bef69bb2ddca56eff603c86f3f29a1128299b4f", size = 266355 }, + { url = "https://files.pythonhosted.org/packages/ec/0c/2ec1d883ceb79c6f7f6d7ad90c919c898f5d1c6ea96d322751420211e072/multidict-6.7.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:f8a93b1c0ed2d04b97a5e9336fd2d33371b9a6e29ab7dd6503d63407c20ffbaf", size = 267259 }, + { url = "https://files.pythonhosted.org/packages/c6/2d/f0b184fa88d6630aa267680bdb8623fb69cb0d024b8c6f0d23f9a0f406d3/multidict-6.7.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9ff96e8815eecacc6645da76c413eb3b3d34cfca256c70b16b286a687d013c32", size = 254903 }, + { url = "https://files.pythonhosted.org/packages/06/c9/11ea263ad0df7dfabcad404feb3c0dd40b131bc7f232d5537f2fb1356951/multidict-6.7.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:7516c579652f6a6be0e266aec0acd0db80829ca305c3d771ed898538804c2036", size = 252365 }, + { url = "https://files.pythonhosted.org/packages/41/88/d714b86ee2c17d6e09850c70c9d310abac3d808ab49dfa16b43aba9d53fd/multidict-6.7.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:040f393368e63fb0f3330e70c26bfd336656bed925e5cbe17c9da839a6ab13ec", size = 250062 }, + { url = "https://files.pythonhosted.org/packages/15/fe/ad407bb9e818c2b31383f6131ca19ea7e35ce93cf1310fce69f12e89de75/multidict-6.7.0-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:b3bc26a951007b1057a1c543af845f1c7e3e71cc240ed1ace7bf4484aa99196e", size = 249683 }, + { url = "https://files.pythonhosted.org/packages/8c/a4/a89abdb0229e533fb925e7c6e5c40201c2873efebc9abaf14046a4536ee6/multidict-6.7.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:7b022717c748dd1992a83e219587aabe45980d88969f01b316e78683e6285f64", size = 261254 }, + { url = "https://files.pythonhosted.org/packages/8d/aa/0e2b27bd88b40a4fb8dc53dd74eecac70edaa4c1dd0707eb2164da3675b3/multidict-6.7.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:9600082733859f00d79dee64effc7aef1beb26adb297416a4ad2116fd61374bd", size = 257967 }, + { url = "https://files.pythonhosted.org/packages/d0/8e/0c67b7120d5d5f6d874ed85a085f9dc770a7f9d8813e80f44a9fec820bb7/multidict-6.7.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:94218fcec4d72bc61df51c198d098ce2b378e0ccbac41ddbed5ef44092913288", size = 250085 }, + { url = "https://files.pythonhosted.org/packages/ba/55/b73e1d624ea4b8fd4dd07a3bb70f6e4c7c6c5d9d640a41c6ffe5cdbd2a55/multidict-6.7.0-cp313-cp313-win32.whl", hash = "sha256:a37bd74c3fa9d00be2d7b8eca074dc56bd8077ddd2917a839bd989612671ed17", size = 41713 }, + { url = "https://files.pythonhosted.org/packages/32/31/75c59e7d3b4205075b4c183fa4ca398a2daf2303ddf616b04ae6ef55cffe/multidict-6.7.0-cp313-cp313-win_amd64.whl", hash = "sha256:30d193c6cc6d559db42b6bcec8a5d395d34d60c9877a0b71ecd7c204fcf15390", size = 45915 }, + { url = "https://files.pythonhosted.org/packages/31/2a/8987831e811f1184c22bc2e45844934385363ee61c0a2dcfa8f71b87e608/multidict-6.7.0-cp313-cp313-win_arm64.whl", hash = "sha256:ea3334cabe4d41b7ccd01e4d349828678794edbc2d3ae97fc162a3312095092e", size = 43077 }, + { url = "https://files.pythonhosted.org/packages/e8/68/7b3a5170a382a340147337b300b9eb25a9ddb573bcdfff19c0fa3f31ffba/multidict-6.7.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:ad9ce259f50abd98a1ca0aa6e490b58c316a0fce0617f609723e40804add2c00", size = 83114 }, + { url = "https://files.pythonhosted.org/packages/55/5c/3fa2d07c84df4e302060f555bbf539310980362236ad49f50eeb0a1c1eb9/multidict-6.7.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:07f5594ac6d084cbb5de2df218d78baf55ef150b91f0ff8a21cc7a2e3a5a58eb", size = 48442 }, + { url = "https://files.pythonhosted.org/packages/fc/56/67212d33239797f9bd91962bb899d72bb0f4c35a8652dcdb8ed049bef878/multidict-6.7.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:0591b48acf279821a579282444814a2d8d0af624ae0bc600aa4d1b920b6e924b", size = 46885 }, + { url = "https://files.pythonhosted.org/packages/46/d1/908f896224290350721597a61a69cd19b89ad8ee0ae1f38b3f5cd12ea2ac/multidict-6.7.0-cp313-cp313t-manylinux1_i686.manylinux_2_28_i686.manylinux_2_5_i686.whl", hash = "sha256:749a72584761531d2b9467cfbdfd29487ee21124c304c4b6cb760d8777b27f9c", size = 242588 }, + { url = "https://files.pythonhosted.org/packages/ab/67/8604288bbd68680eee0ab568fdcb56171d8b23a01bcd5cb0c8fedf6e5d99/multidict-6.7.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6b4c3d199f953acd5b446bf7c0de1fe25d94e09e79086f8dc2f48a11a129cdf1", size = 249966 }, + { url = "https://files.pythonhosted.org/packages/20/33/9228d76339f1ba51e3efef7da3ebd91964d3006217aae13211653193c3ff/multidict-6.7.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:9fb0211dfc3b51efea2f349ec92c114d7754dd62c01f81c3e32b765b70c45c9b", size = 228618 }, + { url = "https://files.pythonhosted.org/packages/f8/2d/25d9b566d10cab1c42b3b9e5b11ef79c9111eaf4463b8c257a3bd89e0ead/multidict-6.7.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:a027ec240fe73a8d6281872690b988eed307cd7d91b23998ff35ff577ca688b5", size = 257539 }, + { url = "https://files.pythonhosted.org/packages/b6/b1/8d1a965e6637fc33de3c0d8f414485c2b7e4af00f42cab3d84e7b955c222/multidict-6.7.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:d1d964afecdf3a8288789df2f5751dc0a8261138c3768d9af117ed384e538fad", size = 256345 }, + { url = "https://files.pythonhosted.org/packages/ba/0c/06b5a8adbdeedada6f4fb8d8f193d44a347223b11939b42953eeb6530b6b/multidict-6.7.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:caf53b15b1b7df9fbd0709aa01409000a2b4dd03a5f6f5cc548183c7c8f8b63c", size = 247934 }, + { url = "https://files.pythonhosted.org/packages/8f/31/b2491b5fe167ca044c6eb4b8f2c9f3b8a00b24c432c365358eadac5d7625/multidict-6.7.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:654030da3197d927f05a536a66186070e98765aa5142794c9904555d3a9d8fb5", size = 245243 }, + { url = "https://files.pythonhosted.org/packages/61/1a/982913957cb90406c8c94f53001abd9eafc271cb3e70ff6371590bec478e/multidict-6.7.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:2090d3718829d1e484706a2f525e50c892237b2bf9b17a79b059cb98cddc2f10", size = 235878 }, + { url = "https://files.pythonhosted.org/packages/be/c0/21435d804c1a1cf7a2608593f4d19bca5bcbd7a81a70b253fdd1c12af9c0/multidict-6.7.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:2d2cfeec3f6f45651b3d408c4acec0ebf3daa9bc8a112a084206f5db5d05b754", size = 243452 }, + { url = "https://files.pythonhosted.org/packages/54/0a/4349d540d4a883863191be6eb9a928846d4ec0ea007d3dcd36323bb058ac/multidict-6.7.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:4ef089f985b8c194d341eb2c24ae6e7408c9a0e2e5658699c92f497437d88c3c", size = 252312 }, + { url = "https://files.pythonhosted.org/packages/26/64/d5416038dbda1488daf16b676e4dbfd9674dde10a0cc8f4fc2b502d8125d/multidict-6.7.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:e93a0617cd16998784bf4414c7e40f17a35d2350e5c6f0bd900d3a8e02bd3762", size = 246935 }, + { url = "https://files.pythonhosted.org/packages/9f/8c/8290c50d14e49f35e0bd4abc25e1bc7711149ca9588ab7d04f886cdf03d9/multidict-6.7.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:f0feece2ef8ebc42ed9e2e8c78fc4aa3cf455733b507c09ef7406364c94376c6", size = 243385 }, + { url = "https://files.pythonhosted.org/packages/ef/a0/f83ae75e42d694b3fbad3e047670e511c138be747bc713cf1b10d5096416/multidict-6.7.0-cp313-cp313t-win32.whl", hash = "sha256:19a1d55338ec1be74ef62440ca9e04a2f001a04d0cc49a4983dc320ff0f3212d", size = 47777 }, + { url = "https://files.pythonhosted.org/packages/dc/80/9b174a92814a3830b7357307a792300f42c9e94664b01dee8e457551fa66/multidict-6.7.0-cp313-cp313t-win_amd64.whl", hash = "sha256:3da4fb467498df97e986af166b12d01f05d2e04f978a9c1c680ea1988e0bc4b6", size = 53104 }, + { url = "https://files.pythonhosted.org/packages/cc/28/04baeaf0428d95bb7a7bea0e691ba2f31394338ba424fb0679a9ed0f4c09/multidict-6.7.0-cp313-cp313t-win_arm64.whl", hash = "sha256:b4121773c49a0776461f4a904cdf6264c88e42218aaa8407e803ca8025872792", size = 45503 }, { url = "https://files.pythonhosted.org/packages/b7/da/7d22601b625e241d4f23ef1ebff8acfc60da633c9e7e7922e24d10f592b3/multidict-6.7.0-py3-none-any.whl", hash = "sha256:394fc5c42a333c9ffc3e421a4c85e08580d990e08b99f6bf35b4132114c5dcb3", size = 12317 }, ] @@ -2023,6 +2336,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/ab/27/e539a9622d7bea3ae22706c1eb80d4af80f9dddd93b54d151955c2ae4011/murmurhash-1.0.13-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:3aa55d62773745616e1ab19345dece122f6e6d09224f7be939cc5b4c513c8473", size = 129108 }, { url = "https://files.pythonhosted.org/packages/7a/84/18af5662e07d06839ad4db18ce026e6f8ef850d7b0ba92817b28dad28ba6/murmurhash-1.0.13-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:060dfef1b405cf02c450f182fb629f76ebe7f79657cced2db5054bc29b34938b", size = 129175 }, { url = "https://files.pythonhosted.org/packages/fe/8d/b01d3ee1f1cf3957250223b7c6ce35454f38fbf4abe236bf04a3f769341d/murmurhash-1.0.13-cp312-cp312-win_amd64.whl", hash = "sha256:a8e79627d44a6e20a6487effc30bfe1c74754c13d179106e68cc6d07941b022c", size = 24869 }, + { url = "https://files.pythonhosted.org/packages/00/b4/8919dfdc4a131ad38a57b2c5de69f4bd74538bf546637ee59ebaebe6e5a4/murmurhash-1.0.13-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:b8a7f8befd901379b6dc57a9e49c5188454113747ad6aa8cdd951a6048e10790", size = 26852 }, + { url = "https://files.pythonhosted.org/packages/b4/32/ce78bef5d6101568bcb12f5bb5103fabcbe23723ec52e76ff66132d5dbb7/murmurhash-1.0.13-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:f741aab86007510199193eee4f87c5ece92bc5a6ca7d0fe0d27335c1203dface", size = 26900 }, + { url = "https://files.pythonhosted.org/packages/0c/4c/0f47c0b4f6b31a1de84d65f9573832c78cd47b4b8ce25ab5596a8238d150/murmurhash-1.0.13-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82614f18fa6d9d83da6bb0918f3789a3e1555d0ce12c2548153e97f79b29cfc9", size = 130033 }, + { url = "https://files.pythonhosted.org/packages/e0/cb/e47233e32fb792dcc9fb18a2cf65f795d47179b29c2b4a2034689f14c707/murmurhash-1.0.13-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:91f22a48b9454712e0690aa0b76cf0156a5d5a083d23ec7e209cfaeef28f56ff", size = 130619 }, + { url = "https://files.pythonhosted.org/packages/8f/f1/f89911bf304ba5d385ccd346cc7fbb1c1450a24f093b592c3bfe87768467/murmurhash-1.0.13-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:c4bc7938627b8fcb3d598fe6657cc96d1e31f4eba6a871b523c1512ab6dacb3e", size = 127643 }, + { url = "https://files.pythonhosted.org/packages/a4/24/262229221f6840c1a04a46051075e99675e591571abcca6b9a8b6aa1602b/murmurhash-1.0.13-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:58a61f1fc840f9ef704e638c39b8517bab1d21f1a9dbb6ba3ec53e41360e44ec", size = 127981 }, + { url = "https://files.pythonhosted.org/packages/18/25/addbc1d28f83252732ac3e57334d42f093890b4c2cce483ba01a42bc607c/murmurhash-1.0.13-cp313-cp313-win_amd64.whl", hash = "sha256:c451a22f14c2f40e7abaea521ee24fa0e46fbec480c4304c25c946cdb6e81883", size = 24880 }, ] [[package]] @@ -2178,6 +2498,28 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/05/79/ccbd23a75862d95af03d28b5c6901a1b7da4803181513d52f3b86ed9446e/numpy-2.3.5-cp312-cp312-win32.whl", hash = "sha256:3997b5b3c9a771e157f9aae01dd579ee35ad7109be18db0e85dbdbe1de06e952", size = 6285274 }, { url = "https://files.pythonhosted.org/packages/2d/57/8aeaf160312f7f489dea47ab61e430b5cb051f59a98ae68b7133ce8fa06a/numpy-2.3.5-cp312-cp312-win_amd64.whl", hash = "sha256:86945f2ee6d10cdfd67bcb4069c1662dd711f7e2a4343db5cecec06b87cf31aa", size = 12782922 }, { url = "https://files.pythonhosted.org/packages/78/a6/aae5cc2ca78c45e64b9ef22f089141d661516856cf7c8a54ba434576900d/numpy-2.3.5-cp312-cp312-win_arm64.whl", hash = "sha256:f28620fe26bee16243be2b7b874da327312240a7cdc38b769a697578d2100013", size = 10194667 }, + { url = "https://files.pythonhosted.org/packages/db/69/9cde09f36da4b5a505341180a3f2e6fadc352fd4d2b7096ce9778db83f1a/numpy-2.3.5-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d0f23b44f57077c1ede8c5f26b30f706498b4862d3ff0a7298b8411dd2f043ff", size = 16728251 }, + { url = "https://files.pythonhosted.org/packages/79/fb/f505c95ceddd7027347b067689db71ca80bd5ecc926f913f1a23e65cf09b/numpy-2.3.5-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:aa5bc7c5d59d831d9773d1170acac7893ce3a5e130540605770ade83280e7188", size = 12254652 }, + { url = "https://files.pythonhosted.org/packages/78/da/8c7738060ca9c31b30e9301ee0cf6c5ffdbf889d9593285a1cead337f9a5/numpy-2.3.5-cp313-cp313-macosx_14_0_arm64.whl", hash = "sha256:ccc933afd4d20aad3c00bcef049cb40049f7f196e0397f1109dba6fed63267b0", size = 5083172 }, + { url = "https://files.pythonhosted.org/packages/a4/b4/ee5bb2537fb9430fd2ef30a616c3672b991a4129bb1c7dcc42aa0abbe5d7/numpy-2.3.5-cp313-cp313-macosx_14_0_x86_64.whl", hash = "sha256:afaffc4393205524af9dfa400fa250143a6c3bc646c08c9f5e25a9f4b4d6a903", size = 6622990 }, + { url = "https://files.pythonhosted.org/packages/95/03/dc0723a013c7d7c19de5ef29e932c3081df1c14ba582b8b86b5de9db7f0f/numpy-2.3.5-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:9c75442b2209b8470d6d5d8b1c25714270686f14c749028d2199c54e29f20b4d", size = 14248902 }, + { url = "https://files.pythonhosted.org/packages/f5/10/ca162f45a102738958dcec8023062dad0cbc17d1ab99d68c4e4a6c45fb2b/numpy-2.3.5-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:11e06aa0af8c0f05104d56450d6093ee639e15f24ecf62d417329d06e522e017", size = 16597430 }, + { url = "https://files.pythonhosted.org/packages/2a/51/c1e29be863588db58175175f057286900b4b3327a1351e706d5e0f8dd679/numpy-2.3.5-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:ed89927b86296067b4f81f108a2271d8926467a8868e554eaf370fc27fa3ccaf", size = 16024551 }, + { url = "https://files.pythonhosted.org/packages/83/68/8236589d4dbb87253d28259d04d9b814ec0ecce7cb1c7fed29729f4c3a78/numpy-2.3.5-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:51c55fe3451421f3a6ef9a9c1439e82101c57a2c9eab9feb196a62b1a10b58ce", size = 18533275 }, + { url = "https://files.pythonhosted.org/packages/40/56/2932d75b6f13465239e3b7b7e511be27f1b8161ca2510854f0b6e521c395/numpy-2.3.5-cp313-cp313-win32.whl", hash = "sha256:1978155dd49972084bd6ef388d66ab70f0c323ddee6f693d539376498720fb7e", size = 6277637 }, + { url = "https://files.pythonhosted.org/packages/0c/88/e2eaa6cffb115b85ed7c7c87775cb8bcf0816816bc98ca8dbfa2ee33fe6e/numpy-2.3.5-cp313-cp313-win_amd64.whl", hash = "sha256:00dc4e846108a382c5869e77c6ed514394bdeb3403461d25a829711041217d5b", size = 12779090 }, + { url = "https://files.pythonhosted.org/packages/8f/88/3f41e13a44ebd4034ee17baa384acac29ba6a4fcc2aca95f6f08ca0447d1/numpy-2.3.5-cp313-cp313-win_arm64.whl", hash = "sha256:0472f11f6ec23a74a906a00b48a4dcf3849209696dff7c189714511268d103ae", size = 10194710 }, + { url = "https://files.pythonhosted.org/packages/13/cb/71744144e13389d577f867f745b7df2d8489463654a918eea2eeb166dfc9/numpy-2.3.5-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:414802f3b97f3c1eef41e530aaba3b3c1620649871d8cb38c6eaff034c2e16bd", size = 16827292 }, + { url = "https://files.pythonhosted.org/packages/71/80/ba9dc6f2a4398e7f42b708a7fdc841bb638d353be255655498edbf9a15a8/numpy-2.3.5-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:5ee6609ac3604fa7780e30a03e5e241a7956f8e2fcfe547d51e3afa5247ac47f", size = 12378897 }, + { url = "https://files.pythonhosted.org/packages/2e/6d/db2151b9f64264bcceccd51741aa39b50150de9b602d98ecfe7e0c4bff39/numpy-2.3.5-cp313-cp313t-macosx_14_0_arm64.whl", hash = "sha256:86d835afea1eaa143012a2d7a3f45a3adce2d7adc8b4961f0b362214d800846a", size = 5207391 }, + { url = "https://files.pythonhosted.org/packages/80/ae/429bacace5ccad48a14c4ae5332f6aa8ab9f69524193511d60ccdfdc65fa/numpy-2.3.5-cp313-cp313t-macosx_14_0_x86_64.whl", hash = "sha256:30bc11310e8153ca664b14c5f1b73e94bd0503681fcf136a163de856f3a50139", size = 6721275 }, + { url = "https://files.pythonhosted.org/packages/74/5b/1919abf32d8722646a38cd527bc3771eb229a32724ee6ba340ead9b92249/numpy-2.3.5-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:1062fde1dcf469571705945b0f221b73928f34a20c904ffb45db101907c3454e", size = 14306855 }, + { url = "https://files.pythonhosted.org/packages/a5/87/6831980559434973bebc30cd9c1f21e541a0f2b0c280d43d3afd909b66d0/numpy-2.3.5-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:ce581db493ea1a96c0556360ede6607496e8bf9b3a8efa66e06477267bc831e9", size = 16657359 }, + { url = "https://files.pythonhosted.org/packages/dd/91/c797f544491ee99fd00495f12ebb7802c440c1915811d72ac5b4479a3356/numpy-2.3.5-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:cc8920d2ec5fa99875b670bb86ddeb21e295cb07aa331810d9e486e0b969d946", size = 16093374 }, + { url = "https://files.pythonhosted.org/packages/74/a6/54da03253afcbe7a72785ec4da9c69fb7a17710141ff9ac5fcb2e32dbe64/numpy-2.3.5-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:9ee2197ef8c4f0dfe405d835f3b6a14f5fee7782b5de51ba06fb65fc9b36e9f1", size = 18594587 }, + { url = "https://files.pythonhosted.org/packages/80/e9/aff53abbdd41b0ecca94285f325aff42357c6b5abc482a3fcb4994290b18/numpy-2.3.5-cp313-cp313t-win32.whl", hash = "sha256:70b37199913c1bd300ff6e2693316c6f869c7ee16378faf10e4f5e3275b299c3", size = 6405940 }, + { url = "https://files.pythonhosted.org/packages/d5/81/50613fec9d4de5480de18d4f8ef59ad7e344d497edbef3cfd80f24f98461/numpy-2.3.5-cp313-cp313t-win_amd64.whl", hash = "sha256:b501b5fa195cc9e24fe102f21ec0a44dffc231d2af79950b451e0d99cea02234", size = 12920341 }, + { url = "https://files.pythonhosted.org/packages/bb/ab/08fd63b9a74303947f34f0bd7c5903b9c5532c2d287bead5bdf4c556c486/numpy-2.3.5-cp313-cp313t-win_arm64.whl", hash = "sha256:a80afd79f45f3c4a7d341f13acbe058d1ca8ac017c165d3fa0d3de6bc1a079d7", size = 10262507 }, { url = "https://files.pythonhosted.org/packages/c6/65/f9dea8e109371ade9c782b4e4756a82edf9d3366bca495d84d79859a0b79/numpy-2.3.5-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:f0963b55cdd70fad460fa4c1341f12f976bb26cb66021a5580329bd498988310", size = 16910689 }, { url = "https://files.pythonhosted.org/packages/00/4f/edb00032a8fb92ec0a679d3830368355da91a69cab6f3e9c21b64d0bb986/numpy-2.3.5-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:f4255143f5160d0de972d28c8f9665d882b5f61309d8362fdd3e103cf7bf010c", size = 12457053 }, { url = "https://files.pythonhosted.org/packages/16/a4/e8a53b5abd500a63836a29ebe145fc1ab1f2eefe1cfe59276020373ae0aa/numpy-2.3.5-pp311-pypy311_pp73-macosx_14_0_arm64.whl", hash = "sha256:a4b9159734b326535f4dd01d947f919c6eefd2d9827466a696c44ced82dfbc18", size = 5285635 }, @@ -2187,6 +2529,37 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/2d/ee/346fa473e666fe14c52fcdd19ec2424157290a032d4c41f98127bfb31ac7/numpy-2.3.5-pp311-pypy311_pp73-win_amd64.whl", hash = "sha256:f16417ec91f12f814b10bafe79ef77e70113a2f5f7018640e7425ff979253425", size = 12967213 }, ] +[[package]] +name = "onnxruntime" +version = "1.20.1" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "coloredlogs" }, + { name = "flatbuffers" }, + { name = "numpy" }, + { name = "packaging" }, + { name = "protobuf" }, + { name = "sympy" }, +] +wheels = [ + { url = "https://files.pythonhosted.org/packages/95/8d/2634e2959b34aa8a0037989f4229e9abcfa484e9c228f99633b3241768a6/onnxruntime-1.20.1-cp311-cp311-macosx_13_0_universal2.whl", hash = "sha256:06bfbf02ca9ab5f28946e0f912a562a5f005301d0c419283dc57b3ed7969bb7b", size = 30998725 }, + { url = "https://files.pythonhosted.org/packages/a5/da/c44bf9bd66cd6d9018a921f053f28d819445c4d84b4dd4777271b0fe52a2/onnxruntime-1.20.1-cp311-cp311-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f6243e34d74423bdd1edf0ae9596dd61023b260f546ee17d701723915f06a9f7", size = 11955227 }, + { url = "https://files.pythonhosted.org/packages/11/ac/4120dfb74c8e45cce1c664fc7f7ce010edd587ba67ac41489f7432eb9381/onnxruntime-1.20.1-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5eec64c0269dcdb8d9a9a53dc4d64f87b9e0c19801d9321246a53b7eb5a7d1bc", size = 13331703 }, + { url = "https://files.pythonhosted.org/packages/12/f1/cefacac137f7bb7bfba57c50c478150fcd3c54aca72762ac2c05ce0532c1/onnxruntime-1.20.1-cp311-cp311-win32.whl", hash = "sha256:a19bc6e8c70e2485a1725b3d517a2319603acc14c1f1a017dda0afe6d4665b41", size = 9813977 }, + { url = "https://files.pythonhosted.org/packages/2c/2d/2d4d202c0bcfb3a4cc2b171abb9328672d7f91d7af9ea52572722c6d8d96/onnxruntime-1.20.1-cp311-cp311-win_amd64.whl", hash = "sha256:8508887eb1c5f9537a4071768723ec7c30c28eb2518a00d0adcd32c89dea3221", size = 11329895 }, + { url = "https://files.pythonhosted.org/packages/e5/39/9335e0874f68f7d27103cbffc0e235e32e26759202df6085716375c078bb/onnxruntime-1.20.1-cp312-cp312-macosx_13_0_universal2.whl", hash = "sha256:22b0655e2bf4f2161d52706e31f517a0e54939dc393e92577df51808a7edc8c9", size = 31007580 }, + { url = "https://files.pythonhosted.org/packages/c5/9d/a42a84e10f1744dd27c6f2f9280cc3fb98f869dd19b7cd042e391ee2ab61/onnxruntime-1.20.1-cp312-cp312-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f1f56e898815963d6dc4ee1c35fc6c36506466eff6d16f3cb9848cea4e8c8172", size = 11952833 }, + { url = "https://files.pythonhosted.org/packages/47/42/2f71f5680834688a9c81becbe5c5bb996fd33eaed5c66ae0606c3b1d6a02/onnxruntime-1.20.1-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bb71a814f66517a65628c9e4a2bb530a6edd2cd5d87ffa0af0f6f773a027d99e", size = 13333903 }, + { url = "https://files.pythonhosted.org/packages/c8/f1/aabfdf91d013320aa2fc46cf43c88ca0182860ff15df872b4552254a9680/onnxruntime-1.20.1-cp312-cp312-win32.whl", hash = "sha256:bd386cc9ee5f686ee8a75ba74037750aca55183085bf1941da8efcfe12d5b120", size = 9814562 }, + { url = "https://files.pythonhosted.org/packages/dd/80/76979e0b744307d488c79e41051117634b956612cc731f1028eb17ee7294/onnxruntime-1.20.1-cp312-cp312-win_amd64.whl", hash = "sha256:19c2d843eb074f385e8bbb753a40df780511061a63f9def1b216bf53860223fb", size = 11331482 }, + { url = "https://files.pythonhosted.org/packages/f7/71/c5d980ac4189589267a06f758bd6c5667d07e55656bed6c6c0580733ad07/onnxruntime-1.20.1-cp313-cp313-macosx_13_0_universal2.whl", hash = "sha256:cc01437a32d0042b606f462245c8bbae269e5442797f6213e36ce61d5abdd8cc", size = 31007574 }, + { url = "https://files.pythonhosted.org/packages/81/0d/13bbd9489be2a6944f4a940084bfe388f1100472f38c07080a46fbd4ab96/onnxruntime-1.20.1-cp313-cp313-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:fb44b08e017a648924dbe91b82d89b0c105b1adcfe31e90d1dc06b8677ad37be", size = 11951459 }, + { url = "https://files.pythonhosted.org/packages/c0/ea/4454ae122874fd52bbb8a961262de81c5f932edeb1b72217f594c700d6ef/onnxruntime-1.20.1-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bda6aebdf7917c1d811f21d41633df00c58aff2bef2f598f69289c1f1dabc4b3", size = 13331620 }, + { url = "https://files.pythonhosted.org/packages/d8/e0/50db43188ca1c945decaa8fc2a024c33446d31afed40149897d4f9de505f/onnxruntime-1.20.1-cp313-cp313-win_amd64.whl", hash = "sha256:d30367df7e70f1d9fc5a6a68106f5961686d39b54d3221f760085524e8d38e16", size = 11331758 }, + { url = "https://files.pythonhosted.org/packages/d8/55/3821c5fd60b52a6c82a00bba18531793c93c4addfe64fbf061e235c5617a/onnxruntime-1.20.1-cp313-cp313t-manylinux_2_27_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:c9158465745423b2b5d97ed25aa7740c7d38d2993ee2e5c3bfacb0c4145c49d8", size = 11950342 }, + { url = "https://files.pythonhosted.org/packages/14/56/fd990ca222cef4f9f4a9400567b9a15b220dee2eafffb16b2adbc55c8281/onnxruntime-1.20.1-cp313-cp313t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0df6f2df83d61f46e842dbcde610ede27218947c33e994545a22333491e72a3b", size = 13337040 }, +] + [[package]] name = "openai" version = "1.109.1" @@ -2259,6 +2632,19 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a6/de/8b1895b107277d52f2b42d3a6806e69cfef0d5cf1d0ba343470b9d8e0a04/pandas-2.3.3-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a68e15f780eddf2b07d242e17a04aa187a7ee12b40b930bfdd78070556550e98", size = 12771002 }, { url = "https://files.pythonhosted.org/packages/87/21/84072af3187a677c5893b170ba2c8fbe450a6ff911234916da889b698220/pandas-2.3.3-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:371a4ab48e950033bcf52b6527eccb564f52dc826c02afd9a1bc0ab731bba084", size = 13450971 }, { url = "https://files.pythonhosted.org/packages/86/41/585a168330ff063014880a80d744219dbf1dd7a1c706e75ab3425a987384/pandas-2.3.3-cp312-cp312-win_amd64.whl", hash = "sha256:a16dcec078a01eeef8ee61bf64074b4e524a2a3f4b3be9326420cabe59c4778b", size = 10992722 }, + { url = "https://files.pythonhosted.org/packages/cd/4b/18b035ee18f97c1040d94debd8f2e737000ad70ccc8f5513f4eefad75f4b/pandas-2.3.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:56851a737e3470de7fa88e6131f41281ed440d29a9268dcbf0002da5ac366713", size = 11544671 }, + { url = "https://files.pythonhosted.org/packages/31/94/72fac03573102779920099bcac1c3b05975c2cb5f01eac609faf34bed1ca/pandas-2.3.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:bdcd9d1167f4885211e401b3036c0c8d9e274eee67ea8d0758a256d60704cfe8", size = 10680807 }, + { url = "https://files.pythonhosted.org/packages/16/87/9472cf4a487d848476865321de18cc8c920b8cab98453ab79dbbc98db63a/pandas-2.3.3-cp313-cp313-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:e32e7cc9af0f1cc15548288a51a3b681cc2a219faa838e995f7dc53dbab1062d", size = 11709872 }, + { url = "https://files.pythonhosted.org/packages/15/07/284f757f63f8a8d69ed4472bfd85122bd086e637bf4ed09de572d575a693/pandas-2.3.3-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:318d77e0e42a628c04dc56bcef4b40de67918f7041c2b061af1da41dcff670ac", size = 12306371 }, + { url = "https://files.pythonhosted.org/packages/33/81/a3afc88fca4aa925804a27d2676d22dcd2031c2ebe08aabd0ae55b9ff282/pandas-2.3.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4e0a175408804d566144e170d0476b15d78458795bb18f1304fb94160cabf40c", size = 12765333 }, + { url = "https://files.pythonhosted.org/packages/8d/0f/b4d4ae743a83742f1153464cf1a8ecfafc3ac59722a0b5c8602310cb7158/pandas-2.3.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:93c2d9ab0fc11822b5eece72ec9587e172f63cff87c00b062f6e37448ced4493", size = 13418120 }, + { url = "https://files.pythonhosted.org/packages/4f/c7/e54682c96a895d0c808453269e0b5928a07a127a15704fedb643e9b0a4c8/pandas-2.3.3-cp313-cp313-win_amd64.whl", hash = "sha256:f8bfc0e12dc78f777f323f55c58649591b2cd0c43534e8355c51d3fede5f4dee", size = 10993991 }, + { url = "https://files.pythonhosted.org/packages/f9/ca/3f8d4f49740799189e1395812f3bf23b5e8fc7c190827d55a610da72ce55/pandas-2.3.3-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:75ea25f9529fdec2d2e93a42c523962261e567d250b0013b16210e1d40d7c2e5", size = 12048227 }, + { url = "https://files.pythonhosted.org/packages/0e/5a/f43efec3e8c0cc92c4663ccad372dbdff72b60bdb56b2749f04aa1d07d7e/pandas-2.3.3-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:74ecdf1d301e812db96a465a525952f4dde225fdb6d8e5a521d47e1f42041e21", size = 11411056 }, + { url = "https://files.pythonhosted.org/packages/46/b1/85331edfc591208c9d1a63a06baa67b21d332e63b7a591a5ba42a10bb507/pandas-2.3.3-cp313-cp313t-manylinux_2_24_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:6435cb949cb34ec11cc9860246ccb2fdc9ecd742c12d3304989017d53f039a78", size = 11645189 }, + { url = "https://files.pythonhosted.org/packages/44/23/78d645adc35d94d1ac4f2a3c4112ab6f5b8999f4898b8cdf01252f8df4a9/pandas-2.3.3-cp313-cp313t-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:900f47d8f20860de523a1ac881c4c36d65efcb2eb850e6948140fa781736e110", size = 12121912 }, + { url = "https://files.pythonhosted.org/packages/53/da/d10013df5e6aaef6b425aa0c32e1fc1f3e431e4bcabd420517dceadce354/pandas-2.3.3-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a45c765238e2ed7d7c608fc5bc4a6f88b642f2f01e70c0c23d2224dd21829d86", size = 12712160 }, + { url = "https://files.pythonhosted.org/packages/bd/17/e756653095a083d8a37cbd816cb87148debcfcd920129b25f99dd8d04271/pandas-2.3.3-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:c4fc4c21971a1a9f4bdb4c73978c7f7256caa3e62b323f70d6cb80db583350bc", size = 13199233 }, ] [[package]] @@ -2315,7 +2701,7 @@ name = "pexpect" version = "4.9.0" source = { registry = "https://pypi.org/simple" } dependencies = [ - { name = "ptyprocess" }, + { name = "ptyprocess", marker = "sys_platform != 'win32'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/42/92/cc564bf6381ff43ce1f4d06852fc19a2f11d180f23dc32d9588bee2f149d/pexpect-4.9.0.tar.gz", hash = "sha256:ee7d41123f3c9911050ea2c2dac107568dc43b2d3b0c7557a33212c398ead30f", size = 166450 } wheels = [ @@ -2377,6 +2763,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a7/fd/efb6a6233d1cd969966f3f65bdd8e662579c3d83114e5c356cec1927b1f7/preshed-3.0.10-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:a606c24cda931306b98e0edfafed3309bffcf8d6ecfe07804db26024c4f03cd6", size = 846829 }, { url = "https://files.pythonhosted.org/packages/14/49/0e4ce5db3bf86b081abb08a404fb37b7c2dbfd7a73ec6c0bc71b650307eb/preshed-3.0.10-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:394015566f9354738be903447039e8dbc6d93ba5adf091af694eb03c4e726b1e", size = 874008 }, { url = "https://files.pythonhosted.org/packages/6f/17/76d6593fc2d055d4e413b68a8c87b70aa9b7697d4972cb8062559edcf6e9/preshed-3.0.10-cp312-cp312-win_amd64.whl", hash = "sha256:fd7e38225937e580420c84d1996dde9b4f726aacd9405093455c3a2fa60fede5", size = 116701 }, + { url = "https://files.pythonhosted.org/packages/bf/5e/87671bc58c4f6c8cf0a5601ccd74b8bb50281ff28aa4ab3e3cad5cd9d06a/preshed-3.0.10-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:23e6e0581a517597f3f76bc24a4cdb0ba5509933d4f61c34fca49649dd71edf9", size = 129184 }, + { url = "https://files.pythonhosted.org/packages/92/69/b3969a3c95778def5bf5126484a1f7d2ad324d1040077f55f56e027d8ea4/preshed-3.0.10-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:574e6d6056981540310ff181b47a2912f4bddc91bcace3c7a9c6726eafda24ca", size = 124258 }, + { url = "https://files.pythonhosted.org/packages/32/df/6e828ec4565bf33bd4803a3eb3b1102830b739143e5d6c132bf7181a58ec/preshed-3.0.10-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2bd658dd73e853d1bb5597976a407feafa681b9d6155bc9bc7b4c2acc2a6ee96", size = 825445 }, + { url = "https://files.pythonhosted.org/packages/05/3d/478b585f304920e51f328c9231e22f30dc64baa68e079e08a46ab72be738/preshed-3.0.10-cp313-cp313-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:5b95396046328ffb461a68859ce2141aca4815b8624167832d28ced70d541626", size = 831690 }, + { url = "https://files.pythonhosted.org/packages/c3/65/938f21f77227e8d398d46fb10b9d1b3467be859468ce8db138fc3d50589c/preshed-3.0.10-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:3e6728b2028bbe79565eb6cf676b5bae5ce1f9cc56e4bf99bb28ce576f88054d", size = 808593 }, + { url = "https://files.pythonhosted.org/packages/6c/1c/2a3961fc88bc72300ff7e4ca54689bda90d2d77cc994167cc09a310480b6/preshed-3.0.10-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:c4ef96cb28bf5f08de9c070143113e168efccbb68fd4961e7d445f734c051a97", size = 837333 }, + { url = "https://files.pythonhosted.org/packages/fa/8c/d3e30f80b2ef21f267f09f0b7d18995adccc928ede5b73ea3fe54e1303f4/preshed-3.0.10-cp313-cp313-win_amd64.whl", hash = "sha256:97e0e2edfd25a7dfba799b49b3c5cc248ad0318a76edd9d5fd2c82aa3d5c64ed", size = 115769 }, ] [[package]] @@ -2436,9 +2829,54 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/80/9e/e7b85720b98c45a45e1fca6a177024934dc9bc5f4d5dd04207f216fc33ed/propcache-0.4.1-cp312-cp312-win32.whl", hash = "sha256:671538c2262dadb5ba6395e26c1731e1d52534bfe9ae56d0b5573ce539266aa8", size = 38066 }, { url = "https://files.pythonhosted.org/packages/54/09/d19cff2a5aaac632ec8fc03737b223597b1e347416934c1b3a7df079784c/propcache-0.4.1-cp312-cp312-win_amd64.whl", hash = "sha256:cb2d222e72399fcf5890d1d5cc1060857b9b236adff2792ff48ca2dfd46c81db", size = 41655 }, { url = "https://files.pythonhosted.org/packages/68/ab/6b5c191bb5de08036a8c697b265d4ca76148efb10fa162f14af14fb5f076/propcache-0.4.1-cp312-cp312-win_arm64.whl", hash = "sha256:204483131fb222bdaaeeea9f9e6c6ed0cac32731f75dfc1d4a567fc1926477c1", size = 37789 }, + { url = "https://files.pythonhosted.org/packages/bf/df/6d9c1b6ac12b003837dde8a10231a7344512186e87b36e855bef32241942/propcache-0.4.1-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:43eedf29202c08550aac1d14e0ee619b0430aaef78f85864c1a892294fbc28cf", size = 77750 }, + { url = "https://files.pythonhosted.org/packages/8b/e8/677a0025e8a2acf07d3418a2e7ba529c9c33caf09d3c1f25513023c1db56/propcache-0.4.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:d62cdfcfd89ccb8de04e0eda998535c406bf5e060ffd56be6c586cbcc05b3311", size = 44780 }, + { url = "https://files.pythonhosted.org/packages/89/a4/92380f7ca60f99ebae761936bc48a72a639e8a47b29050615eef757cb2a7/propcache-0.4.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:cae65ad55793da34db5f54e4029b89d3b9b9490d8abe1b4c7ab5d4b8ec7ebf74", size = 46308 }, + { url = "https://files.pythonhosted.org/packages/2d/48/c5ac64dee5262044348d1d78a5f85dd1a57464a60d30daee946699963eb3/propcache-0.4.1-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:333ddb9031d2704a301ee3e506dc46b1fe5f294ec198ed6435ad5b6a085facfe", size = 208182 }, + { url = "https://files.pythonhosted.org/packages/c6/0c/cd762dd011a9287389a6a3eb43aa30207bde253610cca06824aeabfe9653/propcache-0.4.1-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:fd0858c20f078a32cf55f7e81473d96dcf3b93fd2ccdb3d40fdf54b8573df3af", size = 211215 }, + { url = "https://files.pythonhosted.org/packages/30/3e/49861e90233ba36890ae0ca4c660e95df565b2cd15d4a68556ab5865974e/propcache-0.4.1-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:678ae89ebc632c5c204c794f8dab2837c5f159aeb59e6ed0539500400577298c", size = 218112 }, + { url = "https://files.pythonhosted.org/packages/f1/8b/544bc867e24e1bd48f3118cecd3b05c694e160a168478fa28770f22fd094/propcache-0.4.1-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:d472aeb4fbf9865e0c6d622d7f4d54a4e101a89715d8904282bb5f9a2f476c3f", size = 204442 }, + { url = "https://files.pythonhosted.org/packages/50/a6/4282772fd016a76d3e5c0df58380a5ea64900afd836cec2c2f662d1b9bb3/propcache-0.4.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:4d3df5fa7e36b3225954fba85589da77a0fe6a53e3976de39caf04a0db4c36f1", size = 199398 }, + { url = "https://files.pythonhosted.org/packages/3e/ec/d8a7cd406ee1ddb705db2139f8a10a8a427100347bd698e7014351c7af09/propcache-0.4.1-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:ee17f18d2498f2673e432faaa71698032b0127ebf23ae5974eeaf806c279df24", size = 196920 }, + { url = "https://files.pythonhosted.org/packages/f6/6c/f38ab64af3764f431e359f8baf9e0a21013e24329e8b85d2da32e8ed07ca/propcache-0.4.1-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:580e97762b950f993ae618e167e7be9256b8353c2dcd8b99ec100eb50f5286aa", size = 203748 }, + { url = "https://files.pythonhosted.org/packages/d6/e3/fa846bd70f6534d647886621388f0a265254d30e3ce47e5c8e6e27dbf153/propcache-0.4.1-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:501d20b891688eb8e7aa903021f0b72d5a55db40ffaab27edefd1027caaafa61", size = 205877 }, + { url = "https://files.pythonhosted.org/packages/e2/39/8163fc6f3133fea7b5f2827e8eba2029a0277ab2c5beee6c1db7b10fc23d/propcache-0.4.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9a0bd56e5b100aef69bd8562b74b46254e7c8812918d3baa700c8a8009b0af66", size = 199437 }, + { url = "https://files.pythonhosted.org/packages/93/89/caa9089970ca49c7c01662bd0eeedfe85494e863e8043565aeb6472ce8fe/propcache-0.4.1-cp313-cp313-win32.whl", hash = "sha256:bcc9aaa5d80322bc2fb24bb7accb4a30f81e90ab8d6ba187aec0744bc302ad81", size = 37586 }, + { url = "https://files.pythonhosted.org/packages/f5/ab/f76ec3c3627c883215b5c8080debb4394ef5a7a29be811f786415fc1e6fd/propcache-0.4.1-cp313-cp313-win_amd64.whl", hash = "sha256:381914df18634f5494334d201e98245c0596067504b9372d8cf93f4bb23e025e", size = 40790 }, + { url = "https://files.pythonhosted.org/packages/59/1b/e71ae98235f8e2ba5004d8cb19765a74877abf189bc53fc0c80d799e56c3/propcache-0.4.1-cp313-cp313-win_arm64.whl", hash = "sha256:8873eb4460fd55333ea49b7d189749ecf6e55bf85080f11b1c4530ed3034cba1", size = 37158 }, + { url = "https://files.pythonhosted.org/packages/83/ce/a31bbdfc24ee0dcbba458c8175ed26089cf109a55bbe7b7640ed2470cfe9/propcache-0.4.1-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:92d1935ee1f8d7442da9c0c4fa7ac20d07e94064184811b685f5c4fada64553b", size = 81451 }, + { url = "https://files.pythonhosted.org/packages/25/9c/442a45a470a68456e710d96cacd3573ef26a1d0a60067e6a7d5e655621ed/propcache-0.4.1-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:473c61b39e1460d386479b9b2f337da492042447c9b685f28be4f74d3529e566", size = 46374 }, + { url = "https://files.pythonhosted.org/packages/f4/bf/b1d5e21dbc3b2e889ea4327044fb16312a736d97640fb8b6aa3f9c7b3b65/propcache-0.4.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:c0ef0aaafc66fbd87842a3fe3902fd889825646bc21149eafe47be6072725835", size = 48396 }, + { url = "https://files.pythonhosted.org/packages/f4/04/5b4c54a103d480e978d3c8a76073502b18db0c4bc17ab91b3cb5092ad949/propcache-0.4.1-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:f95393b4d66bfae908c3ca8d169d5f79cd65636ae15b5e7a4f6e67af675adb0e", size = 275950 }, + { url = "https://files.pythonhosted.org/packages/b4/c1/86f846827fb969c4b78b0af79bba1d1ea2156492e1b83dea8b8a6ae27395/propcache-0.4.1-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:c07fda85708bc48578467e85099645167a955ba093be0a2dcba962195676e859", size = 273856 }, + { url = "https://files.pythonhosted.org/packages/36/1d/fc272a63c8d3bbad6878c336c7a7dea15e8f2d23a544bda43205dfa83ada/propcache-0.4.1-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:af223b406d6d000830c6f65f1e6431783fc3f713ba3e6cc8c024d5ee96170a4b", size = 280420 }, + { url = "https://files.pythonhosted.org/packages/07/0c/01f2219d39f7e53d52e5173bcb09c976609ba30209912a0680adfb8c593a/propcache-0.4.1-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:a78372c932c90ee474559c5ddfffd718238e8673c340dc21fe45c5b8b54559a0", size = 263254 }, + { url = "https://files.pythonhosted.org/packages/2d/18/cd28081658ce597898f0c4d174d4d0f3c5b6d4dc27ffafeef835c95eb359/propcache-0.4.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:564d9f0d4d9509e1a870c920a89b2fec951b44bf5ba7d537a9e7c1ccec2c18af", size = 261205 }, + { url = "https://files.pythonhosted.org/packages/7a/71/1f9e22eb8b8316701c2a19fa1f388c8a3185082607da8e406a803c9b954e/propcache-0.4.1-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:17612831fda0138059cc5546f4d12a2aacfb9e47068c06af35c400ba58ba7393", size = 247873 }, + { url = "https://files.pythonhosted.org/packages/4a/65/3d4b61f36af2b4eddba9def857959f1016a51066b4f1ce348e0cf7881f58/propcache-0.4.1-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:41a89040cb10bd345b3c1a873b2bf36413d48da1def52f268a055f7398514874", size = 262739 }, + { url = "https://files.pythonhosted.org/packages/2a/42/26746ab087faa77c1c68079b228810436ccd9a5ce9ac85e2b7307195fd06/propcache-0.4.1-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:e35b88984e7fa64aacecea39236cee32dd9bd8c55f57ba8a75cf2399553f9bd7", size = 263514 }, + { url = "https://files.pythonhosted.org/packages/94/13/630690fe201f5502d2403dd3cfd451ed8858fe3c738ee88d095ad2ff407b/propcache-0.4.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:6f8b465489f927b0df505cbe26ffbeed4d6d8a2bbc61ce90eb074ff129ef0ab1", size = 257781 }, + { url = "https://files.pythonhosted.org/packages/92/f7/1d4ec5841505f423469efbfc381d64b7b467438cd5a4bbcbb063f3b73d27/propcache-0.4.1-cp313-cp313t-win32.whl", hash = "sha256:2ad890caa1d928c7c2965b48f3a3815c853180831d0e5503d35cf00c472f4717", size = 41396 }, + { url = "https://files.pythonhosted.org/packages/48/f0/615c30622316496d2cbbc29f5985f7777d3ada70f23370608c1d3e081c1f/propcache-0.4.1-cp313-cp313t-win_amd64.whl", hash = "sha256:f7ee0e597f495cf415bcbd3da3caa3bd7e816b74d0d52b8145954c5e6fd3ff37", size = 44897 }, + { url = "https://files.pythonhosted.org/packages/fd/ca/6002e46eccbe0e33dcd4069ef32f7f1c9e243736e07adca37ae8c4830ec3/propcache-0.4.1-cp313-cp313t-win_arm64.whl", hash = "sha256:929d7cbe1f01bb7baffb33dc14eb5691c95831450a26354cd210a8155170c93a", size = 39789 }, { url = "https://files.pythonhosted.org/packages/5b/5a/bc7b4a4ef808fa59a816c17b20c4bef6884daebbdf627ff2a161da67da19/propcache-0.4.1-py3-none-any.whl", hash = "sha256:af2a6052aeb6cf17d3e46ee169099044fd8224cbaf75c76a2ef596e8163e2237", size = 13305 }, ] +[[package]] +name = "protobuf" +version = "6.33.2" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/34/44/e49ecff446afeec9d1a66d6bbf9adc21e3c7cea7803a920ca3773379d4f6/protobuf-6.33.2.tar.gz", hash = "sha256:56dc370c91fbb8ac85bc13582c9e373569668a290aa2e66a590c2a0d35ddb9e4", size = 444296 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/bc/91/1e3a34881a88697a7354ffd177e8746e97a722e5e8db101544b47e84afb1/protobuf-6.33.2-cp310-abi3-win32.whl", hash = "sha256:87eb388bd2d0f78febd8f4c8779c79247b26a5befad525008e49a6955787ff3d", size = 425603 }, + { url = "https://files.pythonhosted.org/packages/64/20/4d50191997e917ae13ad0a235c8b42d8c1ab9c3e6fd455ca16d416944355/protobuf-6.33.2-cp310-abi3-win_amd64.whl", hash = "sha256:fc2a0e8b05b180e5fc0dd1559fe8ebdae21a27e81ac77728fb6c42b12c7419b4", size = 436930 }, + { url = "https://files.pythonhosted.org/packages/b2/ca/7e485da88ba45c920fb3f50ae78de29ab925d9e54ef0de678306abfbb497/protobuf-6.33.2-cp39-abi3-macosx_10_9_universal2.whl", hash = "sha256:d9b19771ca75935b3a4422957bc518b0cecb978b31d1dd12037b088f6bcc0e43", size = 427621 }, + { url = "https://files.pythonhosted.org/packages/7d/4f/f743761e41d3b2b2566748eb76bbff2b43e14d5fcab694f494a16458b05f/protobuf-6.33.2-cp39-abi3-manylinux2014_aarch64.whl", hash = "sha256:b5d3b5625192214066d99b2b605f5783483575656784de223f00a8d00754fc0e", size = 324460 }, + { url = "https://files.pythonhosted.org/packages/b1/fa/26468d00a92824020f6f2090d827078c09c9c587e34cbfd2d0c7911221f8/protobuf-6.33.2-cp39-abi3-manylinux2014_s390x.whl", hash = "sha256:8cd7640aee0b7828b6d03ae518b5b4806fdfc1afe8de82f79c3454f8aef29872", size = 339168 }, + { url = "https://files.pythonhosted.org/packages/56/13/333b8f421738f149d4fe5e49553bc2a2ab75235486259f689b4b91f96cec/protobuf-6.33.2-cp39-abi3-manylinux2014_x86_64.whl", hash = "sha256:1f8017c48c07ec5859106533b682260ba3d7c5567b1ca1f24297ce03384d1b4f", size = 323270 }, + { url = "https://files.pythonhosted.org/packages/0e/15/4f02896cc3df04fc465010a4c6a0cd89810f54617a32a70ef531ed75d61c/protobuf-6.33.2-py3-none-any.whl", hash = "sha256:7636aad9bb01768870266de5dc009de2d1b936771b38a793f73cbbf279c91c5c", size = 170501 }, +] + [[package]] name = "psutil" version = "7.1.0" @@ -2493,6 +2931,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/bb/d4/74ac9f7a54cfde12ee42734ea25d5a3c9a45db78f9def949307a92720d37/pyarrow-22.0.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:c3200cb41cdbc65156e5f8c908d739b0dfed57e890329413da2748d1a2cd1a4e", size = 47990906 }, { url = "https://files.pythonhosted.org/packages/2e/71/fedf2499bf7a95062eafc989ace56572f3343432570e1c54e6599d5b88da/pyarrow-22.0.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:ac93252226cf288753d8b46280f4edf3433bf9508b6977f8dd8526b521a1bbb9", size = 50306783 }, { url = "https://files.pythonhosted.org/packages/68/ed/b202abd5a5b78f519722f3d29063dda03c114711093c1995a33b8e2e0f4b/pyarrow-22.0.0-cp312-cp312-win_amd64.whl", hash = "sha256:44729980b6c50a5f2bfcc2668d36c569ce17f8b17bccaf470c4313dcbbf13c9d", size = 27972883 }, + { url = "https://files.pythonhosted.org/packages/a6/d6/d0fac16a2963002fc22c8fa75180a838737203d558f0ed3b564c4a54eef5/pyarrow-22.0.0-cp313-cp313-macosx_12_0_arm64.whl", hash = "sha256:e6e95176209257803a8b3d0394f21604e796dadb643d2f7ca21b66c9c0b30c9a", size = 34204629 }, + { url = "https://files.pythonhosted.org/packages/c6/9c/1d6357347fbae062ad3f17082f9ebc29cc733321e892c0d2085f42a2212b/pyarrow-22.0.0-cp313-cp313-macosx_12_0_x86_64.whl", hash = "sha256:001ea83a58024818826a9e3f89bf9310a114f7e26dfe404a4c32686f97bd7901", size = 35985783 }, + { url = "https://files.pythonhosted.org/packages/ff/c0/782344c2ce58afbea010150df07e3a2f5fdad299cd631697ae7bd3bac6e3/pyarrow-22.0.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:ce20fe000754f477c8a9125543f1936ea5b8867c5406757c224d745ed033e691", size = 45020999 }, + { url = "https://files.pythonhosted.org/packages/1b/8b/5362443737a5307a7b67c1017c42cd104213189b4970bf607e05faf9c525/pyarrow-22.0.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:e0a15757fccb38c410947df156f9749ae4a3c89b2393741a50521f39a8cf202a", size = 47724601 }, + { url = "https://files.pythonhosted.org/packages/69/4d/76e567a4fc2e190ee6072967cb4672b7d9249ac59ae65af2d7e3047afa3b/pyarrow-22.0.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:cedb9dd9358e4ea1d9bce3665ce0797f6adf97ff142c8e25b46ba9cdd508e9b6", size = 48001050 }, + { url = "https://files.pythonhosted.org/packages/01/5e/5653f0535d2a1aef8223cee9d92944cb6bccfee5cf1cd3f462d7cb022790/pyarrow-22.0.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:252be4a05f9d9185bb8c18e83764ebcfea7185076c07a7a662253af3a8c07941", size = 50307877 }, + { url = "https://files.pythonhosted.org/packages/2d/f8/1d0bd75bf9328a3b826e24a16e5517cd7f9fbf8d34a3184a4566ef5a7f29/pyarrow-22.0.0-cp313-cp313-win_amd64.whl", hash = "sha256:a4893d31e5ef780b6edcaf63122df0f8d321088bb0dee4c8c06eccb1ca28d145", size = 27977099 }, + { url = "https://files.pythonhosted.org/packages/90/81/db56870c997805bf2b0f6eeeb2d68458bf4654652dccdcf1bf7a42d80903/pyarrow-22.0.0-cp313-cp313t-macosx_12_0_arm64.whl", hash = "sha256:f7fe3dbe871294ba70d789be16b6e7e52b418311e166e0e3cba9522f0f437fb1", size = 34336685 }, + { url = "https://files.pythonhosted.org/packages/1c/98/0727947f199aba8a120f47dfc229eeb05df15bcd7a6f1b669e9f882afc58/pyarrow-22.0.0-cp313-cp313t-macosx_12_0_x86_64.whl", hash = "sha256:ba95112d15fd4f1105fb2402c4eab9068f0554435e9b7085924bcfaac2cc306f", size = 36032158 }, + { url = "https://files.pythonhosted.org/packages/96/b4/9babdef9c01720a0785945c7cf550e4acd0ebcd7bdd2e6f0aa7981fa85e2/pyarrow-22.0.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:c064e28361c05d72eed8e744c9605cbd6d2bb7481a511c74071fd9b24bc65d7d", size = 44892060 }, + { url = "https://files.pythonhosted.org/packages/f8/ca/2f8804edd6279f78a37062d813de3f16f29183874447ef6d1aadbb4efa0f/pyarrow-22.0.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:6f9762274496c244d951c819348afbcf212714902742225f649cf02823a6a10f", size = 47504395 }, + { url = "https://files.pythonhosted.org/packages/b9/f0/77aa5198fd3943682b2e4faaf179a674f0edea0d55d326d83cb2277d9363/pyarrow-22.0.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:a9d9ffdc2ab696f6b15b4d1f7cec6658e1d788124418cb30030afbae31c64746", size = 48066216 }, + { url = "https://files.pythonhosted.org/packages/79/87/a1937b6e78b2aff18b706d738c9e46ade5bfcf11b294e39c87706a0089ac/pyarrow-22.0.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:ec1a15968a9d80da01e1d30349b2b0d7cc91e96588ee324ce1b5228175043e95", size = 50288552 }, + { url = "https://files.pythonhosted.org/packages/60/ae/b5a5811e11f25788ccfdaa8f26b6791c9807119dffcf80514505527c384c/pyarrow-22.0.0-cp313-cp313t-win_amd64.whl", hash = "sha256:bba208d9c7decf9961998edf5c65e3ea4355d5818dd6cd0f6809bec1afb951cc", size = 28262504 }, ] [[package]] @@ -2556,6 +3008,23 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/35/2f/1c2e71d2a052f9bb2f2df5a6a05464a0eb800f9e8d9dd800202fe31219e1/pydantic_core-2.41.1-cp312-cp312-win32.whl", hash = "sha256:83b64d70520e7890453f1aa21d66fda44e7b35f1cfea95adf7b4289a51e2b479", size = 1990927 }, { url = "https://files.pythonhosted.org/packages/b1/78/562998301ff2588b9c6dcc5cb21f52fa919d6e1decc75a35055feb973594/pydantic_core-2.41.1-cp312-cp312-win_amd64.whl", hash = "sha256:377defd66ee2003748ee93c52bcef2d14fde48fe28a0b156f88c3dbf9bc49a50", size = 2034703 }, { url = "https://files.pythonhosted.org/packages/b2/53/d95699ce5a5cdb44bb470bd818b848b9beadf51459fd4ea06667e8ede862/pydantic_core-2.41.1-cp312-cp312-win_arm64.whl", hash = "sha256:c95caff279d49c1d6cdfe2996e6c2ad712571d3b9caaa209a404426c326c4bde", size = 1972719 }, + { url = "https://files.pythonhosted.org/packages/27/8a/6d54198536a90a37807d31a156642aae7a8e1263ed9fe6fc6245defe9332/pydantic_core-2.41.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:70e790fce5f05204ef4403159857bfcd587779da78627b0babb3654f75361ebf", size = 2105825 }, + { url = "https://files.pythonhosted.org/packages/4f/2e/4784fd7b22ac9c8439db25bf98ffed6853d01e7e560a346e8af821776ccc/pydantic_core-2.41.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:9cebf1ca35f10930612d60bd0f78adfacee824c30a880e3534ba02c207cceceb", size = 1910126 }, + { url = "https://files.pythonhosted.org/packages/f3/92/31eb0748059ba5bd0aa708fb4bab9fcb211461ddcf9e90702a6542f22d0d/pydantic_core-2.41.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:170406a37a5bc82c22c3274616bf6f17cc7df9c4a0a0a50449e559cb755db669", size = 1961472 }, + { url = "https://files.pythonhosted.org/packages/ab/91/946527792275b5c4c7dde4cfa3e81241bf6900e9fee74fb1ba43e0c0f1ab/pydantic_core-2.41.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:12d4257fc9187a0ccd41b8b327d6a4e57281ab75e11dda66a9148ef2e1fb712f", size = 2063230 }, + { url = "https://files.pythonhosted.org/packages/31/5d/a35c5d7b414e5c0749f1d9f0d159ee2ef4bab313f499692896b918014ee3/pydantic_core-2.41.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:a75a33b4db105dd1c8d57839e17ee12db8d5ad18209e792fa325dbb4baeb00f4", size = 2229469 }, + { url = "https://files.pythonhosted.org/packages/21/4d/8713737c689afa57ecfefe38db78259d4484c97aa494979e6a9d19662584/pydantic_core-2.41.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08a589f850803a74e0fcb16a72081cafb0d72a3cdda500106942b07e76b7bf62", size = 2347986 }, + { url = "https://files.pythonhosted.org/packages/f6/ec/929f9a3a5ed5cda767081494bacd32f783e707a690ce6eeb5e0730ec4986/pydantic_core-2.41.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7a97939d6ea44763c456bd8a617ceada2c9b96bb5b8ab3dfa0d0827df7619014", size = 2072216 }, + { url = "https://files.pythonhosted.org/packages/26/55/a33f459d4f9cc8786d9db42795dbecc84fa724b290d7d71ddc3d7155d46a/pydantic_core-2.41.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:d2ae423c65c556f09569524b80ffd11babff61f33055ef9773d7c9fabc11ed8d", size = 2193047 }, + { url = "https://files.pythonhosted.org/packages/77/af/d5c6959f8b089f2185760a2779079e3c2c411bfc70ea6111f58367851629/pydantic_core-2.41.1-cp313-cp313-musllinux_1_1_aarch64.whl", hash = "sha256:4dc703015fbf8764d6a8001c327a87f1823b7328d40b47ce6000c65918ad2b4f", size = 2140613 }, + { url = "https://files.pythonhosted.org/packages/58/e5/2c19bd2a14bffe7fabcf00efbfbd3ac430aaec5271b504a938ff019ac7be/pydantic_core-2.41.1-cp313-cp313-musllinux_1_1_armv7l.whl", hash = "sha256:968e4ffdfd35698a5fe659e5e44c508b53664870a8e61c8f9d24d3d145d30257", size = 2327641 }, + { url = "https://files.pythonhosted.org/packages/93/ef/e0870ccda798c54e6b100aff3c4d49df5458fd64217e860cb9c3b0a403f4/pydantic_core-2.41.1-cp313-cp313-musllinux_1_1_x86_64.whl", hash = "sha256:fff2b76c8e172d34771cd4d4f0ade08072385310f214f823b5a6ad4006890d32", size = 2318229 }, + { url = "https://files.pythonhosted.org/packages/b1/4b/c3b991d95f5deb24d0bd52e47bcf716098fa1afe0ce2d4bd3125b38566ba/pydantic_core-2.41.1-cp313-cp313-win32.whl", hash = "sha256:a38a5263185407ceb599f2f035faf4589d57e73c7146d64f10577f6449e8171d", size = 1997911 }, + { url = "https://files.pythonhosted.org/packages/a7/ce/5c316fd62e01f8d6be1b7ee6b54273214e871772997dc2c95e204997a055/pydantic_core-2.41.1-cp313-cp313-win_amd64.whl", hash = "sha256:b42ae7fd6760782c975897e1fdc810f483b021b32245b0105d40f6e7a3803e4b", size = 2034301 }, + { url = "https://files.pythonhosted.org/packages/29/41/902640cfd6a6523194123e2c3373c60f19006447f2fb06f76de4e8466c5b/pydantic_core-2.41.1-cp313-cp313-win_arm64.whl", hash = "sha256:ad4111acc63b7384e205c27a2f15e23ac0ee21a9d77ad6f2e9cb516ec90965fb", size = 1977238 }, + { url = "https://files.pythonhosted.org/packages/04/04/28b040e88c1b89d851278478842f0bdf39c7a05da9e850333c6c8cbe7dfa/pydantic_core-2.41.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:440d0df7415b50084a4ba9d870480c16c5f67c0d1d4d5119e3f70925533a0edc", size = 1875626 }, + { url = "https://files.pythonhosted.org/packages/d6/58/b41dd3087505220bb58bc81be8c3e8cbc037f5710cd3c838f44f90bdd704/pydantic_core-2.41.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:71eaa38d342099405dae6484216dcf1e8e4b0bebd9b44a4e08c9b43db6a2ab67", size = 2045708 }, + { url = "https://files.pythonhosted.org/packages/d7/b8/760f23754e40bf6c65b94a69b22c394c24058a0ef7e2aa471d2e39219c1a/pydantic_core-2.41.1-cp313-cp313t-win_amd64.whl", hash = "sha256:555ecf7e50f1161d3f693bc49f23c82cf6cdeafc71fa37a06120772a09a38795", size = 1997171 }, { url = "https://files.pythonhosted.org/packages/16/89/d0afad37ba25f5801735af1472e650b86baad9fe807a42076508e4824a2a/pydantic_core-2.41.1-graalpy311-graalpy242_311_native-macosx_10_12_x86_64.whl", hash = "sha256:68f2251559b8efa99041bb63571ec7cdd2d715ba74cc82b3bc9eff824ebc8bf0", size = 2124001 }, { url = "https://files.pythonhosted.org/packages/8e/c4/08609134b34520568ddebb084d9ed0a2a3f5f52b45739e6e22cb3a7112eb/pydantic_core-2.41.1-graalpy311-graalpy242_311_native-macosx_11_0_arm64.whl", hash = "sha256:c7bc140c596097cb53b30546ca257dbe3f19282283190b1b5142928e5d5d3a20", size = 1941841 }, { url = "https://files.pythonhosted.org/packages/2a/43/94a4877094e5fe19a3f37e7e817772263e2c573c94f1e3fa2b1eee56ef3b/pydantic_core-2.41.1-graalpy311-graalpy242_311_native-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2896510fce8f4725ec518f8b9d7f015a00db249d2fd40788f442af303480063d", size = 1961129 }, @@ -2610,6 +3079,15 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e4/06/43084e6cbd4b3bc0e80f6be743b2e79fbc6eed8de9ad8c629939fa55d972/pymdown_extensions-10.16.1-py3-none-any.whl", hash = "sha256:d6ba157a6c03146a7fb122b2b9a121300056384eafeec9c9f9e584adfdb2a32d", size = 266178 }, ] +[[package]] +name = "pyreadline3" +version = "3.5.4" +source = { registry = "https://pypi.org/simple" } +sdist = { url = "https://files.pythonhosted.org/packages/0f/49/4cea918a08f02817aabae639e3d0ac046fef9f9180518a3ad394e22da148/pyreadline3-3.5.4.tar.gz", hash = "sha256:8d57d53039a1c75adba8e50dd3d992b28143480816187ea5efbd5c78e6c885b7", size = 99839 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/5a/dc/491b7661614ab97483abf2056be1deee4dc2490ecbf7bff9ab5cdbac86e1/pyreadline3-3.5.4-py3-none-any.whl", hash = "sha256:eaf8e6cc3c49bcccf145fc6067ba8643d1df34d604a1ec0eccbf7a18e6d3fae6", size = 83178 }, +] + [[package]] name = "pyright" version = "1.1.406" @@ -2726,6 +3204,9 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e7/ab/01ea1943d4eba0f850c3c61e78e8dd59757ff815ff3ccd0a84de5f541f42/pywin32-311-cp312-cp312-win32.whl", hash = "sha256:750ec6e621af2b948540032557b10a2d43b0cee2ae9758c54154d711cc852d31", size = 8706543 }, { url = "https://files.pythonhosted.org/packages/d1/a8/a0e8d07d4d051ec7502cd58b291ec98dcc0c3fff027caad0470b72cfcc2f/pywin32-311-cp312-cp312-win_amd64.whl", hash = "sha256:b8c095edad5c211ff31c05223658e71bf7116daa0ecf3ad85f3201ea3190d067", size = 9495040 }, { url = "https://files.pythonhosted.org/packages/ba/3a/2ae996277b4b50f17d61f0603efd8253cb2d79cc7ae159468007b586396d/pywin32-311-cp312-cp312-win_arm64.whl", hash = "sha256:e286f46a9a39c4a18b319c28f59b61de793654af2f395c102b4f819e584b5852", size = 8710102 }, + { url = "https://files.pythonhosted.org/packages/a5/be/3fd5de0979fcb3994bfee0d65ed8ca9506a8a1260651b86174f6a86f52b3/pywin32-311-cp313-cp313-win32.whl", hash = "sha256:f95ba5a847cba10dd8c4d8fefa9f2a6cf283b8b88ed6178fa8a6c1ab16054d0d", size = 8705700 }, + { url = "https://files.pythonhosted.org/packages/e3/28/e0a1909523c6890208295a29e05c2adb2126364e289826c0a8bc7297bd5c/pywin32-311-cp313-cp313-win_amd64.whl", hash = "sha256:718a38f7e5b058e76aee1c56ddd06908116d35147e133427e59a3983f703a20d", size = 9494700 }, + { url = "https://files.pythonhosted.org/packages/04/bf/90339ac0f55726dce7d794e6d79a18a91265bdf3aa70b6b9ca52f35e022a/pywin32-311-cp313-cp313-win_arm64.whl", hash = "sha256:7b4075d959648406202d92a2310cb990fea19b535c7f4a78d3f5e10b926eeb8a", size = 8709318 }, ] [[package]] @@ -2736,6 +3217,8 @@ sdist = { url = "https://files.pythonhosted.org/packages/f3/bb/a7cc2967c5c4eceb6 wheels = [ { url = "https://files.pythonhosted.org/packages/a6/a1/409c1651c9f874d598c10f51ff586c416625601df4bca315d08baec4c3e3/pywinpty-3.0.2-cp311-cp311-win_amd64.whl", hash = "sha256:327790d70e4c841ebd9d0f295a780177149aeb405bca44c7115a3de5c2054b23", size = 2050304 }, { url = "https://files.pythonhosted.org/packages/02/4e/1098484e042c9485f56f16eb2b69b43b874bd526044ee401512234cf9e04/pywinpty-3.0.2-cp312-cp312-win_amd64.whl", hash = "sha256:99fdd9b455f0ad6419aba6731a7a0d2f88ced83c3c94a80ff9533d95fa8d8a9e", size = 2050391 }, + { url = "https://files.pythonhosted.org/packages/fc/19/b757fe28008236a4a713e813283721b8a40aa60cd7d3f83549f2e25a3155/pywinpty-3.0.2-cp313-cp313-win_amd64.whl", hash = "sha256:18f78b81e4cfee6aabe7ea8688441d30247b73e52cd9657138015c5f4ee13a51", size = 2050057 }, + { url = "https://files.pythonhosted.org/packages/cb/44/cbae12ecf6f4fa4129c36871fd09c6bef4f98d5f625ecefb5e2449765508/pywinpty-3.0.2-cp313-cp313t-win_amd64.whl", hash = "sha256:663383ecfab7fc382cc97ea5c4f7f0bb32c2f889259855df6ea34e5df42d305b", size = 2049874 }, ] [[package]] @@ -2763,6 +3246,16 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/74/93/7baea19427dcfbe1e5a372d81473250b379f04b1bd3c4c5ff825e2327202/pyyaml-6.0.3-cp312-cp312-win32.whl", hash = "sha256:96b533f0e99f6579b3d4d4995707cf36df9100d67e0c8303a0c55b27b5f99bc5", size = 137658 }, { url = "https://files.pythonhosted.org/packages/86/bf/899e81e4cce32febab4fb42bb97dcdf66bc135272882d1987881a4b519e9/pyyaml-6.0.3-cp312-cp312-win_amd64.whl", hash = "sha256:5fcd34e47f6e0b794d17de1b4ff496c00986e1c83f7ab2fb8fcfe9616ff7477b", size = 154003 }, { url = "https://files.pythonhosted.org/packages/1a/08/67bd04656199bbb51dbed1439b7f27601dfb576fb864099c7ef0c3e55531/pyyaml-6.0.3-cp312-cp312-win_arm64.whl", hash = "sha256:64386e5e707d03a7e172c0701abfb7e10f0fb753ee1d773128192742712a98fd", size = 140344 }, + { url = "https://files.pythonhosted.org/packages/d1/11/0fd08f8192109f7169db964b5707a2f1e8b745d4e239b784a5a1dd80d1db/pyyaml-6.0.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:8da9669d359f02c0b91ccc01cac4a67f16afec0dac22c2ad09f46bee0697eba8", size = 181669 }, + { url = "https://files.pythonhosted.org/packages/b1/16/95309993f1d3748cd644e02e38b75d50cbc0d9561d21f390a76242ce073f/pyyaml-6.0.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:2283a07e2c21a2aa78d9c4442724ec1eb15f5e42a723b99cb3d822d48f5f7ad1", size = 173252 }, + { url = "https://files.pythonhosted.org/packages/50/31/b20f376d3f810b9b2371e72ef5adb33879b25edb7a6d072cb7ca0c486398/pyyaml-6.0.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:ee2922902c45ae8ccada2c5b501ab86c36525b883eff4255313a253a3160861c", size = 767081 }, + { url = "https://files.pythonhosted.org/packages/49/1e/a55ca81e949270d5d4432fbbd19dfea5321eda7c41a849d443dc92fd1ff7/pyyaml-6.0.3-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a33284e20b78bd4a18c8c2282d549d10bc8408a2a7ff57653c0cf0b9be0afce5", size = 841159 }, + { url = "https://files.pythonhosted.org/packages/74/27/e5b8f34d02d9995b80abcef563ea1f8b56d20134d8f4e5e81733b1feceb2/pyyaml-6.0.3-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:0f29edc409a6392443abf94b9cf89ce99889a1dd5376d94316ae5145dfedd5d6", size = 801626 }, + { url = "https://files.pythonhosted.org/packages/f9/11/ba845c23988798f40e52ba45f34849aa8a1f2d4af4b798588010792ebad6/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:f7057c9a337546edc7973c0d3ba84ddcdf0daa14533c2065749c9075001090e6", size = 753613 }, + { url = "https://files.pythonhosted.org/packages/3d/e0/7966e1a7bfc0a45bf0a7fb6b98ea03fc9b8d84fa7f2229e9659680b69ee3/pyyaml-6.0.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:eda16858a3cab07b80edaf74336ece1f986ba330fdb8ee0d6c0d68fe82bc96be", size = 794115 }, + { url = "https://files.pythonhosted.org/packages/de/94/980b50a6531b3019e45ddeada0626d45fa85cbe22300844a7983285bed3b/pyyaml-6.0.3-cp313-cp313-win32.whl", hash = "sha256:d0eae10f8159e8fdad514efdc92d74fd8d682c933a6dd088030f3834bc8e6b26", size = 137427 }, + { url = "https://files.pythonhosted.org/packages/97/c9/39d5b874e8b28845e4ec2202b5da735d0199dbe5b8fb85f91398814a9a46/pyyaml-6.0.3-cp313-cp313-win_amd64.whl", hash = "sha256:79005a0d97d5ddabfeeea4cf676af11e647e41d81c9a7722a193022accdb6b7c", size = 154090 }, + { url = "https://files.pythonhosted.org/packages/73/e8/2bdf3ca2090f68bb3d75b44da7bbc71843b19c9f2b9cb9b0f4ab7a5a4329/pyyaml-6.0.3-cp313-cp313-win_arm64.whl", hash = "sha256:5498cd1645aa724a7c71c8f378eb29ebe23da2fc0d7a08071d89469bf1d2defb", size = 140246 }, ] [[package]] @@ -2806,6 +3299,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e6/2f/104c0a3c778d7c2ab8190e9db4f62f0b6957b53c9d87db77c284b69f33ea/pyzmq-27.1.0-cp312-abi3-win32.whl", hash = "sha256:250e5436a4ba13885494412b3da5d518cd0d3a278a1ae640e113c073a5f88edd", size = 559184 }, { url = "https://files.pythonhosted.org/packages/fc/7f/a21b20d577e4100c6a41795842028235998a643b1ad406a6d4163ea8f53e/pyzmq-27.1.0-cp312-abi3-win_amd64.whl", hash = "sha256:9ce490cf1d2ca2ad84733aa1d69ce6855372cb5ce9223802450c9b2a7cba0ccf", size = 619480 }, { url = "https://files.pythonhosted.org/packages/78/c2/c012beae5f76b72f007a9e91ee9401cb88c51d0f83c6257a03e785c81cc2/pyzmq-27.1.0-cp312-abi3-win_arm64.whl", hash = "sha256:75a2f36223f0d535a0c919e23615fc85a1e23b71f40c7eb43d7b1dedb4d8f15f", size = 552993 }, + { url = "https://files.pythonhosted.org/packages/60/cb/84a13459c51da6cec1b7b1dc1a47e6db6da50b77ad7fd9c145842750a011/pyzmq-27.1.0-cp313-cp313-android_24_arm64_v8a.whl", hash = "sha256:93ad4b0855a664229559e45c8d23797ceac03183c7b6f5b4428152a6b06684a5", size = 1122436 }, + { url = "https://files.pythonhosted.org/packages/dc/b6/94414759a69a26c3dd674570a81813c46a078767d931a6c70ad29fc585cb/pyzmq-27.1.0-cp313-cp313-android_24_x86_64.whl", hash = "sha256:fbb4f2400bfda24f12f009cba62ad5734148569ff4949b1b6ec3b519444342e6", size = 1156301 }, + { url = "https://files.pythonhosted.org/packages/a5/ad/15906493fd40c316377fd8a8f6b1f93104f97a752667763c9b9c1b71d42d/pyzmq-27.1.0-cp313-cp313t-macosx_10_15_universal2.whl", hash = "sha256:e343d067f7b151cfe4eb3bb796a7752c9d369eed007b91231e817071d2c2fec7", size = 1341197 }, + { url = "https://files.pythonhosted.org/packages/14/1d/d343f3ce13db53a54cb8946594e567410b2125394dafcc0268d8dda027e0/pyzmq-27.1.0-cp313-cp313t-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:08363b2011dec81c354d694bdecaef4770e0ae96b9afea70b3f47b973655cc05", size = 897275 }, + { url = "https://files.pythonhosted.org/packages/69/2d/d83dd6d7ca929a2fc67d2c3005415cdf322af7751d773524809f9e585129/pyzmq-27.1.0-cp313-cp313t-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:d54530c8c8b5b8ddb3318f481297441af102517602b569146185fa10b63f4fa9", size = 660469 }, + { url = "https://files.pythonhosted.org/packages/3e/cd/9822a7af117f4bc0f1952dbe9ef8358eb50a24928efd5edf54210b850259/pyzmq-27.1.0-cp313-cp313t-manylinux_2_26_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:6f3afa12c392f0a44a2414056d730eebc33ec0926aae92b5ad5cf26ebb6cc128", size = 847961 }, + { url = "https://files.pythonhosted.org/packages/9a/12/f003e824a19ed73be15542f172fd0ec4ad0b60cf37436652c93b9df7c585/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:c65047adafe573ff023b3187bb93faa583151627bc9c51fc4fb2c561ed689d39", size = 1650282 }, + { url = "https://files.pythonhosted.org/packages/d5/4a/e82d788ed58e9a23995cee70dbc20c9aded3d13a92d30d57ec2291f1e8a3/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:90e6e9441c946a8b0a667356f7078d96411391a3b8f80980315455574177ec97", size = 2024468 }, + { url = "https://files.pythonhosted.org/packages/d9/94/2da0a60841f757481e402b34bf4c8bf57fa54a5466b965de791b1e6f747d/pyzmq-27.1.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:add071b2d25f84e8189aaf0882d39a285b42fa3853016ebab234a5e78c7a43db", size = 1885394 }, + { url = "https://files.pythonhosted.org/packages/4f/6f/55c10e2e49ad52d080dc24e37adb215e5b0d64990b57598abc2e3f01725b/pyzmq-27.1.0-cp313-cp313t-win32.whl", hash = "sha256:7ccc0700cfdf7bd487bea8d850ec38f204478681ea02a582a8da8171b7f90a1c", size = 574964 }, + { url = "https://files.pythonhosted.org/packages/87/4d/2534970ba63dd7c522d8ca80fb92777f362c0f321900667c615e2067cb29/pyzmq-27.1.0-cp313-cp313t-win_amd64.whl", hash = "sha256:8085a9fba668216b9b4323be338ee5437a235fe275b9d1610e422ccc279733e2", size = 641029 }, + { url = "https://files.pythonhosted.org/packages/f6/fa/f8aea7a28b0641f31d40dea42d7ef003fded31e184ef47db696bc74cd610/pyzmq-27.1.0-cp313-cp313t-win_arm64.whl", hash = "sha256:6bb54ca21bcfe361e445256c15eedf083f153811c37be87e0514934d6913061e", size = 561541 }, { url = "https://files.pythonhosted.org/packages/4c/c6/c4dcdecdbaa70969ee1fdced6d7b8f60cfabe64d25361f27ac4665a70620/pyzmq-27.1.0-pp311-pypy311_pp73-macosx_10_15_x86_64.whl", hash = "sha256:18770c8d3563715387139060d37859c02ce40718d1faf299abddcdcc6a649066", size = 836265 }, { url = "https://files.pythonhosted.org/packages/3e/79/f38c92eeaeb03a2ccc2ba9866f0439593bb08c5e3b714ac1d553e5c96e25/pyzmq-27.1.0-pp311-pypy311_pp73-manylinux2014_i686.manylinux_2_17_i686.whl", hash = "sha256:ac25465d42f92e990f8d8b0546b01c391ad431c3bf447683fdc40565941d0604", size = 800208 }, { url = "https://files.pythonhosted.org/packages/49/0e/3f0d0d335c6b3abb9b7b723776d0b21fa7f3a6c819a0db6097059aada160/pyzmq-27.1.0-pp311-pypy311_pp73-manylinux_2_26_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:53b40f8ae006f2734ee7608d59ed661419f087521edbfc2149c3932e9c14808c", size = 567747 }, @@ -2820,7 +3325,7 @@ source = { registry = "https://pypi.org/simple" } dependencies = [ { name = "attrs" }, { name = "rpds-py" }, - { name = "typing-extensions" }, + { name = "typing-extensions", marker = "python_full_version < '3.13'" }, ] sdist = { url = "https://files.pythonhosted.org/packages/2f/db/98b5c277be99dd18bfd91dd04e1b759cad18d1a338188c936e92f921c7e2/referencing-0.36.2.tar.gz", hash = "sha256:df2e89862cd09deabbdba16944cc3f10feb6b3e6f18e902f7cc25609a34775aa", size = 74744 } wheels = [ @@ -2861,6 +3366,34 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/79/5d/cdd13b1f3c53afa7191593a7ad2ee24092a5a46417725ffff7f64be8342d/regex-2025.9.18-cp312-cp312-win32.whl", hash = "sha256:e1dd06f981eb226edf87c55d523131ade7285137fbde837c34dc9d1bf309f459", size = 264536 }, { url = "https://files.pythonhosted.org/packages/e0/f5/4a7770c9a522e7d2dc1fa3ffc83ab2ab33b0b22b447e62cffef186805302/regex-2025.9.18-cp312-cp312-win_amd64.whl", hash = "sha256:3d86b5247bf25fa3715e385aa9ff272c307e0636ce0c9595f64568b41f0a9c77", size = 275501 }, { url = "https://files.pythonhosted.org/packages/df/05/9ce3e110e70d225ecbed455b966003a3afda5e58e8aec2964042363a18f4/regex-2025.9.18-cp312-cp312-win_arm64.whl", hash = "sha256:032720248cbeeae6444c269b78cb15664458b7bb9ed02401d3da59fe4d68c3a5", size = 268601 }, + { url = "https://files.pythonhosted.org/packages/d2/c7/5c48206a60ce33711cf7dcaeaed10dd737733a3569dc7e1dce324dd48f30/regex-2025.9.18-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:2a40f929cd907c7e8ac7566ac76225a77701a6221bca937bdb70d56cb61f57b2", size = 485955 }, + { url = "https://files.pythonhosted.org/packages/e9/be/74fc6bb19a3c491ec1ace943e622b5a8539068771e8705e469b2da2306a7/regex-2025.9.18-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c90471671c2cdf914e58b6af62420ea9ecd06d1554d7474d50133ff26ae88feb", size = 289583 }, + { url = "https://files.pythonhosted.org/packages/25/c4/9ceaa433cb5dc515765560f22a19578b95b92ff12526e5a259321c4fc1a0/regex-2025.9.18-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a351aff9e07a2dabb5022ead6380cff17a4f10e4feb15f9100ee56c4d6d06af", size = 287000 }, + { url = "https://files.pythonhosted.org/packages/7d/e6/68bc9393cb4dc68018456568c048ac035854b042bc7c33cb9b99b0680afa/regex-2025.9.18-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:bc4b8e9d16e20ddfe16430c23468a8707ccad3365b06d4536142e71823f3ca29", size = 797535 }, + { url = "https://files.pythonhosted.org/packages/6a/1c/ebae9032d34b78ecfe9bd4b5e6575b55351dc8513485bb92326613732b8c/regex-2025.9.18-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:4b8cdbddf2db1c5e80338ba2daa3cfa3dec73a46fff2a7dda087c8efbf12d62f", size = 862603 }, + { url = "https://files.pythonhosted.org/packages/3b/74/12332c54b3882557a4bcd2b99f8be581f5c6a43cf1660a85b460dd8ff468/regex-2025.9.18-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:a276937d9d75085b2c91fb48244349c6954f05ee97bba0963ce24a9d915b8b68", size = 910829 }, + { url = "https://files.pythonhosted.org/packages/86/70/ba42d5ed606ee275f2465bfc0e2208755b06cdabd0f4c7c4b614d51b57ab/regex-2025.9.18-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:92a8e375ccdc1256401c90e9dc02b8642894443d549ff5e25e36d7cf8a80c783", size = 802059 }, + { url = "https://files.pythonhosted.org/packages/da/c5/fcb017e56396a7f2f8357412638d7e2963440b131a3ca549be25774b3641/regex-2025.9.18-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:0dc6893b1f502d73037cf807a321cdc9be29ef3d6219f7970f842475873712ac", size = 786781 }, + { url = "https://files.pythonhosted.org/packages/c6/ee/21c4278b973f630adfb3bcb23d09d83625f3ab1ca6e40ebdffe69901c7a1/regex-2025.9.18-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:a61e85bfc63d232ac14b015af1261f826260c8deb19401c0597dbb87a864361e", size = 856578 }, + { url = "https://files.pythonhosted.org/packages/87/0b/de51550dc7274324435c8f1539373ac63019b0525ad720132866fff4a16a/regex-2025.9.18-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:1ef86a9ebc53f379d921fb9a7e42b92059ad3ee800fcd9e0fe6181090e9f6c23", size = 849119 }, + { url = "https://files.pythonhosted.org/packages/60/52/383d3044fc5154d9ffe4321696ee5b2ee4833a28c29b137c22c33f41885b/regex-2025.9.18-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d3bc882119764ba3a119fbf2bd4f1b47bc56c1da5d42df4ed54ae1e8e66fdf8f", size = 788219 }, + { url = "https://files.pythonhosted.org/packages/20/bd/2614fc302671b7359972ea212f0e3a92df4414aaeacab054a8ce80a86073/regex-2025.9.18-cp313-cp313-win32.whl", hash = "sha256:3810a65675845c3bdfa58c3c7d88624356dd6ee2fc186628295e0969005f928d", size = 264517 }, + { url = "https://files.pythonhosted.org/packages/07/0f/ab5c1581e6563a7bffdc1974fb2d25f05689b88e2d416525271f232b1946/regex-2025.9.18-cp313-cp313-win_amd64.whl", hash = "sha256:16eaf74b3c4180ede88f620f299e474913ab6924d5c4b89b3833bc2345d83b3d", size = 275481 }, + { url = "https://files.pythonhosted.org/packages/49/22/ee47672bc7958f8c5667a587c2600a4fba8b6bab6e86bd6d3e2b5f7cac42/regex-2025.9.18-cp313-cp313-win_arm64.whl", hash = "sha256:4dc98ba7dd66bd1261927a9f49bd5ee2bcb3660f7962f1ec02617280fc00f5eb", size = 268598 }, + { url = "https://files.pythonhosted.org/packages/e8/83/6887e16a187c6226cb85d8301e47d3b73ecc4505a3a13d8da2096b44fd76/regex-2025.9.18-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:fe5d50572bc885a0a799410a717c42b1a6b50e2f45872e2b40f4f288f9bce8a2", size = 489765 }, + { url = "https://files.pythonhosted.org/packages/51/c5/e2f7325301ea2916ff301c8d963ba66b1b2c1b06694191df80a9c4fea5d0/regex-2025.9.18-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:1b9d9a2d6cda6621551ca8cf7a06f103adf72831153f3c0d982386110870c4d3", size = 291228 }, + { url = "https://files.pythonhosted.org/packages/91/60/7d229d2bc6961289e864a3a3cfebf7d0d250e2e65323a8952cbb7e22d824/regex-2025.9.18-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:13202e4c4ac0ef9a317fff817674b293c8f7e8c68d3190377d8d8b749f566e12", size = 289270 }, + { url = "https://files.pythonhosted.org/packages/3c/d7/b4f06868ee2958ff6430df89857fbf3d43014bbf35538b6ec96c2704e15d/regex-2025.9.18-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:874ff523b0fecffb090f80ae53dc93538f8db954c8bb5505f05b7787ab3402a0", size = 806326 }, + { url = "https://files.pythonhosted.org/packages/d6/e4/bca99034a8f1b9b62ccf337402a8e5b959dd5ba0e5e5b2ead70273df3277/regex-2025.9.18-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:d13ab0490128f2bb45d596f754148cd750411afc97e813e4b3a61cf278a23bb6", size = 871556 }, + { url = "https://files.pythonhosted.org/packages/6d/df/e06ffaf078a162f6dd6b101a5ea9b44696dca860a48136b3ae4a9caf25e2/regex-2025.9.18-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:05440bc172bc4b4b37fb9667e796597419404dbba62e171e1f826d7d2a9ebcef", size = 913817 }, + { url = "https://files.pythonhosted.org/packages/9e/05/25b05480b63292fd8e84800b1648e160ca778127b8d2367a0a258fa2e225/regex-2025.9.18-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:5514b8e4031fdfaa3d27e92c75719cbe7f379e28cacd939807289bce76d0e35a", size = 811055 }, + { url = "https://files.pythonhosted.org/packages/70/97/7bc7574655eb651ba3a916ed4b1be6798ae97af30104f655d8efd0cab24b/regex-2025.9.18-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:65d3c38c39efce73e0d9dc019697b39903ba25b1ad45ebbd730d2cf32741f40d", size = 794534 }, + { url = "https://files.pythonhosted.org/packages/b4/c2/d5da49166a52dda879855ecdba0117f073583db2b39bb47ce9a3378a8e9e/regex-2025.9.18-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:ae77e447ebc144d5a26d50055c6ddba1d6ad4a865a560ec7200b8b06bc529368", size = 866684 }, + { url = "https://files.pythonhosted.org/packages/bd/2d/0a5c4e6ec417de56b89ff4418ecc72f7e3feca806824c75ad0bbdae0516b/regex-2025.9.18-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:e3ef8cf53dc8df49d7e28a356cf824e3623764e9833348b655cfed4524ab8a90", size = 853282 }, + { url = "https://files.pythonhosted.org/packages/f4/8e/d656af63e31a86572ec829665d6fa06eae7e144771e0330650a8bb865635/regex-2025.9.18-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:9feb29817df349c976da9a0debf775c5c33fc1c8ad7b9f025825da99374770b7", size = 797830 }, + { url = "https://files.pythonhosted.org/packages/db/ce/06edc89df8f7b83ffd321b6071be4c54dc7332c0f77860edc40ce57d757b/regex-2025.9.18-cp313-cp313t-win32.whl", hash = "sha256:168be0d2f9b9d13076940b1ed774f98595b4e3c7fc54584bba81b3cc4181742e", size = 267281 }, + { url = "https://files.pythonhosted.org/packages/83/9a/2b5d9c8b307a451fd17068719d971d3634ca29864b89ed5c18e499446d4a/regex-2025.9.18-cp313-cp313t-win_amd64.whl", hash = "sha256:d59ecf3bb549e491c8104fea7313f3563c7b048e01287db0a90485734a70a730", size = 278724 }, + { url = "https://files.pythonhosted.org/packages/3d/70/177d31e8089a278a764f8ec9a3faac8d14a312d622a47385d4b43905806f/regex-2025.9.18-cp313-cp313t-win_arm64.whl", hash = "sha256:dbef80defe9fb21310948a2595420b36c6d641d9bea4c991175829b2cc4bc06a", size = 269771 }, ] [[package]] @@ -2972,6 +3505,35 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/6e/96/6772cbfa0e2485bcceef8071de7821f81aeac8bb45fbfd5542a3e8108165/rpds_py-0.27.1-cp312-cp312-win32.whl", hash = "sha256:819064fa048ba01b6dadc5116f3ac48610435ac9a0058bbde98e569f9e785c39", size = 221343 }, { url = "https://files.pythonhosted.org/packages/67/b6/c82f0faa9af1c6a64669f73a17ee0eeef25aff30bb9a1c318509efe45d84/rpds_py-0.27.1-cp312-cp312-win_amd64.whl", hash = "sha256:d9199717881f13c32c4046a15f024971a3b78ad4ea029e8da6b86e5aa9cf4594", size = 232497 }, { url = "https://files.pythonhosted.org/packages/e1/96/2817b44bd2ed11aebacc9251da03689d56109b9aba5e311297b6902136e2/rpds_py-0.27.1-cp312-cp312-win_arm64.whl", hash = "sha256:33aa65b97826a0e885ef6e278fbd934e98cdcfed80b63946025f01e2f5b29502", size = 222790 }, + { url = "https://files.pythonhosted.org/packages/cc/77/610aeee8d41e39080c7e14afa5387138e3c9fa9756ab893d09d99e7d8e98/rpds_py-0.27.1-cp313-cp313-macosx_10_12_x86_64.whl", hash = "sha256:e4b9fcfbc021633863a37e92571d6f91851fa656f0180246e84cbd8b3f6b329b", size = 361741 }, + { url = "https://files.pythonhosted.org/packages/3a/fc/c43765f201c6a1c60be2043cbdb664013def52460a4c7adace89d6682bf4/rpds_py-0.27.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1441811a96eadca93c517d08df75de45e5ffe68aa3089924f963c782c4b898cf", size = 345574 }, + { url = "https://files.pythonhosted.org/packages/20/42/ee2b2ca114294cd9847d0ef9c26d2b0851b2e7e00bf14cc4c0b581df0fc3/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55266dafa22e672f5a4f65019015f90336ed31c6383bd53f5e7826d21a0e0b83", size = 385051 }, + { url = "https://files.pythonhosted.org/packages/fd/e8/1e430fe311e4799e02e2d1af7c765f024e95e17d651612425b226705f910/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:d78827d7ac08627ea2c8e02c9e5b41180ea5ea1f747e9db0915e3adf36b62dcf", size = 398395 }, + { url = "https://files.pythonhosted.org/packages/82/95/9dc227d441ff2670651c27a739acb2535ccaf8b351a88d78c088965e5996/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:ae92443798a40a92dc5f0b01d8a7c93adde0c4dc965310a29ae7c64d72b9fad2", size = 524334 }, + { url = "https://files.pythonhosted.org/packages/87/01/a670c232f401d9ad461d9a332aa4080cd3cb1d1df18213dbd0d2a6a7ab51/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c46c9dd2403b66a2a3b9720ec4b74d4ab49d4fabf9f03dfdce2d42af913fe8d0", size = 407691 }, + { url = "https://files.pythonhosted.org/packages/03/36/0a14aebbaa26fe7fab4780c76f2239e76cc95a0090bdb25e31d95c492fcd/rpds_py-0.27.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2efe4eb1d01b7f5f1939f4ef30ecea6c6b3521eec451fb93191bf84b2a522418", size = 386868 }, + { url = "https://files.pythonhosted.org/packages/3b/03/8c897fb8b5347ff6c1cc31239b9611c5bf79d78c984430887a353e1409a1/rpds_py-0.27.1-cp313-cp313-manylinux_2_31_riscv64.whl", hash = "sha256:15d3b4d83582d10c601f481eca29c3f138d44c92187d197aff663a269197c02d", size = 405469 }, + { url = "https://files.pythonhosted.org/packages/da/07/88c60edc2df74850d496d78a1fdcdc7b54360a7f610a4d50008309d41b94/rpds_py-0.27.1-cp313-cp313-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:4ed2e16abbc982a169d30d1a420274a709949e2cbdef119fe2ec9d870b42f274", size = 422125 }, + { url = "https://files.pythonhosted.org/packages/6b/86/5f4c707603e41b05f191a749984f390dabcbc467cf833769b47bf14ba04f/rpds_py-0.27.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:a75f305c9b013289121ec0f1181931975df78738cdf650093e6b86d74aa7d8dd", size = 562341 }, + { url = "https://files.pythonhosted.org/packages/b2/92/3c0cb2492094e3cd9baf9e49bbb7befeceb584ea0c1a8b5939dca4da12e5/rpds_py-0.27.1-cp313-cp313-musllinux_1_2_i686.whl", hash = "sha256:67ce7620704745881a3d4b0ada80ab4d99df390838839921f99e63c474f82cf2", size = 592511 }, + { url = "https://files.pythonhosted.org/packages/10/bb/82e64fbb0047c46a168faa28d0d45a7851cd0582f850b966811d30f67ad8/rpds_py-0.27.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9d992ac10eb86d9b6f369647b6a3f412fc0075cfd5d799530e84d335e440a002", size = 557736 }, + { url = "https://files.pythonhosted.org/packages/00/95/3c863973d409210da7fb41958172c6b7dbe7fc34e04d3cc1f10bb85e979f/rpds_py-0.27.1-cp313-cp313-win32.whl", hash = "sha256:4f75e4bd8ab8db624e02c8e2fc4063021b58becdbe6df793a8111d9343aec1e3", size = 221462 }, + { url = "https://files.pythonhosted.org/packages/ce/2c/5867b14a81dc217b56d95a9f2a40fdbc56a1ab0181b80132beeecbd4b2d6/rpds_py-0.27.1-cp313-cp313-win_amd64.whl", hash = "sha256:f9025faafc62ed0b75a53e541895ca272815bec18abe2249ff6501c8f2e12b83", size = 232034 }, + { url = "https://files.pythonhosted.org/packages/c7/78/3958f3f018c01923823f1e47f1cc338e398814b92d83cd278364446fac66/rpds_py-0.27.1-cp313-cp313-win_arm64.whl", hash = "sha256:ed10dc32829e7d222b7d3b93136d25a406ba9788f6a7ebf6809092da1f4d279d", size = 222392 }, + { url = "https://files.pythonhosted.org/packages/01/76/1cdf1f91aed5c3a7bf2eba1f1c4e4d6f57832d73003919a20118870ea659/rpds_py-0.27.1-cp313-cp313t-macosx_10_12_x86_64.whl", hash = "sha256:92022bbbad0d4426e616815b16bc4127f83c9a74940e1ccf3cfe0b387aba0228", size = 358355 }, + { url = "https://files.pythonhosted.org/packages/c3/6f/bf142541229374287604caf3bb2a4ae17f0a580798fd72d3b009b532db4e/rpds_py-0.27.1-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:47162fdab9407ec3f160805ac3e154df042e577dd53341745fc7fb3f625e6d92", size = 342138 }, + { url = "https://files.pythonhosted.org/packages/1a/77/355b1c041d6be40886c44ff5e798b4e2769e497b790f0f7fd1e78d17e9a8/rpds_py-0.27.1-cp313-cp313t-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:fb89bec23fddc489e5d78b550a7b773557c9ab58b7946154a10a6f7a214a48b2", size = 380247 }, + { url = "https://files.pythonhosted.org/packages/d6/a4/d9cef5c3946ea271ce2243c51481971cd6e34f21925af2783dd17b26e815/rpds_py-0.27.1-cp313-cp313t-manylinux_2_17_armv7l.manylinux2014_armv7l.whl", hash = "sha256:e48af21883ded2b3e9eb48cb7880ad8598b31ab752ff3be6457001d78f416723", size = 390699 }, + { url = "https://files.pythonhosted.org/packages/3a/06/005106a7b8c6c1a7e91b73169e49870f4af5256119d34a361ae5240a0c1d/rpds_py-0.27.1-cp313-cp313t-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:6f5b7bd8e219ed50299e58551a410b64daafb5017d54bbe822e003856f06a802", size = 521852 }, + { url = "https://files.pythonhosted.org/packages/e5/3e/50fb1dac0948e17a02eb05c24510a8fe12d5ce8561c6b7b7d1339ab7ab9c/rpds_py-0.27.1-cp313-cp313t-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:08f1e20bccf73b08d12d804d6e1c22ca5530e71659e6673bce31a6bb71c1e73f", size = 402582 }, + { url = "https://files.pythonhosted.org/packages/cb/b0/f4e224090dc5b0ec15f31a02d746ab24101dd430847c4d99123798661bfc/rpds_py-0.27.1-cp313-cp313t-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0dc5dceeaefcc96dc192e3a80bbe1d6c410c469e97bdd47494a7d930987f18b2", size = 384126 }, + { url = "https://files.pythonhosted.org/packages/54/77/ac339d5f82b6afff1df8f0fe0d2145cc827992cb5f8eeb90fc9f31ef7a63/rpds_py-0.27.1-cp313-cp313t-manylinux_2_31_riscv64.whl", hash = "sha256:d76f9cc8665acdc0c9177043746775aa7babbf479b5520b78ae4002d889f5c21", size = 399486 }, + { url = "https://files.pythonhosted.org/packages/d6/29/3e1c255eee6ac358c056a57d6d6869baa00a62fa32eea5ee0632039c50a3/rpds_py-0.27.1-cp313-cp313t-manylinux_2_5_i686.manylinux1_i686.whl", hash = "sha256:134fae0e36022edad8290a6661edf40c023562964efea0cc0ec7f5d392d2aaef", size = 414832 }, + { url = "https://files.pythonhosted.org/packages/3f/db/6d498b844342deb3fa1d030598db93937a9964fcf5cb4da4feb5f17be34b/rpds_py-0.27.1-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:eb11a4f1b2b63337cfd3b4d110af778a59aae51c81d195768e353d8b52f88081", size = 557249 }, + { url = "https://files.pythonhosted.org/packages/60/f3/690dd38e2310b6f68858a331399b4d6dbb9132c3e8ef8b4333b96caf403d/rpds_py-0.27.1-cp313-cp313t-musllinux_1_2_i686.whl", hash = "sha256:13e608ac9f50a0ed4faec0e90ece76ae33b34c0e8656e3dceb9a7db994c692cd", size = 587356 }, + { url = "https://files.pythonhosted.org/packages/86/e3/84507781cccd0145f35b1dc32c72675200c5ce8d5b30f813e49424ef68fc/rpds_py-0.27.1-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:dd2135527aa40f061350c3f8f89da2644de26cd73e4de458e79606384f4f68e7", size = 555300 }, + { url = "https://files.pythonhosted.org/packages/e5/ee/375469849e6b429b3516206b4580a79e9ef3eb12920ddbd4492b56eaacbe/rpds_py-0.27.1-cp313-cp313t-win32.whl", hash = "sha256:3020724ade63fe320a972e2ffd93b5623227e684315adce194941167fee02688", size = 216714 }, + { url = "https://files.pythonhosted.org/packages/21/87/3fc94e47c9bd0742660e84706c311a860dcae4374cf4a03c477e23ce605a/rpds_py-0.27.1-cp313-cp313t-win_amd64.whl", hash = "sha256:8ee50c3e41739886606388ba3ab3ee2aae9f35fb23f833091833255a31740797", size = 228943 }, { url = "https://files.pythonhosted.org/packages/0c/ed/e1fba02de17f4f76318b834425257c8ea297e415e12c68b4361f63e8ae92/rpds_py-0.27.1-pp311-pypy311_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cdfe4bb2f9fe7458b7453ad3c33e726d6d1c7c0a72960bcc23800d77384e42df", size = 371402 }, { url = "https://files.pythonhosted.org/packages/af/7c/e16b959b316048b55585a697e94add55a4ae0d984434d279ea83442e460d/rpds_py-0.27.1-pp311-pypy311_pp73-macosx_11_0_arm64.whl", hash = "sha256:8fabb8fd848a5f75a2324e4a84501ee3a5e3c78d8603f83475441866e60b94a3", size = 354084 }, { url = "https://files.pythonhosted.org/packages/de/c1/ade645f55de76799fdd08682d51ae6724cb46f318573f18be49b1e040428/rpds_py-0.27.1-pp311-pypy311_pp73-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:eda8719d598f2f7f3e0f885cba8646644b55a187762bec091fa14a2b819746a9", size = 383090 }, @@ -3133,6 +3695,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/8f/a3/1fb1a49dc6d982d96fffc30c3a31bb431526008eea72ac3773f6518720a6/spacy-3.8.7-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:0dca25deba54f3eb5dcfbf63bf16e613e6c601da56f91c4a902d38533c098941", size = 31939285 }, { url = "https://files.pythonhosted.org/packages/2d/55/6cf1aff8e5c01ee683e828f3ccd9282d2aff7ca1143a9349ee3d0c1291ff/spacy-3.8.7-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:5eef3f805a1c118d9b709a23e2d378f5f20da5a0d6258c9cfdc87c4cb234b4fc", size = 32988845 }, { url = "https://files.pythonhosted.org/packages/8c/47/c17ee61b51aa8497d8af0999224b4b62485111a55ec105a06886685b2c68/spacy-3.8.7-cp312-cp312-win_amd64.whl", hash = "sha256:25d7a68e445200c9e9dc0044f8b7278ec0ef01ccc7cb5a95d1de2bd8e3ed6be2", size = 13918682 }, + { url = "https://files.pythonhosted.org/packages/2a/95/7125bea6d432c601478bf922f7a568762c8be425bbde5b66698260ab0358/spacy-3.8.7-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:dda7d57f42ec57c19fbef348095a9c82504e4777bca7b8db4b0d8318ba280fc7", size = 6235950 }, + { url = "https://files.pythonhosted.org/packages/96/c3/d2362846154d4d341136774831605df02d61f49ac637524a15f4f2794874/spacy-3.8.7-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:de0e0bddb810ed05bce44bcb91460eabe52bc56323da398d2ca74288a906da35", size = 5878106 }, + { url = "https://files.pythonhosted.org/packages/50/b6/b2943acfbfc4fc12642dac9feb571e712dd1569ab481db8f3daedee045fe/spacy-3.8.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5a2e58f92b684465777a7c1a65d5578b1dc36fe55c48d9964fb6d46cc9449768", size = 33085866 }, + { url = "https://files.pythonhosted.org/packages/65/98/c4415cbb217ac0b502dbb3372136015c699dd16a0c47cd6d338cd15f4bed/spacy-3.8.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:46330da2eb357d6979f40ea8fc16ee5776ee75cd0c70aac2a4ea10c80364b8f3", size = 33398424 }, + { url = "https://files.pythonhosted.org/packages/12/45/12a198858f1f11c21844876e039ba90df59d550527c72996d418c1faf78d/spacy-3.8.7-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:86b6a6ad23ca5440ef9d29c2b1e3125e28722c927db612ae99e564d49202861c", size = 31530066 }, + { url = "https://files.pythonhosted.org/packages/9c/df/80524f99822eb96c9649200042ec5912357eec100cf0cd678a2e9ef0ecb3/spacy-3.8.7-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:ccfe468cbb370888153df145ce3693af8e54dae551940df49057258081b2112f", size = 32613343 }, + { url = "https://files.pythonhosted.org/packages/02/99/881f6f24c279a5a70b8d69aaf8266fd411a0a58fd1c8848112aaa348f6f6/spacy-3.8.7-cp313-cp313-win_amd64.whl", hash = "sha256:ca81e416ff35209769e8b5dd5d13acc52e4f57dd9d028364bccbbe157c2ae86b", size = 13911250 }, ] [[package]] @@ -3176,6 +3745,13 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/2d/85/8448fe874dd2042a4eceea5315cfff3af03ac77ff5073812071852c4e7e2/srsly-2.5.1-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:366b4708933cd8d6025c13c2cea3331f079c7bb5c25ec76fca392b6fc09818a0", size = 1098330 }, { url = "https://files.pythonhosted.org/packages/ef/7e/04d0e1417da140b2ac4053a3d4fcfc86cd59bf4829f69d370bb899f74d5d/srsly-2.5.1-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:c8a0b03c64eb6e150d772c5149befbadd981cc734ab13184b0561c17c8cef9b1", size = 1110670 }, { url = "https://files.pythonhosted.org/packages/96/1a/a8cd627eaa81a91feb6ceab50155f4ceff3eef6107916cb87ef796958427/srsly-2.5.1-cp312-cp312-win_amd64.whl", hash = "sha256:7952538f6bba91b9d8bf31a642ac9e8b9ccc0ccbb309feb88518bfb84bb0dc0d", size = 632598 }, + { url = "https://files.pythonhosted.org/packages/42/94/cab36845aad6e2c22ecee1178accaa365657296ff87305b805648fd41118/srsly-2.5.1-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:84b372f7ef1604b4a5b3cee1571993931f845a5b58652ac01bcb32c52586d2a8", size = 634883 }, + { url = "https://files.pythonhosted.org/packages/67/8b/501f51f4eaee7e1fd7327764799cb0a42f5d0de042a97916d30dbff770fc/srsly-2.5.1-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:6ac3944c112acb3347a39bfdc2ebfc9e2d4bace20fe1c0b764374ac5b83519f2", size = 632842 }, + { url = "https://files.pythonhosted.org/packages/07/be/5b8fce4829661e070a7d3e262d2e533f0e297b11b8993d57240da67d7330/srsly-2.5.1-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:6118f9c4b221cde0a990d06a42c8a4845218d55b425d8550746fe790acf267e9", size = 1118516 }, + { url = "https://files.pythonhosted.org/packages/91/60/a34e97564eac352c0e916c98f44b6f566b7eb6a9fb60bcd60ffa98530762/srsly-2.5.1-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7481460110d9986781d9e4ac0f5f991f1d6839284a80ad268625f9a23f686950", size = 1127974 }, + { url = "https://files.pythonhosted.org/packages/70/a2/f642334db0cabd187fa86b8773257ee6993c6009338a6831d4804e2c5b3c/srsly-2.5.1-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:6e57b8138082f09e35db60f99757e16652489e9e3692471d8e0c39aa95180688", size = 1086098 }, + { url = "https://files.pythonhosted.org/packages/0d/9b/be48e185c5a010e71b5135e4cdf317ff56b8ac4bc08f394bbf882ac13b05/srsly-2.5.1-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:bab90b85a63a1fe0bbc74d373c8bb9bb0499ddfa89075e0ebe8d670f12d04691", size = 1100354 }, + { url = "https://files.pythonhosted.org/packages/3a/e2/745aeba88a8513017fbac2fd2f9f07b8a36065e51695f818541eb795ec0c/srsly-2.5.1-cp313-cp313-win_amd64.whl", hash = "sha256:e73712be1634b5e1de6f81c273a7d47fe091ad3c79dc779c03d3416a5c117cee", size = 630634 }, ] [[package]] @@ -3192,6 +3768,18 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/f1/7b/ce1eafaf1a76852e2ec9b22edecf1daa58175c090266e9f6c64afcd81d91/stack_data-0.6.3-py3-none-any.whl", hash = "sha256:d5558e0c25a4cb0853cddad3d77da9891a08cb85dd9f9f91b9f8cd66e511e695", size = 24521 }, ] +[[package]] +name = "sympy" +version = "1.14.0" +source = { registry = "https://pypi.org/simple" } +dependencies = [ + { name = "mpmath" }, +] +sdist = { url = "https://files.pythonhosted.org/packages/83/d3/803453b36afefb7c2bb238361cd4ae6125a569b4db67cd9e79846ba2d68c/sympy-1.14.0.tar.gz", hash = "sha256:d3d3fe8df1e5a0b42f0e7bdf50541697dbe7d23746e894990c030e2b05e72517", size = 7793921 } +wheels = [ + { url = "https://files.pythonhosted.org/packages/a2/09/77d55d46fd61b4a135c444fc97158ef34a095e5681d0a6c10b75bf356191/sympy-1.14.0-py3-none-any.whl", hash = "sha256:e091cc3e99d2141a0ba2847328f5479b05d94a6635cb96148ccb3f34671bd8f5", size = 6299353 }, +] + [[package]] name = "terminado" version = "0.18.1" @@ -3254,6 +3842,14 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/c4/5f/7ceae1e1f2029efd67ed88e23cd6dc13a5ee647cdc2b35113101b2a62c10/thinc-8.3.10-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:759c385ac08dcf950238b60b96a28f9c04618861141766928dff4a51b1679b25", size = 5024421 }, { url = "https://files.pythonhosted.org/packages/0b/66/30f9d8d41049b78bc614213d492792fbcfeb1b28642adf661c42110a7ebd/thinc-8.3.10-cp312-cp312-win_amd64.whl", hash = "sha256:bf3f188c3fa1fdcefd547d1f90a1245c29025d6d0e3f71d7fdf21dad210b990c", size = 1718631 }, { url = "https://files.pythonhosted.org/packages/f8/44/32e2a5018a1165a304d25eb9b1c74e5310da19a533a35331e8d824dc6a88/thinc-8.3.10-cp312-cp312-win_arm64.whl", hash = "sha256:234b7e57a6ef4e0260d99f4e8fdc328ed12d0ba9bbd98fdaa567294a17700d1c", size = 1642224 }, + { url = "https://files.pythonhosted.org/packages/53/fc/17a2818d1f460b8c4f33b8bd3f21b19d263a647bfd23b572768d175e6b64/thinc-8.3.10-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:c7c3a50ddd423d1c49419899acef4ac80d800af3b423593acb9e40578384b543", size = 789771 }, + { url = "https://files.pythonhosted.org/packages/8d/24/649f54774b1fbe791a1c2efd7d7f0a95cfd9244902553ca7dcf19daab1dd/thinc-8.3.10-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:1a1cb110398f51fc2b9a07a2a4daec6f91e166533a9c9f1c565225330f46569a", size = 737051 }, + { url = "https://files.pythonhosted.org/packages/b2/8c/5840c6c504c1fa9718e1c74d6e04d77a474f594888867dbba53f9317285f/thinc-8.3.10-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.whl", hash = "sha256:42318746a67403d04be57d862fe0c0015b58b6fb9bbbf7b6db01f3f103b73a99", size = 3839221 }, + { url = "https://files.pythonhosted.org/packages/45/ef/e7fca88074cb0aa1c1a23195470b4549492c2797fe7dc9ff79a85500153a/thinc-8.3.10-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.whl", hash = "sha256:6b0e41e79973f8828adead770f885db8d0f199bfbaa9591d1d896c385842e993", size = 3885024 }, + { url = "https://files.pythonhosted.org/packages/9a/eb/805e277aa019896009028d727460f071c6cf83843d70f6a69e58994d2203/thinc-8.3.10-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:9ed982daa1eddbad813bfd079546483b849a68b98c01ad4a7e4efd125ddc5d7b", size = 4815939 }, + { url = "https://files.pythonhosted.org/packages/4f/f5/6425f12a60e3782091c9ec16394b9239f0c18c52c70218f3c8c047ff985c/thinc-8.3.10-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:d22bd381410749dec5f629b3162b7d1f1e2d9b7364fd49a7ea555b61c93772b9", size = 5020260 }, + { url = "https://files.pythonhosted.org/packages/85/a2/ae98feffe0b161400e87b7bfc8859e6fa1e6023fa7bcfa0a8cacd83b39a1/thinc-8.3.10-cp313-cp313-win_amd64.whl", hash = "sha256:9c32830446a57da13b6856cacb0225bc2f2104f279d9928d40500081c13aa9ec", size = 1717562 }, + { url = "https://files.pythonhosted.org/packages/b8/e0/faa1d04a6890ea33b9541727d2a3ca88bad794a89f73b9111af6f9aefe10/thinc-8.3.10-cp313-cp313-win_arm64.whl", hash = "sha256:aa43f9af76781d32f5f9fe29299204c8841d71e64cbb56e0e4f3d1e0387c2783", size = 1641536 }, ] [[package]] @@ -3280,6 +3876,20 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/a3/fe/26df24ce53ffde419a42f5f53d755b995c9318908288c17ec3f3448313a3/tiktoken-0.12.0-cp312-cp312-musllinux_1_2_aarch64.whl", hash = "sha256:35a2f8ddd3824608b3d650a000c1ef71f730d0c56486845705a8248da00f9fe5", size = 1194230 }, { url = "https://files.pythonhosted.org/packages/20/cc/b064cae1a0e9fac84b0d2c46b89f4e57051a5f41324e385d10225a984c24/tiktoken-0.12.0-cp312-cp312-musllinux_1_2_x86_64.whl", hash = "sha256:83d16643edb7fa2c99eff2ab7733508aae1eebb03d5dfc46f5565862810f24e3", size = 1254688 }, { url = "https://files.pythonhosted.org/packages/81/10/b8523105c590c5b8349f2587e2fdfe51a69544bd5a76295fc20f2374f470/tiktoken-0.12.0-cp312-cp312-win_amd64.whl", hash = "sha256:ffc5288f34a8bc02e1ea7047b8d041104791d2ddbf42d1e5fa07822cbffe16bd", size = 878694 }, + { url = "https://files.pythonhosted.org/packages/00/61/441588ee21e6b5cdf59d6870f86beb9789e532ee9718c251b391b70c68d6/tiktoken-0.12.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:775c2c55de2310cc1bc9a3ad8826761cbdc87770e586fd7b6da7d4589e13dab3", size = 1050802 }, + { url = "https://files.pythonhosted.org/packages/1f/05/dcf94486d5c5c8d34496abe271ac76c5b785507c8eae71b3708f1ad9b45a/tiktoken-0.12.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a01b12f69052fbe4b080a2cfb867c4de12c704b56178edf1d1d7b273561db160", size = 993995 }, + { url = "https://files.pythonhosted.org/packages/a0/70/5163fe5359b943f8db9946b62f19be2305de8c3d78a16f629d4165e2f40e/tiktoken-0.12.0-cp313-cp313-manylinux_2_28_aarch64.whl", hash = "sha256:01d99484dc93b129cd0964f9d34eee953f2737301f18b3c7257bf368d7615baa", size = 1128948 }, + { url = "https://files.pythonhosted.org/packages/0c/da/c028aa0babf77315e1cef357d4d768800c5f8a6de04d0eac0f377cb619fa/tiktoken-0.12.0-cp313-cp313-manylinux_2_28_x86_64.whl", hash = "sha256:4a1a4fcd021f022bfc81904a911d3df0f6543b9e7627b51411da75ff2fe7a1be", size = 1151986 }, + { url = "https://files.pythonhosted.org/packages/a0/5a/886b108b766aa53e295f7216b509be95eb7d60b166049ce2c58416b25f2a/tiktoken-0.12.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:981a81e39812d57031efdc9ec59fa32b2a5a5524d20d4776574c4b4bd2e9014a", size = 1194222 }, + { url = "https://files.pythonhosted.org/packages/f4/f8/4db272048397636ac7a078d22773dd2795b1becee7bc4922fe6207288d57/tiktoken-0.12.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:9baf52f84a3f42eef3ff4e754a0db79a13a27921b457ca9832cf944c6be4f8f3", size = 1255097 }, + { url = "https://files.pythonhosted.org/packages/8e/32/45d02e2e0ea2be3a9ed22afc47d93741247e75018aac967b713b2941f8ea/tiktoken-0.12.0-cp313-cp313-win_amd64.whl", hash = "sha256:b8a0cd0c789a61f31bf44851defbd609e8dd1e2c8589c614cc1060940ef1f697", size = 879117 }, + { url = "https://files.pythonhosted.org/packages/ce/76/994fc868f88e016e6d05b0da5ac24582a14c47893f4474c3e9744283f1d5/tiktoken-0.12.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:d5f89ea5680066b68bcb797ae85219c72916c922ef0fcdd3480c7d2315ffff16", size = 1050309 }, + { url = "https://files.pythonhosted.org/packages/f6/b8/57ef1456504c43a849821920d582a738a461b76a047f352f18c0b26c6516/tiktoken-0.12.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:b4e7ed1c6a7a8a60a3230965bdedba8cc58f68926b835e519341413370e0399a", size = 993712 }, + { url = "https://files.pythonhosted.org/packages/72/90/13da56f664286ffbae9dbcfadcc625439142675845baa62715e49b87b68b/tiktoken-0.12.0-cp313-cp313t-manylinux_2_28_aarch64.whl", hash = "sha256:fc530a28591a2d74bce821d10b418b26a094bf33839e69042a6e86ddb7a7fb27", size = 1128725 }, + { url = "https://files.pythonhosted.org/packages/05/df/4f80030d44682235bdaecd7346c90f67ae87ec8f3df4a3442cb53834f7e4/tiktoken-0.12.0-cp313-cp313t-manylinux_2_28_x86_64.whl", hash = "sha256:06a9f4f49884139013b138920a4c393aa6556b2f8f536345f11819389c703ebb", size = 1151875 }, + { url = "https://files.pythonhosted.org/packages/22/1f/ae535223a8c4ef4c0c1192e3f9b82da660be9eb66b9279e95c99288e9dab/tiktoken-0.12.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:04f0e6a985d95913cabc96a741c5ffec525a2c72e9df086ff17ebe35985c800e", size = 1194451 }, + { url = "https://files.pythonhosted.org/packages/78/a7/f8ead382fce0243cb625c4f266e66c27f65ae65ee9e77f59ea1653b6d730/tiktoken-0.12.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:0ee8f9ae00c41770b5f9b0bb1235474768884ae157de3beb5439ca0fd70f3e25", size = 1253794 }, + { url = "https://files.pythonhosted.org/packages/93/e0/6cc82a562bc6365785a3ff0af27a2a092d57c47d7a81d9e2295d8c36f011/tiktoken-0.12.0-cp313-cp313t-win_amd64.whl", hash = "sha256:dc2dd125a62cb2b3d858484d6c614d136b5b848976794edfb63688d539b8b93f", size = 878777 }, ] [[package]] @@ -3485,6 +4095,9 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/39/ea/3930d07dafc9e286ed356a679aa02d777c06e9bfd1164fa7c19c288a5483/watchdog-6.0.0-cp312-cp312-macosx_10_13_universal2.whl", hash = "sha256:bdd4e6f14b8b18c334febb9c4425a878a2ac20efd1e0b231978e7b150f92a948", size = 96471 }, { url = "https://files.pythonhosted.org/packages/12/87/48361531f70b1f87928b045df868a9fd4e253d9ae087fa4cf3f7113be363/watchdog-6.0.0-cp312-cp312-macosx_10_13_x86_64.whl", hash = "sha256:c7c15dda13c4eb00d6fb6fc508b3c0ed88b9d5d374056b239c4ad1611125c860", size = 88449 }, { url = "https://files.pythonhosted.org/packages/5b/7e/8f322f5e600812e6f9a31b75d242631068ca8f4ef0582dd3ae6e72daecc8/watchdog-6.0.0-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:6f10cb2d5902447c7d0da897e2c6768bca89174d0c6e1e30abec5421af97a5b0", size = 89054 }, + { url = "https://files.pythonhosted.org/packages/68/98/b0345cabdce2041a01293ba483333582891a3bd5769b08eceb0d406056ef/watchdog-6.0.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:490ab2ef84f11129844c23fb14ecf30ef3d8a6abafd3754a6f75ca1e6654136c", size = 96480 }, + { url = "https://files.pythonhosted.org/packages/85/83/cdf13902c626b28eedef7ec4f10745c52aad8a8fe7eb04ed7b1f111ca20e/watchdog-6.0.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:76aae96b00ae814b181bb25b1b98076d5fc84e8a53cd8885a318b42b6d3a5134", size = 88451 }, + { url = "https://files.pythonhosted.org/packages/fe/c4/225c87bae08c8b9ec99030cd48ae9c4eca050a59bf5c2255853e18c87b50/watchdog-6.0.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:a175f755fc2279e0b7312c0035d52e27211a5bc39719dd529625b1930917345b", size = 89057 }, { url = "https://files.pythonhosted.org/packages/a9/c7/ca4bf3e518cb57a686b2feb4f55a1892fd9a3dd13f470fca14e00f80ea36/watchdog-6.0.0-py3-none-manylinux2014_aarch64.whl", hash = "sha256:7607498efa04a3542ae3e05e64da8202e58159aa1fa4acddf7678d34a35d4f13", size = 79079 }, { url = "https://files.pythonhosted.org/packages/5c/51/d46dc9332f9a647593c947b4b88e2381c8dfc0942d15b8edc0310fa4abb1/watchdog-6.0.0-py3-none-manylinux2014_armv7l.whl", hash = "sha256:9041567ee8953024c83343288ccc458fd0a2d811d6a0fd68c4c22609e3490379", size = 79078 }, { url = "https://files.pythonhosted.org/packages/d4/57/04edbf5e169cd318d5f07b4766fee38e825d64b6913ca157ca32d1a42267/watchdog-6.0.0-py3-none-manylinux2014_i686.whl", hash = "sha256:82dc3e3143c7e38ec49d61af98d6558288c415eac98486a5c581726e0737c00e", size = 79076 }, @@ -3588,6 +4201,16 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/9e/b1/43b286ca1392a006d5336412d41663eeef1ad57485f3e52c767376ba7e5a/wrapt-1.17.3-cp312-cp312-win32.whl", hash = "sha256:4da9f45279fff3543c371d5ababc57a0384f70be244de7759c85a7f989cb4ebe", size = 36705 }, { url = "https://files.pythonhosted.org/packages/28/de/49493f962bd3c586ab4b88066e967aa2e0703d6ef2c43aa28cb83bf7b507/wrapt-1.17.3-cp312-cp312-win_amd64.whl", hash = "sha256:e71d5c6ebac14875668a1e90baf2ea0ef5b7ac7918355850c0908ae82bcb297c", size = 38877 }, { url = "https://files.pythonhosted.org/packages/f1/48/0f7102fe9cb1e8a5a77f80d4f0956d62d97034bbe88d33e94699f99d181d/wrapt-1.17.3-cp312-cp312-win_arm64.whl", hash = "sha256:604d076c55e2fdd4c1c03d06dc1a31b95130010517b5019db15365ec4a405fc6", size = 36885 }, + { url = "https://files.pythonhosted.org/packages/fc/f6/759ece88472157acb55fc195e5b116e06730f1b651b5b314c66291729193/wrapt-1.17.3-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:a47681378a0439215912ef542c45a783484d4dd82bac412b71e59cf9c0e1cea0", size = 54003 }, + { url = "https://files.pythonhosted.org/packages/4f/a9/49940b9dc6d47027dc850c116d79b4155f15c08547d04db0f07121499347/wrapt-1.17.3-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:54a30837587c6ee3cd1a4d1c2ec5d24e77984d44e2f34547e2323ddb4e22eb77", size = 39025 }, + { url = "https://files.pythonhosted.org/packages/45/35/6a08de0f2c96dcdd7fe464d7420ddb9a7655a6561150e5fc4da9356aeaab/wrapt-1.17.3-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:16ecf15d6af39246fe33e507105d67e4b81d8f8d2c6598ff7e3ca1b8a37213f7", size = 39108 }, + { url = "https://files.pythonhosted.org/packages/0c/37/6faf15cfa41bf1f3dba80cd3f5ccc6622dfccb660ab26ed79f0178c7497f/wrapt-1.17.3-cp313-cp313-manylinux1_x86_64.manylinux_2_28_x86_64.manylinux_2_5_x86_64.whl", hash = "sha256:6fd1ad24dc235e4ab88cda009e19bf347aabb975e44fd5c2fb22a3f6e4141277", size = 88072 }, + { url = "https://files.pythonhosted.org/packages/78/f2/efe19ada4a38e4e15b6dff39c3e3f3f73f5decf901f66e6f72fe79623a06/wrapt-1.17.3-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:0ed61b7c2d49cee3c027372df5809a59d60cf1b6c2f81ee980a091f3afed6a2d", size = 88214 }, + { url = "https://files.pythonhosted.org/packages/40/90/ca86701e9de1622b16e09689fc24b76f69b06bb0150990f6f4e8b0eeb576/wrapt-1.17.3-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:423ed5420ad5f5529db9ce89eac09c8a2f97da18eb1c870237e84c5a5c2d60aa", size = 87105 }, + { url = "https://files.pythonhosted.org/packages/fd/e0/d10bd257c9a3e15cbf5523025252cc14d77468e8ed644aafb2d6f54cb95d/wrapt-1.17.3-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e01375f275f010fcbf7f643b4279896d04e571889b8a5b3f848423d91bf07050", size = 87766 }, + { url = "https://files.pythonhosted.org/packages/e8/cf/7d848740203c7b4b27eb55dbfede11aca974a51c3d894f6cc4b865f42f58/wrapt-1.17.3-cp313-cp313-win32.whl", hash = "sha256:53e5e39ff71b3fc484df8a522c933ea2b7cdd0d5d15ae82e5b23fde87d44cbd8", size = 36711 }, + { url = "https://files.pythonhosted.org/packages/57/54/35a84d0a4d23ea675994104e667ceff49227ce473ba6a59ba2c84f250b74/wrapt-1.17.3-cp313-cp313-win_amd64.whl", hash = "sha256:1f0b2f40cf341ee8cc1a97d51ff50dddb9fcc73241b9143ec74b30fc4f44f6cb", size = 38885 }, + { url = "https://files.pythonhosted.org/packages/01/77/66e54407c59d7b02a3c4e0af3783168fff8e5d61def52cda8728439d86bc/wrapt-1.17.3-cp313-cp313-win_arm64.whl", hash = "sha256:7425ac3c54430f5fc5e7b6f41d41e704db073309acfc09305816bc6a0b26bb16", size = 36896 }, { url = "https://files.pythonhosted.org/packages/1f/f6/a933bd70f98e9cf3e08167fc5cd7aaaca49147e48411c0bd5ae701bb2194/wrapt-1.17.3-py3-none-any.whl", hash = "sha256:7171ae35d2c33d326ac19dd8facb1e82e5fd04ef8c6c0e394d7af55a55051c22", size = 23591 }, ] @@ -3634,6 +4257,38 @@ wheels = [ { url = "https://files.pythonhosted.org/packages/e7/3d/68bf18d50dc674b942daec86a9ba922d3113d8399b0e52b9897530442da2/yarl-1.22.0-cp312-cp312-win32.whl", hash = "sha256:70dfd4f241c04bd9239d53b17f11e6ab672b9f1420364af63e8531198e3f5fe8", size = 81589 }, { url = "https://files.pythonhosted.org/packages/c8/9a/6ad1a9b37c2f72874f93e691b2e7ecb6137fb2b899983125db4204e47575/yarl-1.22.0-cp312-cp312-win_amd64.whl", hash = "sha256:8884d8b332a5e9b88e23f60bb166890009429391864c685e17bd73a9eda9105c", size = 87213 }, { url = "https://files.pythonhosted.org/packages/44/c5/c21b562d1680a77634d748e30c653c3ca918beb35555cff24986fff54598/yarl-1.22.0-cp312-cp312-win_arm64.whl", hash = "sha256:ea70f61a47f3cc93bdf8b2f368ed359ef02a01ca6393916bc8ff877427181e74", size = 81330 }, + { url = "https://files.pythonhosted.org/packages/ea/f3/d67de7260456ee105dc1d162d43a019ecad6b91e2f51809d6cddaa56690e/yarl-1.22.0-cp313-cp313-macosx_10_13_universal2.whl", hash = "sha256:8dee9c25c74997f6a750cd317b8ca63545169c098faee42c84aa5e506c819b53", size = 139980 }, + { url = "https://files.pythonhosted.org/packages/01/88/04d98af0b47e0ef42597b9b28863b9060bb515524da0a65d5f4db160b2d5/yarl-1.22.0-cp313-cp313-macosx_10_13_x86_64.whl", hash = "sha256:01e73b85a5434f89fc4fe27dcda2aff08ddf35e4d47bbbea3bdcd25321af538a", size = 93424 }, + { url = "https://files.pythonhosted.org/packages/18/91/3274b215fd8442a03975ce6bee5fe6aa57a8326b29b9d3d56234a1dca244/yarl-1.22.0-cp313-cp313-macosx_11_0_arm64.whl", hash = "sha256:22965c2af250d20c873cdbee8ff958fb809940aeb2e74ba5f20aaf6b7ac8c70c", size = 93821 }, + { url = "https://files.pythonhosted.org/packages/61/3a/caf4e25036db0f2da4ca22a353dfeb3c9d3c95d2761ebe9b14df8fc16eb0/yarl-1.22.0-cp313-cp313-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:b4f15793aa49793ec8d1c708ab7f9eded1aa72edc5174cae703651555ed1b601", size = 373243 }, + { url = "https://files.pythonhosted.org/packages/6e/9e/51a77ac7516e8e7803b06e01f74e78649c24ee1021eca3d6a739cb6ea49c/yarl-1.22.0-cp313-cp313-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:e5542339dcf2747135c5c85f68680353d5cb9ffd741c0f2e8d832d054d41f35a", size = 342361 }, + { url = "https://files.pythonhosted.org/packages/d4/f8/33b92454789dde8407f156c00303e9a891f1f51a0330b0fad7c909f87692/yarl-1.22.0-cp313-cp313-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:5c401e05ad47a75869c3ab3e35137f8468b846770587e70d71e11de797d113df", size = 387036 }, + { url = "https://files.pythonhosted.org/packages/d9/9a/c5db84ea024f76838220280f732970aa4ee154015d7f5c1bfb60a267af6f/yarl-1.22.0-cp313-cp313-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:243dda95d901c733f5b59214d28b0120893d91777cb8aa043e6ef059d3cddfe2", size = 397671 }, + { url = "https://files.pythonhosted.org/packages/11/c9/cd8538dc2e7727095e0c1d867bad1e40c98f37763e6d995c1939f5fdc7b1/yarl-1.22.0-cp313-cp313-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:bec03d0d388060058f5d291a813f21c011041938a441c593374da6077fe21b1b", size = 377059 }, + { url = "https://files.pythonhosted.org/packages/a1/b9/ab437b261702ced75122ed78a876a6dec0a1b0f5e17a4ac7a9a2482d8abe/yarl-1.22.0-cp313-cp313-musllinux_1_2_aarch64.whl", hash = "sha256:b0748275abb8c1e1e09301ee3cf90c8a99678a4e92e4373705f2a2570d581273", size = 365356 }, + { url = "https://files.pythonhosted.org/packages/b2/9d/8e1ae6d1d008a9567877b08f0ce4077a29974c04c062dabdb923ed98e6fe/yarl-1.22.0-cp313-cp313-musllinux_1_2_armv7l.whl", hash = "sha256:47fdb18187e2a4e18fda2c25c05d8251a9e4a521edaed757fef033e7d8498d9a", size = 361331 }, + { url = "https://files.pythonhosted.org/packages/ca/5a/09b7be3905962f145b73beb468cdd53db8aa171cf18c80400a54c5b82846/yarl-1.22.0-cp313-cp313-musllinux_1_2_ppc64le.whl", hash = "sha256:c7044802eec4524fde550afc28edda0dd5784c4c45f0be151a2d3ba017daca7d", size = 382590 }, + { url = "https://files.pythonhosted.org/packages/aa/7f/59ec509abf90eda5048b0bc3e2d7b5099dffdb3e6b127019895ab9d5ef44/yarl-1.22.0-cp313-cp313-musllinux_1_2_s390x.whl", hash = "sha256:139718f35149ff544caba20fce6e8a2f71f1e39b92c700d8438a0b1d2a631a02", size = 385316 }, + { url = "https://files.pythonhosted.org/packages/e5/84/891158426bc8036bfdfd862fabd0e0fa25df4176ec793e447f4b85cf1be4/yarl-1.22.0-cp313-cp313-musllinux_1_2_x86_64.whl", hash = "sha256:e1b51bebd221006d3d2f95fbe124b22b247136647ae5dcc8c7acafba66e5ee67", size = 374431 }, + { url = "https://files.pythonhosted.org/packages/bb/49/03da1580665baa8bef5e8ed34c6df2c2aca0a2f28bf397ed238cc1bbc6f2/yarl-1.22.0-cp313-cp313-win32.whl", hash = "sha256:d3e32536234a95f513bd374e93d717cf6b2231a791758de6c509e3653f234c95", size = 81555 }, + { url = "https://files.pythonhosted.org/packages/9a/ee/450914ae11b419eadd067c6183ae08381cfdfcb9798b90b2b713bbebddda/yarl-1.22.0-cp313-cp313-win_amd64.whl", hash = "sha256:47743b82b76d89a1d20b83e60d5c20314cbd5ba2befc9cda8f28300c4a08ed4d", size = 86965 }, + { url = "https://files.pythonhosted.org/packages/98/4d/264a01eae03b6cf629ad69bae94e3b0e5344741e929073678e84bf7a3e3b/yarl-1.22.0-cp313-cp313-win_arm64.whl", hash = "sha256:5d0fcda9608875f7d052eff120c7a5da474a6796fe4d83e152e0e4d42f6d1a9b", size = 81205 }, + { url = "https://files.pythonhosted.org/packages/88/fc/6908f062a2f77b5f9f6d69cecb1747260831ff206adcbc5b510aff88df91/yarl-1.22.0-cp313-cp313t-macosx_10_13_universal2.whl", hash = "sha256:719ae08b6972befcba4310e49edb1161a88cdd331e3a694b84466bd938a6ab10", size = 146209 }, + { url = "https://files.pythonhosted.org/packages/65/47/76594ae8eab26210b4867be6f49129861ad33da1f1ebdf7051e98492bf62/yarl-1.22.0-cp313-cp313t-macosx_10_13_x86_64.whl", hash = "sha256:47d8a5c446df1c4db9d21b49619ffdba90e77c89ec6e283f453856c74b50b9e3", size = 95966 }, + { url = "https://files.pythonhosted.org/packages/ab/ce/05e9828a49271ba6b5b038b15b3934e996980dd78abdfeb52a04cfb9467e/yarl-1.22.0-cp313-cp313t-macosx_11_0_arm64.whl", hash = "sha256:cfebc0ac8333520d2d0423cbbe43ae43c8838862ddb898f5ca68565e395516e9", size = 97312 }, + { url = "https://files.pythonhosted.org/packages/d1/c5/7dffad5e4f2265b29c9d7ec869c369e4223166e4f9206fc2243ee9eea727/yarl-1.22.0-cp313-cp313t-manylinux2014_aarch64.manylinux_2_17_aarch64.manylinux_2_28_aarch64.whl", hash = "sha256:4398557cbf484207df000309235979c79c4356518fd5c99158c7d38203c4da4f", size = 361967 }, + { url = "https://files.pythonhosted.org/packages/50/b2/375b933c93a54bff7fc041e1a6ad2c0f6f733ffb0c6e642ce56ee3b39970/yarl-1.22.0-cp313-cp313t-manylinux2014_armv7l.manylinux_2_17_armv7l.manylinux_2_31_armv7l.whl", hash = "sha256:2ca6fd72a8cd803be290d42f2dec5cdcd5299eeb93c2d929bf060ad9efaf5de0", size = 323949 }, + { url = "https://files.pythonhosted.org/packages/66/50/bfc2a29a1d78644c5a7220ce2f304f38248dc94124a326794e677634b6cf/yarl-1.22.0-cp313-cp313t-manylinux2014_ppc64le.manylinux_2_17_ppc64le.manylinux_2_28_ppc64le.whl", hash = "sha256:ca1f59c4e1ab6e72f0a23c13fca5430f889634166be85dbf1013683e49e3278e", size = 361818 }, + { url = "https://files.pythonhosted.org/packages/46/96/f3941a46af7d5d0f0498f86d71275696800ddcdd20426298e572b19b91ff/yarl-1.22.0-cp313-cp313t-manylinux2014_s390x.manylinux_2_17_s390x.manylinux_2_28_s390x.whl", hash = "sha256:6c5010a52015e7c70f86eb967db0f37f3c8bd503a695a49f8d45700144667708", size = 372626 }, + { url = "https://files.pythonhosted.org/packages/c1/42/8b27c83bb875cd89448e42cd627e0fb971fa1675c9ec546393d18826cb50/yarl-1.22.0-cp313-cp313t-manylinux2014_x86_64.manylinux_2_17_x86_64.manylinux_2_28_x86_64.whl", hash = "sha256:9d7672ecf7557476642c88497c2f8d8542f8e36596e928e9bcba0e42e1e7d71f", size = 341129 }, + { url = "https://files.pythonhosted.org/packages/49/36/99ca3122201b382a3cf7cc937b95235b0ac944f7e9f2d5331d50821ed352/yarl-1.22.0-cp313-cp313t-musllinux_1_2_aarch64.whl", hash = "sha256:3b7c88eeef021579d600e50363e0b6ee4f7f6f728cd3486b9d0f3ee7b946398d", size = 346776 }, + { url = "https://files.pythonhosted.org/packages/85/b4/47328bf996acd01a4c16ef9dcd2f59c969f495073616586f78cd5f2efb99/yarl-1.22.0-cp313-cp313t-musllinux_1_2_armv7l.whl", hash = "sha256:f4afb5c34f2c6fecdcc182dfcfc6af6cccf1aa923eed4d6a12e9d96904e1a0d8", size = 334879 }, + { url = "https://files.pythonhosted.org/packages/c2/ad/b77d7b3f14a4283bffb8e92c6026496f6de49751c2f97d4352242bba3990/yarl-1.22.0-cp313-cp313t-musllinux_1_2_ppc64le.whl", hash = "sha256:59c189e3e99a59cf8d83cbb31d4db02d66cda5a1a4374e8a012b51255341abf5", size = 350996 }, + { url = "https://files.pythonhosted.org/packages/81/c8/06e1d69295792ba54d556f06686cbd6a7ce39c22307100e3fb4a2c0b0a1d/yarl-1.22.0-cp313-cp313t-musllinux_1_2_s390x.whl", hash = "sha256:5a3bf7f62a289fa90f1990422dc8dff5a458469ea71d1624585ec3a4c8d6960f", size = 356047 }, + { url = "https://files.pythonhosted.org/packages/4b/b8/4c0e9e9f597074b208d18cef227d83aac36184bfbc6eab204ea55783dbc5/yarl-1.22.0-cp313-cp313t-musllinux_1_2_x86_64.whl", hash = "sha256:de6b9a04c606978fdfe72666fa216ffcf2d1a9f6a381058d4378f8d7b1e5de62", size = 342947 }, + { url = "https://files.pythonhosted.org/packages/e0/e5/11f140a58bf4c6ad7aca69a892bff0ee638c31bea4206748fc0df4ebcb3a/yarl-1.22.0-cp313-cp313t-win32.whl", hash = "sha256:1834bb90991cc2999f10f97f5f01317f99b143284766d197e43cd5b45eb18d03", size = 86943 }, + { url = "https://files.pythonhosted.org/packages/31/74/8b74bae38ed7fe6793d0c15a0c8207bbb819cf287788459e5ed230996cdd/yarl-1.22.0-cp313-cp313t-win_amd64.whl", hash = "sha256:ff86011bd159a9d2dfc89c34cfd8aff12875980e3bd6a39ff097887520e60249", size = 93715 }, + { url = "https://files.pythonhosted.org/packages/69/66/991858aa4b5892d57aef7ee1ba6b4d01ec3b7eb3060795d34090a3ca3278/yarl-1.22.0-cp313-cp313t-win_arm64.whl", hash = "sha256:7861058d0582b847bc4e3a4a4c46828a410bca738673f35a29ba3ca5db0b473b", size = 83857 }, { url = "https://files.pythonhosted.org/packages/73/ae/b48f95715333080afb75a4504487cbe142cae1268afc482d06692d605ae6/yarl-1.22.0-py3-none-any.whl", hash = "sha256:1380560bdba02b6b6c90de54133c81c9f2a453dee9912fe58c1dcced1edb7cff", size = 46814 }, ] From 6fbf26c0916a876ddcd74c70dc46923ac9304bcb Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Fri, 9 Jan 2026 11:56:09 -0800 Subject: [PATCH 22/30] Remove pattern default from MarkItDown reader --- packages/graphrag-input/graphrag_input/markitdown.py | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/packages/graphrag-input/graphrag_input/markitdown.py b/packages/graphrag-input/graphrag_input/markitdown.py index 20b34c4b5d..a1b5be5e41 100644 --- a/packages/graphrag-input/graphrag_input/markitdown.py +++ b/packages/graphrag-input/graphrag_input/markitdown.py @@ -21,13 +21,7 @@ class MarkItDownFileReader(InputReader): https://github.com/microsoft/markitdown """ - - def __init__(self, file_pattern: str | None = None, **kwargs): - super().__init__( - file_pattern=file_pattern if file_pattern is not None else ".*\\.txt$", - **kwargs, - ) - + async def read_file(self, path: str) -> list[TextDocument]: """Read a text file into a DataFrame of documents. From e19501d9370514d69d3a926c54add555641a133f Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Fri, 9 Jan 2026 11:57:06 -0800 Subject: [PATCH 23/30] Remove plugins flag (implicit disabled) --- packages/graphrag-input/graphrag_input/markitdown.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/graphrag-input/graphrag_input/markitdown.py b/packages/graphrag-input/graphrag_input/markitdown.py index a1b5be5e41..466a2ebdd9 100644 --- a/packages/graphrag-input/graphrag_input/markitdown.py +++ b/packages/graphrag-input/graphrag_input/markitdown.py @@ -21,7 +21,7 @@ class MarkItDownFileReader(InputReader): https://github.com/microsoft/markitdown """ - + async def read_file(self, path: str) -> list[TextDocument]: """Read a text file into a DataFrame of documents. @@ -33,7 +33,7 @@ async def read_file(self, path: str) -> list[TextDocument]: - output - list with a TextDocument for each row in the file. """ bytes = await self._storage.get(path, encoding=self._encoding, as_bytes=True) - md = MarkItDown(enable_plugins=False) + md = MarkItDown() result = md.convert_stream( BytesIO(bytes), stream_info=StreamInfo(extension=Path(path).suffix) ) From 6fba8d005a0fbeae15ba854f4186cae0f193cc08 Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Fri, 9 Jan 2026 12:02:35 -0800 Subject: [PATCH 24/30] Format --- tests/unit/indexing/input/test_markitdown_loader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/unit/indexing/input/test_markitdown_loader.py b/tests/unit/indexing/input/test_markitdown_loader.py index 846d7f00d0..d6755d41c4 100644 --- a/tests/unit/indexing/input/test_markitdown_loader.py +++ b/tests/unit/indexing/input/test_markitdown_loader.py @@ -22,4 +22,4 @@ async def test_markitdown_loader_one_file(): # markitdown will extract the title and body from the HTML if present and clean them assert documents[0].title == "Test" assert documents[0].text == "Hi how are you today?" - assert documents[0].raw_data is None \ No newline at end of file + assert documents[0].raw_data is None From c974970e839d1a91ed2802b417d4334d8ee9e4fb Mon Sep 17 00:00:00 2001 From: Nathan Evans Date: Fri, 9 Jan 2026 15:33:18 -0800 Subject: [PATCH 25/30] Update verb tests --- .../graphrag/graphrag/data_model/schemas.py | 4 ++-- .../graphrag/index/operations/prune_graph.py | 3 ++- .../index/workflows/create_final_documents.py | 3 --- .../graphrag/index/workflows/prune_graph.py | 1 + tests/unit/chunking/test_chunker.py | 2 +- tests/verbs/data/communities.parquet | Bin 39880 -> 71503 bytes tests/verbs/data/community_reports.parquet | Bin 334388 -> 894887 bytes tests/verbs/data/covariates.parquet | Bin 70374 -> 137091 bytes tests/verbs/data/documents.parquet | Bin 126826 -> 125443 bytes tests/verbs/data/entities.parquet | Bin 60987 -> 119565 bytes tests/verbs/data/relationships.parquet | Bin 73213 -> 126576 bytes tests/verbs/data/text_units.parquet | Bin 163602 -> 202236 bytes tests/verbs/data/text_units_metadata.parquet | Bin 163313 -> 0 bytes ...text_units_metadata_included_chunk.parquet | Bin 163634 -> 0 bytes tests/verbs/test_create_base_text_units.py | 21 +++++++----------- tests/verbs/test_create_final_documents.py | 19 ---------------- tests/verbs/test_prune_graph.py | 2 +- 17 files changed, 15 insertions(+), 40 deletions(-) delete mode 100644 tests/verbs/data/text_units_metadata.parquet delete mode 100644 tests/verbs/data/text_units_metadata_included_chunk.parquet diff --git a/packages/graphrag/graphrag/data_model/schemas.py b/packages/graphrag/graphrag/data_model/schemas.py index 93ede46191..c0926b9bb7 100644 --- a/packages/graphrag/graphrag/data_model/schemas.py +++ b/packages/graphrag/graphrag/data_model/schemas.py @@ -64,7 +64,7 @@ N_TOKENS = "n_tokens" CREATION_DATE = "creation_date" -METADATA = "metadata" +RAW_DATA = "raw_data" # the following lists define the final content and ordering of columns in the data model parquet outputs ENTITIES_FINAL_COLUMNS = [ @@ -155,5 +155,5 @@ TEXT, TEXT_UNIT_IDS, CREATION_DATE, - METADATA, + RAW_DATA, ] diff --git a/packages/graphrag/graphrag/index/operations/prune_graph.py b/packages/graphrag/graphrag/index/operations/prune_graph.py index 6eb6b60065..11a5335b4e 100644 --- a/packages/graphrag/graphrag/index/operations/prune_graph.py +++ b/packages/graphrag/graphrag/index/operations/prune_graph.py @@ -50,7 +50,8 @@ def prune_graph( graph.remove_nodes_from([ node for node, data in graph.nodes(data=True) - if data[schemas.NODE_FREQUENCY] < min_node_freq + if schemas.NODE_FREQUENCY not in data + or data[schemas.NODE_FREQUENCY] < min_node_freq ]) if max_node_freq_std is not None: upper_threshold = _get_upper_threshold_by_std( diff --git a/packages/graphrag/graphrag/index/workflows/create_final_documents.py b/packages/graphrag/graphrag/index/workflows/create_final_documents.py index f12560bab6..3b86b59620 100644 --- a/packages/graphrag/graphrag/index/workflows/create_final_documents.py +++ b/packages/graphrag/graphrag/index/workflows/create_final_documents.py @@ -67,7 +67,4 @@ def create_final_documents( rejoined["id"] = rejoined["id"].astype(str) rejoined["human_readable_id"] = rejoined.index - if "metadata" not in rejoined.columns: - rejoined["metadata"] = pd.Series(dtype="object") - return rejoined.loc[:, DOCUMENTS_FINAL_COLUMNS] diff --git a/packages/graphrag/graphrag/index/workflows/prune_graph.py b/packages/graphrag/graphrag/index/workflows/prune_graph.py index da4e2bc835..5653eef49b 100644 --- a/packages/graphrag/graphrag/index/workflows/prune_graph.py +++ b/packages/graphrag/graphrag/index/workflows/prune_graph.py @@ -58,6 +58,7 @@ def prune_graph( """Prune a full graph based on graph statistics.""" # create a temporary graph to prune, then turn it back into dataframes graph = create_graph(relationships, edge_attr=["weight"], nodes=entities) + pruned = prune_graph_operation( graph, min_node_freq=pruning_config.min_node_freq, diff --git a/tests/unit/chunking/test_chunker.py b/tests/unit/chunking/test_chunker.py index 4dbefa4cf3..dd68b0ab6f 100644 --- a/tests/unit/chunking/test_chunker.py +++ b/tests/unit/chunking/test_chunker.py @@ -27,7 +27,7 @@ def setup_method(self, method): bootstrap() def test_basic_functionality(self): - """Test basic sentence splitting without metadata""" + """Test basic sentence splitting""" input = "This is a test. Another sentence. And a third one!" chunker = create_chunker(ChunkingConfig(type=ChunkerType.Sentence)) chunks = chunker.chunk(input) diff --git a/tests/verbs/data/communities.parquet b/tests/verbs/data/communities.parquet index d85403d6b6f4f4e9a344b6992442392ef1ba7917..76f255886c8ec541491574439fab82de91355ef4 100644 GIT binary patch literal 71503 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�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 literal 39880 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

?}|5 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

9L;lr+gUKL%)rPW>k0S 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

oYH`U3&Xc*P8NXnj*&fC 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 literal 334388 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