elasticsearch 9.1.0__py3-none-any.whl → 9.1.2__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. elasticsearch/_async/client/__init__.py +21 -6
  2. elasticsearch/_async/client/cat.py +1091 -51
  3. elasticsearch/_async/client/cluster.py +7 -2
  4. elasticsearch/_async/client/connector.py +3 -3
  5. elasticsearch/_async/client/esql.py +20 -6
  6. elasticsearch/_async/client/indices.py +27 -13
  7. elasticsearch/_async/client/inference.py +16 -5
  8. elasticsearch/_async/client/logstash.py +3 -1
  9. elasticsearch/_async/client/nodes.py +2 -2
  10. elasticsearch/_async/client/shutdown.py +5 -15
  11. elasticsearch/_async/client/sql.py +1 -1
  12. elasticsearch/_async/client/streams.py +186 -0
  13. elasticsearch/_async/client/transform.py +60 -0
  14. elasticsearch/_async/client/watcher.py +1 -5
  15. elasticsearch/_async/helpers.py +58 -9
  16. elasticsearch/_sync/client/__init__.py +21 -6
  17. elasticsearch/_sync/client/cat.py +1091 -51
  18. elasticsearch/_sync/client/cluster.py +7 -2
  19. elasticsearch/_sync/client/connector.py +3 -3
  20. elasticsearch/_sync/client/esql.py +20 -6
  21. elasticsearch/_sync/client/indices.py +27 -13
  22. elasticsearch/_sync/client/inference.py +16 -5
  23. elasticsearch/_sync/client/logstash.py +3 -1
  24. elasticsearch/_sync/client/nodes.py +2 -2
  25. elasticsearch/_sync/client/shutdown.py +5 -15
  26. elasticsearch/_sync/client/sql.py +1 -1
  27. elasticsearch/_sync/client/streams.py +186 -0
  28. elasticsearch/_sync/client/transform.py +60 -0
  29. elasticsearch/_sync/client/watcher.py +1 -5
  30. elasticsearch/_version.py +2 -1
  31. elasticsearch/client.py +2 -0
  32. elasticsearch/compat.py +43 -1
  33. elasticsearch/dsl/__init__.py +28 -0
  34. elasticsearch/dsl/_async/document.py +84 -0
  35. elasticsearch/dsl/_sync/document.py +84 -0
  36. elasticsearch/dsl/aggs.py +97 -0
  37. elasticsearch/dsl/document_base.py +57 -0
  38. elasticsearch/dsl/field.py +43 -11
  39. elasticsearch/dsl/query.py +5 -1
  40. elasticsearch/dsl/response/__init__.py +3 -0
  41. elasticsearch/dsl/response/aggs.py +1 -1
  42. elasticsearch/dsl/types.py +273 -24
  43. elasticsearch/dsl/utils.py +1 -1
  44. elasticsearch/esql/__init__.py +2 -1
  45. elasticsearch/esql/esql.py +85 -34
  46. elasticsearch/esql/functions.py +37 -25
  47. elasticsearch/helpers/__init__.py +10 -1
  48. elasticsearch/helpers/actions.py +106 -33
  49. {elasticsearch-9.1.0.dist-info → elasticsearch-9.1.2.dist-info}/METADATA +2 -4
  50. {elasticsearch-9.1.0.dist-info → elasticsearch-9.1.2.dist-info}/RECORD +53 -52
  51. elasticsearch/esql/esql1.py1 +0 -307
  52. {elasticsearch-9.1.0.dist-info → elasticsearch-9.1.2.dist-info}/WHEEL +0 -0
  53. {elasticsearch-9.1.0.dist-info → elasticsearch-9.1.2.dist-info}/licenses/LICENSE +0 -0
  54. {elasticsearch-9.1.0.dist-info → elasticsearch-9.1.2.dist-info}/licenses/NOTICE +0 -0
@@ -144,12 +144,30 @@ class ChiSquareHeuristic(AttrDict[Any]):
144
144
 
145
145
  class ChunkingSettings(AttrDict[Any]):
146
146
  """
147
- :arg strategy: (required) The chunking strategy: `sentence` or `word`.
148
- Defaults to `sentence` if omitted.
147
+ :arg strategy: (required) The chunking strategy: `sentence`, `word`,
148
+ `none` or `recursive`. * If `strategy` is set to `recursive`,
149
+ you must also specify: - `max_chunk_size` - either `separators`
150
+ or`separator_group` Learn more about different chunking
151
+ strategies in the linked documentation. Defaults to `sentence` if
152
+ omitted.
149
153
  :arg max_chunk_size: (required) The maximum size of a chunk in words.
150
- This value cannot be higher than `300` or lower than `20` (for
151
- `sentence` strategy) or `10` (for `word` strategy). Defaults to
152
- `250` if omitted.
154
+ This value cannot be lower than `20` (for `sentence` strategy) or
155
+ `10` (for `word` strategy). This value should not exceed the
156
+ window size for the associated model. Defaults to `250` if
157
+ omitted.
158
+ :arg separator_group: Only applicable to the `recursive` strategy and
159
+ required when using it. Sets a predefined list of separators in
160
+ the saved chunking settings based on the selected text type.
161
+ Values can be `markdown` or `plaintext`. Using this parameter is
162
+ an alternative to manually specifying a custom `separators` list.
163
+ :arg separators: Only applicable to the `recursive` strategy and
164
+ required when using it. A list of strings used as possible split
165
+ points when chunking text. Each string can be a plain string or a
166
+ regular expression (regex) pattern. The system tries each
167
+ separator in order to split the text, starting from the first item
168
+ in the list. After splitting, it attempts to recombine smaller
169
+ pieces into larger chunks that stay within the `max_chunk_size`
170
+ limit, to reduce the total number of chunks generated.
153
171
  :arg overlap: The number of overlapping words for chunks. It is
154
172
  applicable only to a `word` chunking strategy. This value cannot
155
173
  be higher than half the `max_chunk_size` value. Defaults to `100`
@@ -161,6 +179,8 @@ class ChunkingSettings(AttrDict[Any]):
161
179
 
162
180
  strategy: Union[str, DefaultType]
163
181
  max_chunk_size: Union[int, DefaultType]
182
+ separator_group: Union[str, DefaultType]
183
+ separators: Union[Sequence[str], DefaultType]
164
184
  overlap: Union[int, DefaultType]
165
185
  sentence_overlap: Union[int, DefaultType]
166
186
 
@@ -169,6 +189,8 @@ class ChunkingSettings(AttrDict[Any]):
169
189
  *,
170
190
  strategy: Union[str, DefaultType] = DEFAULT,
171
191
  max_chunk_size: Union[int, DefaultType] = DEFAULT,
192
+ separator_group: Union[str, DefaultType] = DEFAULT,
193
+ separators: Union[Sequence[str], DefaultType] = DEFAULT,
172
194
  overlap: Union[int, DefaultType] = DEFAULT,
173
195
  sentence_overlap: Union[int, DefaultType] = DEFAULT,
174
196
  **kwargs: Any,
@@ -177,6 +199,10 @@ class ChunkingSettings(AttrDict[Any]):
177
199
  kwargs["strategy"] = strategy
178
200
  if max_chunk_size is not DEFAULT:
179
201
  kwargs["max_chunk_size"] = max_chunk_size
202
+ if separator_group is not DEFAULT:
203
+ kwargs["separator_group"] = separator_group
204
+ if separators is not DEFAULT:
205
+ kwargs["separators"] = separators
180
206
  if overlap is not DEFAULT:
181
207
  kwargs["overlap"] = overlap
182
208
  if sentence_overlap is not DEFAULT:
@@ -372,14 +398,17 @@ class DenseVectorIndexOptions(AttrDict[Any]):
372
398
  HNSW graph. Only applicable to `hnsw`, `int8_hnsw`, `bbq_hnsw`,
373
399
  and `int4_hnsw` index types. Defaults to `16` if omitted.
374
400
  :arg rescore_vector: The rescore vector options. This is only
375
- applicable to `bbq_hnsw`, `int4_hnsw`, `int8_hnsw`, `bbq_flat`,
376
- `int4_flat`, and `int8_flat` index types.
401
+ applicable to `bbq_disk`, `bbq_hnsw`, `int4_hnsw`, `int8_hnsw`,
402
+ `bbq_flat`, `int4_flat`, and `int8_flat` index types.
403
+ :arg on_disk_rescore: `true` if vector rescoring should be done on-
404
+ disk Only applicable to `bbq_hnsw`
377
405
  """
378
406
 
379
407
  type: Union[
380
408
  Literal[
381
409
  "bbq_flat",
382
410
  "bbq_hnsw",
411
+ "bbq_disk",
383
412
  "flat",
384
413
  "hnsw",
385
414
  "int4_flat",
@@ -395,6 +424,7 @@ class DenseVectorIndexOptions(AttrDict[Any]):
395
424
  rescore_vector: Union[
396
425
  "DenseVectorIndexOptionsRescoreVector", Dict[str, Any], DefaultType
397
426
  ]
427
+ on_disk_rescore: Union[bool, DefaultType]
398
428
 
399
429
  def __init__(
400
430
  self,
@@ -403,6 +433,7 @@ class DenseVectorIndexOptions(AttrDict[Any]):
403
433
  Literal[
404
434
  "bbq_flat",
405
435
  "bbq_hnsw",
436
+ "bbq_disk",
406
437
  "flat",
407
438
  "hnsw",
408
439
  "int4_flat",
@@ -418,6 +449,7 @@ class DenseVectorIndexOptions(AttrDict[Any]):
418
449
  rescore_vector: Union[
419
450
  "DenseVectorIndexOptionsRescoreVector", Dict[str, Any], DefaultType
420
451
  ] = DEFAULT,
452
+ on_disk_rescore: Union[bool, DefaultType] = DEFAULT,
421
453
  **kwargs: Any,
422
454
  ):
423
455
  if type is not DEFAULT:
@@ -430,6 +462,8 @@ class DenseVectorIndexOptions(AttrDict[Any]):
430
462
  kwargs["m"] = m
431
463
  if rescore_vector is not DEFAULT:
432
464
  kwargs["rescore_vector"] = rescore_vector
465
+ if on_disk_rescore is not DEFAULT:
466
+ kwargs["on_disk_rescore"] = on_disk_rescore
433
467
  super().__init__(kwargs)
434
468
 
435
469
 
@@ -2301,9 +2335,7 @@ class LikeDocument(AttrDict[Any]):
2301
2335
  per_field_analyzer: Union[Mapping[Union[str, InstrumentedField], str], DefaultType]
2302
2336
  routing: Union[str, DefaultType]
2303
2337
  version: Union[int, DefaultType]
2304
- version_type: Union[
2305
- Literal["internal", "external", "external_gte", "force"], DefaultType
2306
- ]
2338
+ version_type: Union[Literal["internal", "external", "external_gte"], DefaultType]
2307
2339
 
2308
2340
  def __init__(
2309
2341
  self,
@@ -2318,7 +2350,7 @@ class LikeDocument(AttrDict[Any]):
2318
2350
  routing: Union[str, DefaultType] = DEFAULT,
2319
2351
  version: Union[int, DefaultType] = DEFAULT,
2320
2352
  version_type: Union[
2321
- Literal["internal", "external", "external_gte", "force"], DefaultType
2353
+ Literal["internal", "external", "external_gte"], DefaultType
2322
2354
  ] = DEFAULT,
2323
2355
  **kwargs: Any,
2324
2356
  ):
@@ -2749,6 +2781,31 @@ class NumericFielddata(AttrDict[Any]):
2749
2781
  super().__init__(kwargs)
2750
2782
 
2751
2783
 
2784
+ class PValueHeuristic(AttrDict[Any]):
2785
+ """
2786
+ :arg background_is_superset:
2787
+ :arg normalize_above: Should the results be normalized when above the
2788
+ given value. Allows for consistent significance results at various
2789
+ scales. Note: `0` is a special value which means no normalization
2790
+ """
2791
+
2792
+ background_is_superset: Union[bool, DefaultType]
2793
+ normalize_above: Union[int, DefaultType]
2794
+
2795
+ def __init__(
2796
+ self,
2797
+ *,
2798
+ background_is_superset: Union[bool, DefaultType] = DEFAULT,
2799
+ normalize_above: Union[int, DefaultType] = DEFAULT,
2800
+ **kwargs: Any,
2801
+ ):
2802
+ if background_is_superset is not DEFAULT:
2803
+ kwargs["background_is_superset"] = background_is_superset
2804
+ if normalize_above is not DEFAULT:
2805
+ kwargs["normalize_above"] = normalize_above
2806
+ super().__init__(kwargs)
2807
+
2808
+
2752
2809
  class PercentageScoreHeuristic(AttrDict[Any]):
2753
2810
  pass
2754
2811
 
@@ -3139,6 +3196,33 @@ class ScriptedHeuristic(AttrDict[Any]):
3139
3196
  super().__init__(kwargs)
3140
3197
 
3141
3198
 
3199
+ class SemanticTextIndexOptions(AttrDict[Any]):
3200
+ """
3201
+ :arg dense_vector:
3202
+ :arg sparse_vector:
3203
+ """
3204
+
3205
+ dense_vector: Union["DenseVectorIndexOptions", Dict[str, Any], DefaultType]
3206
+ sparse_vector: Union["SparseVectorIndexOptions", Dict[str, Any], DefaultType]
3207
+
3208
+ def __init__(
3209
+ self,
3210
+ *,
3211
+ dense_vector: Union[
3212
+ "DenseVectorIndexOptions", Dict[str, Any], DefaultType
3213
+ ] = DEFAULT,
3214
+ sparse_vector: Union[
3215
+ "SparseVectorIndexOptions", Dict[str, Any], DefaultType
3216
+ ] = DEFAULT,
3217
+ **kwargs: Any,
3218
+ ):
3219
+ if dense_vector is not DEFAULT:
3220
+ kwargs["dense_vector"] = dense_vector
3221
+ if sparse_vector is not DEFAULT:
3222
+ kwargs["sparse_vector"] = sparse_vector
3223
+ super().__init__(kwargs)
3224
+
3225
+
3142
3226
  class ShapeFieldQuery(AttrDict[Any]):
3143
3227
  """
3144
3228
  :arg indexed_shape: Queries using a pre-indexed shape.
@@ -3984,24 +4068,25 @@ class TestPopulation(AttrDict[Any]):
3984
4068
 
3985
4069
  class TextEmbedding(AttrDict[Any]):
3986
4070
  """
3987
- :arg model_id: (required)
3988
4071
  :arg model_text: (required)
4072
+ :arg model_id: Model ID is required for all dense_vector fields but
4073
+ may be inferred for semantic_text fields
3989
4074
  """
3990
4075
 
3991
- model_id: Union[str, DefaultType]
3992
4076
  model_text: Union[str, DefaultType]
4077
+ model_id: Union[str, DefaultType]
3993
4078
 
3994
4079
  def __init__(
3995
4080
  self,
3996
4081
  *,
3997
- model_id: Union[str, DefaultType] = DEFAULT,
3998
4082
  model_text: Union[str, DefaultType] = DEFAULT,
4083
+ model_id: Union[str, DefaultType] = DEFAULT,
3999
4084
  **kwargs: Any,
4000
4085
  ):
4001
- if model_id is not DEFAULT:
4002
- kwargs["model_id"] = model_id
4003
4086
  if model_text is not DEFAULT:
4004
4087
  kwargs["model_text"] = model_text
4088
+ if model_id is not DEFAULT:
4089
+ kwargs["model_id"] = model_id
4005
4090
  super().__init__(kwargs)
4006
4091
 
4007
4092
 
@@ -4523,7 +4608,7 @@ class ArrayPercentilesItem(AttrDict[Any]):
4523
4608
  :arg value_as_string:
4524
4609
  """
4525
4610
 
4526
- key: str
4611
+ key: float
4527
4612
  value: Union[float, None]
4528
4613
  value_as_string: str
4529
4614
 
@@ -4634,6 +4719,82 @@ class CardinalityAggregate(AttrDict[Any]):
4634
4719
  meta: Mapping[str, Any]
4635
4720
 
4636
4721
 
4722
+ class CartesianBoundsAggregate(AttrDict[Any]):
4723
+ """
4724
+ :arg bounds:
4725
+ :arg meta:
4726
+ """
4727
+
4728
+ bounds: "TopLeftBottomRightGeoBounds"
4729
+ meta: Mapping[str, Any]
4730
+
4731
+
4732
+ class CartesianCentroidAggregate(AttrDict[Any]):
4733
+ """
4734
+ :arg count: (required)
4735
+ :arg location:
4736
+ :arg meta:
4737
+ """
4738
+
4739
+ count: int
4740
+ location: "CartesianPoint"
4741
+ meta: Mapping[str, Any]
4742
+
4743
+
4744
+ class CartesianPoint(AttrDict[Any]):
4745
+ """
4746
+ :arg x: (required)
4747
+ :arg y: (required)
4748
+ """
4749
+
4750
+ x: float
4751
+ y: float
4752
+
4753
+
4754
+ class ChangePointAggregate(AttrDict[Any]):
4755
+ """
4756
+ :arg type: (required)
4757
+ :arg bucket:
4758
+ :arg meta:
4759
+ """
4760
+
4761
+ type: "ChangeType"
4762
+ bucket: "ChangePointBucket"
4763
+ meta: Mapping[str, Any]
4764
+
4765
+
4766
+ class ChangePointBucket(AttrDict[Any]):
4767
+ """
4768
+ :arg key: (required)
4769
+ :arg doc_count: (required)
4770
+ """
4771
+
4772
+ key: Union[int, float, str, bool, None]
4773
+ doc_count: int
4774
+
4775
+
4776
+ class ChangeType(AttrDict[Any]):
4777
+ """
4778
+ :arg dip:
4779
+ :arg distribution_change:
4780
+ :arg indeterminable:
4781
+ :arg non_stationary:
4782
+ :arg spike:
4783
+ :arg stationary:
4784
+ :arg step_change:
4785
+ :arg trend_change:
4786
+ """
4787
+
4788
+ dip: "Dip"
4789
+ distribution_change: "DistributionChange"
4790
+ indeterminable: "Indeterminable"
4791
+ non_stationary: "NonStationary"
4792
+ spike: "Spike"
4793
+ stationary: "Stationary"
4794
+ step_change: "StepChange"
4795
+ trend_change: "TrendChange"
4796
+
4797
+
4637
4798
  class ChildrenAggregate(AttrDict[Any]):
4638
4799
  """
4639
4800
  :arg doc_count: (required)
@@ -4911,6 +5072,26 @@ class DfsStatisticsProfile(AttrDict[Any]):
4911
5072
  children: Sequence["DfsStatisticsProfile"]
4912
5073
 
4913
5074
 
5075
+ class Dip(AttrDict[Any]):
5076
+ """
5077
+ :arg p_value: (required)
5078
+ :arg change_point: (required)
5079
+ """
5080
+
5081
+ p_value: float
5082
+ change_point: int
5083
+
5084
+
5085
+ class DistributionChange(AttrDict[Any]):
5086
+ """
5087
+ :arg p_value: (required)
5088
+ :arg change_point: (required)
5089
+ """
5090
+
5091
+ p_value: float
5092
+ change_point: int
5093
+
5094
+
4914
5095
  class DoubleTermsAggregate(AttrDict[Any]):
4915
5096
  """
4916
5097
  Result of a `terms` aggregation when the field is some kind of decimal
@@ -5369,7 +5550,9 @@ class HdrPercentileRanksAggregate(AttrDict[Any]):
5369
5550
  :arg meta:
5370
5551
  """
5371
5552
 
5372
- values: Union[Mapping[str, Union[str, int, None]], Sequence["ArrayPercentilesItem"]]
5553
+ values: Union[
5554
+ Mapping[str, Union[str, float, None]], Sequence["ArrayPercentilesItem"]
5555
+ ]
5373
5556
  meta: Mapping[str, Any]
5374
5557
 
5375
5558
 
@@ -5379,7 +5562,9 @@ class HdrPercentilesAggregate(AttrDict[Any]):
5379
5562
  :arg meta:
5380
5563
  """
5381
5564
 
5382
- values: Union[Mapping[str, Union[str, int, None]], Sequence["ArrayPercentilesItem"]]
5565
+ values: Union[
5566
+ Mapping[str, Union[str, float, None]], Sequence["ArrayPercentilesItem"]
5567
+ ]
5383
5568
  meta: Mapping[str, Any]
5384
5569
 
5385
5570
 
@@ -5468,6 +5653,14 @@ class HitsMetadata(AttrDict[Any]):
5468
5653
  max_score: Union[float, None]
5469
5654
 
5470
5655
 
5656
+ class Indeterminable(AttrDict[Any]):
5657
+ """
5658
+ :arg reason: (required)
5659
+ """
5660
+
5661
+ reason: str
5662
+
5663
+
5471
5664
  class InferenceAggregate(AttrDict[Any]):
5472
5665
  """
5473
5666
  :arg value:
@@ -5870,6 +6063,18 @@ class NestedIdentity(AttrDict[Any]):
5870
6063
  _nested: "NestedIdentity"
5871
6064
 
5872
6065
 
6066
+ class NonStationary(AttrDict[Any]):
6067
+ """
6068
+ :arg p_value: (required)
6069
+ :arg r_value: (required)
6070
+ :arg trend: (required)
6071
+ """
6072
+
6073
+ p_value: float
6074
+ r_value: float
6075
+ trend: str
6076
+
6077
+
5873
6078
  class ParentAggregate(AttrDict[Any]):
5874
6079
  """
5875
6080
  :arg doc_count: (required)
@@ -5886,7 +6091,9 @@ class PercentilesBucketAggregate(AttrDict[Any]):
5886
6091
  :arg meta:
5887
6092
  """
5888
6093
 
5889
- values: Union[Mapping[str, Union[str, int, None]], Sequence["ArrayPercentilesItem"]]
6094
+ values: Union[
6095
+ Mapping[str, Union[str, float, None]], Sequence["ArrayPercentilesItem"]
6096
+ ]
5890
6097
  meta: Mapping[str, Any]
5891
6098
 
5892
6099
 
@@ -6087,17 +6294,19 @@ class SearchProfile(AttrDict[Any]):
6087
6294
  class ShardFailure(AttrDict[Any]):
6088
6295
  """
6089
6296
  :arg reason: (required)
6090
- :arg shard: (required)
6091
6297
  :arg index:
6092
6298
  :arg node:
6299
+ :arg shard:
6093
6300
  :arg status:
6301
+ :arg primary:
6094
6302
  """
6095
6303
 
6096
6304
  reason: "ErrorCause"
6097
- shard: int
6098
6305
  index: str
6099
6306
  node: str
6307
+ shard: int
6100
6308
  status: str
6309
+ primary: bool
6101
6310
 
6102
6311
 
6103
6312
  class ShardProfile(AttrDict[Any]):
@@ -6223,6 +6432,16 @@ class SimpleValueAggregate(AttrDict[Any]):
6223
6432
  meta: Mapping[str, Any]
6224
6433
 
6225
6434
 
6435
+ class Spike(AttrDict[Any]):
6436
+ """
6437
+ :arg p_value: (required)
6438
+ :arg change_point: (required)
6439
+ """
6440
+
6441
+ p_value: float
6442
+ change_point: int
6443
+
6444
+
6226
6445
  class StandardDeviationBounds(AttrDict[Any]):
6227
6446
  """
6228
6447
  :arg upper: (required)
@@ -6259,6 +6478,10 @@ class StandardDeviationBoundsAsString(AttrDict[Any]):
6259
6478
  lower_sampling: str
6260
6479
 
6261
6480
 
6481
+ class Stationary(AttrDict[Any]):
6482
+ pass
6483
+
6484
+
6262
6485
  class StatsAggregate(AttrDict[Any]):
6263
6486
  """
6264
6487
  Statistics aggregation result. `min`, `max` and `avg` are missing if
@@ -6314,6 +6537,16 @@ class StatsBucketAggregate(AttrDict[Any]):
6314
6537
  meta: Mapping[str, Any]
6315
6538
 
6316
6539
 
6540
+ class StepChange(AttrDict[Any]):
6541
+ """
6542
+ :arg p_value: (required)
6543
+ :arg change_point: (required)
6544
+ """
6545
+
6546
+ p_value: float
6547
+ change_point: int
6548
+
6549
+
6317
6550
  class StringRareTermsAggregate(AttrDict[Any]):
6318
6551
  """
6319
6552
  Result of the `rare_terms` aggregation when the field is a string.
@@ -6421,7 +6654,9 @@ class TDigestPercentileRanksAggregate(AttrDict[Any]):
6421
6654
  :arg meta:
6422
6655
  """
6423
6656
 
6424
- values: Union[Mapping[str, Union[str, int, None]], Sequence["ArrayPercentilesItem"]]
6657
+ values: Union[
6658
+ Mapping[str, Union[str, float, None]], Sequence["ArrayPercentilesItem"]
6659
+ ]
6425
6660
  meta: Mapping[str, Any]
6426
6661
 
6427
6662
 
@@ -6431,7 +6666,9 @@ class TDigestPercentilesAggregate(AttrDict[Any]):
6431
6666
  :arg meta:
6432
6667
  """
6433
6668
 
6434
- values: Union[Mapping[str, Union[str, int, None]], Sequence["ArrayPercentilesItem"]]
6669
+ values: Union[
6670
+ Mapping[str, Union[str, float, None]], Sequence["ArrayPercentilesItem"]
6671
+ ]
6435
6672
  meta: Mapping[str, Any]
6436
6673
 
6437
6674
 
@@ -6541,6 +6778,18 @@ class TotalHits(AttrDict[Any]):
6541
6778
  value: int
6542
6779
 
6543
6780
 
6781
+ class TrendChange(AttrDict[Any]):
6782
+ """
6783
+ :arg p_value: (required)
6784
+ :arg r_value: (required)
6785
+ :arg change_point: (required)
6786
+ """
6787
+
6788
+ p_value: float
6789
+ r_value: float
6790
+ change_point: int
6791
+
6792
+
6544
6793
  class UnmappedRareTermsAggregate(AttrDict[Any]):
6545
6794
  """
6546
6795
  Result of a `rare_terms` aggregation when the field is unmapped.
@@ -603,7 +603,7 @@ class ObjectBase(AttrDict[Any]):
603
603
  # if this is a mapped field,
604
604
  f = self.__get_field(k)
605
605
  if f and f._coerce:
606
- v = f.serialize(v)
606
+ v = f.serialize(v, skip_empty=skip_empty)
607
607
 
608
608
  # if someone assigned AttrList, unwrap it
609
609
  if isinstance(v, AttrList):
@@ -15,4 +15,5 @@
15
15
  # specific language governing permissions and limitations
16
16
  # under the License.
17
17
 
18
- from .esql import ESQL, and_, not_, or_ # noqa: F401
18
+ from ..dsl import E # noqa: F401
19
+ from .esql import ESQL, ESQLBase, and_, not_, or_ # noqa: F401