{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/eidolon-resource/_shared/latest--PythonCodeTextSplitter.json",
  "title": "PythonCodeTextSplitter",
  "x-lintel": {
    "source": "https://www.eidolonai.com/json_schema/v1/schemas/DocumentTransformer/PythonCodeTextSplitter.json",
    "sourceSha256": "032234b93bbadb23a6ea779db9cb5963872d1adc2a817c81e44926fe3362a27d"
  },
  "type": "object",
  "properties": {
    "implementation": {
      "const": "PythonCodeTextSplitter",
      "title": "Implementation"
    },
    "chunk_size": {
      "default": 4000,
      "description": "Maximum size of chunks to return",
      "title": "Chunk Size",
      "type": "integer"
    },
    "chunk_overlap": {
      "default": 200,
      "description": "Overlap in characters between chunks",
      "title": "Chunk Overlap",
      "type": "integer"
    },
    "keep_separator": {
      "default": false,
      "description": "Whether to keep the separator in the chunks",
      "title": "Keep Separator",
      "type": "boolean"
    },
    "strip_whitespace": {
      "default": true,
      "description": "If `True`, strips whitespace from the start and end of every document",
      "title": "Strip Whitespace",
      "type": "boolean"
    },
    "separators": {
      "anyOf": [
        {
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "description": "Separators to split on",
      "title": "Separators"
    },
    "is_separator_regex": {
      "default": false,
      "description": "Whether the separator is a regex",
      "title": "Is Separator Regex",
      "type": "boolean"
    }
  },
  "additionalProperties": false,
  "required": [
    "implementation"
  ],
  "reference_details": {
    "clz": "eidolon_ai_sdk.agent.doc_manager.transformer.text_splitters.PythonCodeTextSplitter",
    "groups": [
      "DocumentTransformer"
    ],
    "name": "PythonCodeTextSplitter",
    "overrides": {}
  }
}
