weave-python 0.26.1__py3-none-any.whl → 0.27.0__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 (62) hide show
  1. weave/weaveapi/auth/v1/service_pb2.py +228 -0
  2. weave/weaveapi/auth/v1/service_pb2.pyi +1406 -0
  3. weave/weaveapi/auth/v1/service_pb2_grpc.py +1091 -0
  4. weave/weaveapi/auth/v1/service_pb2_grpc.pyi +606 -0
  5. weave/weaveapi/auth/v1/session_pb2.py +38 -0
  6. weave/weaveapi/auth/v1/session_pb2.pyi +111 -0
  7. weave/weaveapi/auth/v1/session_pb2_grpc.py +2 -0
  8. weave/weaveapi/auth/v1/session_pb2_grpc.pyi +20 -0
  9. weave/weaveapi/auth/v1/usage_pb2.py +52 -0
  10. weave/weaveapi/auth/v1/usage_pb2.pyi +241 -0
  11. weave/weaveapi/auth/v1/usage_pb2_grpc.py +2 -0
  12. weave/weaveapi/auth/v1/usage_pb2_grpc.pyi +20 -0
  13. weave/weaveapi/auth/v1/user_pb2.py +52 -0
  14. weave/weaveapi/auth/v1/user_pb2.pyi +594 -0
  15. weave/weaveapi/auth/v1/user_pb2_grpc.py +2 -0
  16. weave/weaveapi/auth/v1/user_pb2_grpc.pyi +20 -0
  17. weave/weaveapi/generate/v1/configuration_pb2.py +3 -3
  18. weave/weaveapi/generate/v1/generate_pb2.py +2 -2
  19. weave/weaveapi/generate/v1/service_pb2.py +2 -2
  20. weave/weaveapi/mcpregistry/v1/server_pb2.py +2 -2
  21. weave/weaveapi/mcpregistry/v1/service_pb2.py +3 -3
  22. weave/weaveapi/modex/v1/model_pb2.py +58 -0
  23. weave/weaveapi/modex/v1/model_pb2.pyi +642 -0
  24. weave/weaveapi/modex/v1/model_pb2_grpc.py +2 -0
  25. weave/weaveapi/modex/v1/model_pb2_grpc.pyi +20 -0
  26. weave/weaveapi/modex/v1/provider_pb2.py +38 -0
  27. weave/weaveapi/modex/v1/provider_pb2.pyi +91 -0
  28. weave/weaveapi/modex/v1/provider_pb2_grpc.py +2 -0
  29. weave/weaveapi/modex/v1/provider_pb2_grpc.pyi +20 -0
  30. weave/weaveapi/modex/v1/service_pb2.py +180 -0
  31. weave/weaveapi/modex/v1/service_pb2.pyi +1641 -0
  32. weave/weaveapi/modex/v1/service_pb2_grpc.py +602 -0
  33. weave/weaveapi/modex/v1/service_pb2_grpc.pyi +268 -0
  34. weave/weaveapi/payment/v1/invoice_pb2.py +46 -0
  35. weave/weaveapi/payment/v1/invoice_pb2.pyi +349 -0
  36. weave/weaveapi/payment/v1/invoice_pb2_grpc.py +2 -0
  37. weave/weaveapi/payment/v1/invoice_pb2_grpc.pyi +20 -0
  38. weave/weaveapi/payment/v1/service_pb2.py +244 -0
  39. weave/weaveapi/payment/v1/service_pb2.pyi +1492 -0
  40. weave/weaveapi/payment/v1/service_pb2_grpc.py +957 -0
  41. weave/weaveapi/payment/v1/service_pb2_grpc.pyi +572 -0
  42. weave/weaveapi/payment/v1/subscription_pb2.py +59 -0
  43. weave/weaveapi/payment/v1/subscription_pb2.pyi +695 -0
  44. weave/weaveapi/payment/v1/subscription_pb2_grpc.py +2 -0
  45. weave/weaveapi/payment/v1/subscription_pb2_grpc.pyi +20 -0
  46. weave/weaveapi/storage/v1/auth_pb2.py +2 -2
  47. weave/weaveapi/storage/v1/nosql_database_pb2.py +3 -3
  48. weave/weaveapi/storage/v1/object_store_pb2.py +3 -3
  49. weave/weaveapi/storage/v1/service_pb2.py +2 -2
  50. weave/weaveapi/storage/v1/sql_database_pb2.py +3 -3
  51. weave/weaveapi/storage/v1/storage_pb2.py +2 -2
  52. weave/weaveapi/synthesize/v1/dataset_pb2.py +2 -2
  53. weave/weaveapi/synthesize/v1/inline_data_pb2.py +3 -3
  54. weave/weaveapi/synthesize/v1/relationship_pb2.py +3 -3
  55. weave/weaveapi/synthesize/v1/service_pb2.py +2 -2
  56. weave/weaveapi/synthesize/v1/training_pb2.py +3 -3
  57. weave/weavesql/{db → weavedb}/queries.py +1 -1
  58. {weave_python-0.26.1.dist-info → weave_python-0.27.0.dist-info}/METADATA +1 -1
  59. weave_python-0.27.0.dist-info/RECORD +109 -0
  60. weave_python-0.26.1.dist-info/RECORD +0 -69
  61. /weave/weavesql/{db → weavedb}/models.py +0 -0
  62. {weave_python-0.26.1.dist-info → weave_python-0.27.0.dist-info}/WHEEL +0 -0
@@ -0,0 +1,1641 @@
1
+ """
2
+ @generated by mypy-protobuf. Do not edit manually!
3
+ isort:skip_file
4
+ """
5
+
6
+ import builtins
7
+ import collections.abc
8
+ import google.protobuf.descriptor
9
+ import google.protobuf.internal.containers
10
+ import google.protobuf.message
11
+ import google.protobuf.timestamp_pb2
12
+ import typing
13
+ import weaveapi.modex.v1.model_pb2
14
+ import weaveapi.modex.v1.provider_pb2
15
+
16
+ DESCRIPTOR: google.protobuf.descriptor.FileDescriptor
17
+
18
+ @typing.final
19
+ class ListProvidersRequest(google.protobuf.message.Message):
20
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
21
+
22
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
23
+ PAGE_TOKEN_FIELD_NUMBER: builtins.int
24
+ ACTIVE_ONLY_FIELD_NUMBER: builtins.int
25
+ page_size: builtins.int
26
+ page_token: builtins.str
27
+ active_only: builtins.bool
28
+ def __init__(
29
+ self,
30
+ *,
31
+ page_size: builtins.int = ...,
32
+ page_token: builtins.str = ...,
33
+ active_only: builtins.bool = ...,
34
+ ) -> None: ...
35
+ def ClearField(
36
+ self,
37
+ field_name: typing.Literal[
38
+ "active_only",
39
+ b"active_only",
40
+ "page_size",
41
+ b"page_size",
42
+ "page_token",
43
+ b"page_token",
44
+ ],
45
+ ) -> None: ...
46
+
47
+ global___ListProvidersRequest = ListProvidersRequest
48
+
49
+ @typing.final
50
+ class ListProvidersResponse(google.protobuf.message.Message):
51
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
52
+
53
+ PROVIDERS_FIELD_NUMBER: builtins.int
54
+ NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
55
+ TOTAL_COUNT_FIELD_NUMBER: builtins.int
56
+ next_page_token: builtins.str
57
+ total_count: builtins.int
58
+ @property
59
+ def providers(
60
+ self,
61
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
62
+ weaveapi.modex.v1.provider_pb2.Provider
63
+ ]: ...
64
+ def __init__(
65
+ self,
66
+ *,
67
+ providers: collections.abc.Iterable[weaveapi.modex.v1.provider_pb2.Provider]
68
+ | None = ...,
69
+ next_page_token: builtins.str = ...,
70
+ total_count: builtins.int = ...,
71
+ ) -> None: ...
72
+ def ClearField(
73
+ self,
74
+ field_name: typing.Literal[
75
+ "next_page_token",
76
+ b"next_page_token",
77
+ "providers",
78
+ b"providers",
79
+ "total_count",
80
+ b"total_count",
81
+ ],
82
+ ) -> None: ...
83
+
84
+ global___ListProvidersResponse = ListProvidersResponse
85
+
86
+ @typing.final
87
+ class GetProviderRequest(google.protobuf.message.Message):
88
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
89
+
90
+ SLUG_FIELD_NUMBER: builtins.int
91
+ slug: builtins.str
92
+ """e.g., "openai" """
93
+ def __init__(
94
+ self,
95
+ *,
96
+ slug: builtins.str = ...,
97
+ ) -> None: ...
98
+ def ClearField(self, field_name: typing.Literal["slug", b"slug"]) -> None: ...
99
+
100
+ global___GetProviderRequest = GetProviderRequest
101
+
102
+ @typing.final
103
+ class GetProviderResponse(google.protobuf.message.Message):
104
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
105
+
106
+ PROVIDER_FIELD_NUMBER: builtins.int
107
+ @property
108
+ def provider(self) -> weaveapi.modex.v1.provider_pb2.Provider: ...
109
+ def __init__(
110
+ self,
111
+ *,
112
+ provider: weaveapi.modex.v1.provider_pb2.Provider | None = ...,
113
+ ) -> None: ...
114
+ def HasField(
115
+ self, field_name: typing.Literal["provider", b"provider"]
116
+ ) -> builtins.bool: ...
117
+ def ClearField(
118
+ self, field_name: typing.Literal["provider", b"provider"]
119
+ ) -> None: ...
120
+
121
+ global___GetProviderResponse = GetProviderResponse
122
+
123
+ @typing.final
124
+ class ListModelsRequest(google.protobuf.message.Message):
125
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
126
+
127
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
128
+ PAGE_TOKEN_FIELD_NUMBER: builtins.int
129
+ PROVIDER_FIELD_NUMBER: builtins.int
130
+ MODEL_TYPE_FIELD_NUMBER: builtins.int
131
+ ACTIVE_ONLY_FIELD_NUMBER: builtins.int
132
+ VISION_ONLY_FIELD_NUMBER: builtins.int
133
+ TOOL_CALLS_ONLY_FIELD_NUMBER: builtins.int
134
+ REASONING_ONLY_FIELD_NUMBER: builtins.int
135
+ OPEN_SOURCE_ONLY_FIELD_NUMBER: builtins.int
136
+ MAX_INPUT_PRICE_FIELD_NUMBER: builtins.int
137
+ MAX_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
138
+ MIN_CONTEXT_WINDOW_FIELD_NUMBER: builtins.int
139
+ ORDER_BY_FIELD_NUMBER: builtins.int
140
+ DESCENDING_FIELD_NUMBER: builtins.int
141
+ page_size: builtins.int
142
+ page_token: builtins.str
143
+ provider: builtins.str
144
+ """Filters"""
145
+ model_type: builtins.str
146
+ active_only: builtins.bool
147
+ vision_only: builtins.bool
148
+ """Capability filters"""
149
+ tool_calls_only: builtins.bool
150
+ reasoning_only: builtins.bool
151
+ open_source_only: builtins.bool
152
+ max_input_price: builtins.float
153
+ """Price filters (per 1M tokens)"""
154
+ max_output_price: builtins.float
155
+ min_context_window: builtins.int
156
+ """Token filters"""
157
+ order_by: builtins.str
158
+ """Sorting
159
+ "name", "release_date", "input_price", "context_window"
160
+ """
161
+ descending: builtins.bool
162
+ def __init__(
163
+ self,
164
+ *,
165
+ page_size: builtins.int = ...,
166
+ page_token: builtins.str = ...,
167
+ provider: builtins.str = ...,
168
+ model_type: builtins.str = ...,
169
+ active_only: builtins.bool = ...,
170
+ vision_only: builtins.bool = ...,
171
+ tool_calls_only: builtins.bool = ...,
172
+ reasoning_only: builtins.bool = ...,
173
+ open_source_only: builtins.bool = ...,
174
+ max_input_price: builtins.float = ...,
175
+ max_output_price: builtins.float = ...,
176
+ min_context_window: builtins.int = ...,
177
+ order_by: builtins.str = ...,
178
+ descending: builtins.bool = ...,
179
+ ) -> None: ...
180
+ def ClearField(
181
+ self,
182
+ field_name: typing.Literal[
183
+ "active_only",
184
+ b"active_only",
185
+ "descending",
186
+ b"descending",
187
+ "max_input_price",
188
+ b"max_input_price",
189
+ "max_output_price",
190
+ b"max_output_price",
191
+ "min_context_window",
192
+ b"min_context_window",
193
+ "model_type",
194
+ b"model_type",
195
+ "open_source_only",
196
+ b"open_source_only",
197
+ "order_by",
198
+ b"order_by",
199
+ "page_size",
200
+ b"page_size",
201
+ "page_token",
202
+ b"page_token",
203
+ "provider",
204
+ b"provider",
205
+ "reasoning_only",
206
+ b"reasoning_only",
207
+ "tool_calls_only",
208
+ b"tool_calls_only",
209
+ "vision_only",
210
+ b"vision_only",
211
+ ],
212
+ ) -> None: ...
213
+
214
+ global___ListModelsRequest = ListModelsRequest
215
+
216
+ @typing.final
217
+ class ListModelsResponse(google.protobuf.message.Message):
218
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
219
+
220
+ MODELS_FIELD_NUMBER: builtins.int
221
+ NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
222
+ TOTAL_COUNT_FIELD_NUMBER: builtins.int
223
+ next_page_token: builtins.str
224
+ total_count: builtins.int
225
+ @property
226
+ def models(
227
+ self,
228
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
229
+ weaveapi.modex.v1.model_pb2.Model
230
+ ]: ...
231
+ def __init__(
232
+ self,
233
+ *,
234
+ models: collections.abc.Iterable[weaveapi.modex.v1.model_pb2.Model]
235
+ | None = ...,
236
+ next_page_token: builtins.str = ...,
237
+ total_count: builtins.int = ...,
238
+ ) -> None: ...
239
+ def ClearField(
240
+ self,
241
+ field_name: typing.Literal[
242
+ "models",
243
+ b"models",
244
+ "next_page_token",
245
+ b"next_page_token",
246
+ "total_count",
247
+ b"total_count",
248
+ ],
249
+ ) -> None: ...
250
+
251
+ global___ListModelsResponse = ListModelsResponse
252
+
253
+ @typing.final
254
+ class GetModelRequest(google.protobuf.message.Message):
255
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
256
+
257
+ PROVIDER_FIELD_NUMBER: builtins.int
258
+ MODEL_ID_FIELD_NUMBER: builtins.int
259
+ provider: builtins.str
260
+ """e.g., "openai" """
261
+ model_id: builtins.str
262
+ """e.g., "gpt-4o" """
263
+ def __init__(
264
+ self,
265
+ *,
266
+ provider: builtins.str = ...,
267
+ model_id: builtins.str = ...,
268
+ ) -> None: ...
269
+ def ClearField(
270
+ self,
271
+ field_name: typing.Literal["model_id", b"model_id", "provider", b"provider"],
272
+ ) -> None: ...
273
+
274
+ global___GetModelRequest = GetModelRequest
275
+
276
+ @typing.final
277
+ class GetModelResponse(google.protobuf.message.Message):
278
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
279
+
280
+ MODEL_FIELD_NUMBER: builtins.int
281
+ @property
282
+ def model(self) -> weaveapi.modex.v1.model_pb2.Model: ...
283
+ def __init__(
284
+ self,
285
+ *,
286
+ model: weaveapi.modex.v1.model_pb2.Model | None = ...,
287
+ ) -> None: ...
288
+ def HasField(
289
+ self, field_name: typing.Literal["model", b"model"]
290
+ ) -> builtins.bool: ...
291
+ def ClearField(self, field_name: typing.Literal["model", b"model"]) -> None: ...
292
+
293
+ global___GetModelResponse = GetModelResponse
294
+
295
+ @typing.final
296
+ class SearchModelsRequest(google.protobuf.message.Message):
297
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
298
+
299
+ QUERY_FIELD_NUMBER: builtins.int
300
+ PROVIDERS_FIELD_NUMBER: builtins.int
301
+ MODEL_TYPES_FIELD_NUMBER: builtins.int
302
+ ARCHITECTURES_FIELD_NUMBER: builtins.int
303
+ REQUIRED_CAPABILITIES_FIELD_NUMBER: builtins.int
304
+ REQUIRED_INPUT_MODALITIES_FIELD_NUMBER: builtins.int
305
+ REQUIRED_OUTPUT_MODALITIES_FIELD_NUMBER: builtins.int
306
+ PRICE_RANGE_FIELD_NUMBER: builtins.int
307
+ TOKEN_RANGE_FIELD_NUMBER: builtins.int
308
+ PERFORMANCE_RANGE_FIELD_NUMBER: builtins.int
309
+ PAGE_SIZE_FIELD_NUMBER: builtins.int
310
+ PAGE_TOKEN_FIELD_NUMBER: builtins.int
311
+ ORDER_BY_FIELD_NUMBER: builtins.int
312
+ DESCENDING_FIELD_NUMBER: builtins.int
313
+ query: builtins.str
314
+ """Full-text search"""
315
+ page_size: builtins.int
316
+ """Pagination"""
317
+ page_token: builtins.str
318
+ order_by: builtins.str
319
+ """Sorting"""
320
+ descending: builtins.bool
321
+ @property
322
+ def providers(
323
+ self,
324
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
325
+ """Advanced filters"""
326
+
327
+ @property
328
+ def model_types(
329
+ self,
330
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
331
+ builtins.str
332
+ ]: ...
333
+ @property
334
+ def architectures(
335
+ self,
336
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
337
+ builtins.str
338
+ ]: ...
339
+ @property
340
+ def required_capabilities(
341
+ self,
342
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
343
+ """Capability requirements (ALL must be true)"""
344
+
345
+ @property
346
+ def required_input_modalities(
347
+ self,
348
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
349
+ builtins.str
350
+ ]: ...
351
+ @property
352
+ def required_output_modalities(
353
+ self,
354
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[
355
+ builtins.str
356
+ ]: ...
357
+ @property
358
+ def price_range(self) -> global___PriceRange:
359
+ """Numeric ranges"""
360
+
361
+ @property
362
+ def token_range(self) -> global___TokenRange: ...
363
+ @property
364
+ def performance_range(self) -> global___PerformanceRange: ...
365
+ def __init__(
366
+ self,
367
+ *,
368
+ query: builtins.str = ...,
369
+ providers: collections.abc.Iterable[builtins.str] | None = ...,
370
+ model_types: collections.abc.Iterable[builtins.str] | None = ...,
371
+ architectures: collections.abc.Iterable[builtins.str] | None = ...,
372
+ required_capabilities: collections.abc.Iterable[builtins.str] | None = ...,
373
+ required_input_modalities: collections.abc.Iterable[builtins.str] | None = ...,
374
+ required_output_modalities: collections.abc.Iterable[builtins.str] | None = ...,
375
+ price_range: global___PriceRange | None = ...,
376
+ token_range: global___TokenRange | None = ...,
377
+ performance_range: global___PerformanceRange | None = ...,
378
+ page_size: builtins.int = ...,
379
+ page_token: builtins.str = ...,
380
+ order_by: builtins.str = ...,
381
+ descending: builtins.bool = ...,
382
+ ) -> None: ...
383
+ def HasField(
384
+ self,
385
+ field_name: typing.Literal[
386
+ "performance_range",
387
+ b"performance_range",
388
+ "price_range",
389
+ b"price_range",
390
+ "token_range",
391
+ b"token_range",
392
+ ],
393
+ ) -> builtins.bool: ...
394
+ def ClearField(
395
+ self,
396
+ field_name: typing.Literal[
397
+ "architectures",
398
+ b"architectures",
399
+ "descending",
400
+ b"descending",
401
+ "model_types",
402
+ b"model_types",
403
+ "order_by",
404
+ b"order_by",
405
+ "page_size",
406
+ b"page_size",
407
+ "page_token",
408
+ b"page_token",
409
+ "performance_range",
410
+ b"performance_range",
411
+ "price_range",
412
+ b"price_range",
413
+ "providers",
414
+ b"providers",
415
+ "query",
416
+ b"query",
417
+ "required_capabilities",
418
+ b"required_capabilities",
419
+ "required_input_modalities",
420
+ b"required_input_modalities",
421
+ "required_output_modalities",
422
+ b"required_output_modalities",
423
+ "token_range",
424
+ b"token_range",
425
+ ],
426
+ ) -> None: ...
427
+
428
+ global___SearchModelsRequest = SearchModelsRequest
429
+
430
+ @typing.final
431
+ class PriceRange(google.protobuf.message.Message):
432
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
433
+
434
+ MIN_INPUT_PRICE_FIELD_NUMBER: builtins.int
435
+ MAX_INPUT_PRICE_FIELD_NUMBER: builtins.int
436
+ MIN_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
437
+ MAX_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
438
+ min_input_price: builtins.float
439
+ max_input_price: builtins.float
440
+ min_output_price: builtins.float
441
+ max_output_price: builtins.float
442
+ def __init__(
443
+ self,
444
+ *,
445
+ min_input_price: builtins.float = ...,
446
+ max_input_price: builtins.float = ...,
447
+ min_output_price: builtins.float = ...,
448
+ max_output_price: builtins.float = ...,
449
+ ) -> None: ...
450
+ def ClearField(
451
+ self,
452
+ field_name: typing.Literal[
453
+ "max_input_price",
454
+ b"max_input_price",
455
+ "max_output_price",
456
+ b"max_output_price",
457
+ "min_input_price",
458
+ b"min_input_price",
459
+ "min_output_price",
460
+ b"min_output_price",
461
+ ],
462
+ ) -> None: ...
463
+
464
+ global___PriceRange = PriceRange
465
+
466
+ @typing.final
467
+ class TokenRange(google.protobuf.message.Message):
468
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
469
+
470
+ MIN_CONTEXT_WINDOW_FIELD_NUMBER: builtins.int
471
+ MAX_CONTEXT_WINDOW_FIELD_NUMBER: builtins.int
472
+ MIN_OUTPUT_TOKENS_FIELD_NUMBER: builtins.int
473
+ MAX_OUTPUT_TOKENS_FIELD_NUMBER: builtins.int
474
+ min_context_window: builtins.int
475
+ max_context_window: builtins.int
476
+ min_output_tokens: builtins.int
477
+ max_output_tokens: builtins.int
478
+ def __init__(
479
+ self,
480
+ *,
481
+ min_context_window: builtins.int = ...,
482
+ max_context_window: builtins.int = ...,
483
+ min_output_tokens: builtins.int = ...,
484
+ max_output_tokens: builtins.int = ...,
485
+ ) -> None: ...
486
+ def ClearField(
487
+ self,
488
+ field_name: typing.Literal[
489
+ "max_context_window",
490
+ b"max_context_window",
491
+ "max_output_tokens",
492
+ b"max_output_tokens",
493
+ "min_context_window",
494
+ b"min_context_window",
495
+ "min_output_tokens",
496
+ b"min_output_tokens",
497
+ ],
498
+ ) -> None: ...
499
+
500
+ global___TokenRange = TokenRange
501
+
502
+ @typing.final
503
+ class PerformanceRange(google.protobuf.message.Message):
504
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
505
+
506
+ MIN_REASONING_SCORE_FIELD_NUMBER: builtins.int
507
+ MIN_CODING_SCORE_FIELD_NUMBER: builtins.int
508
+ MIN_CREATIVE_SCORE_FIELD_NUMBER: builtins.int
509
+ MIN_FACTUAL_SCORE_FIELD_NUMBER: builtins.int
510
+ MIN_MATH_SCORE_FIELD_NUMBER: builtins.int
511
+ min_reasoning_score: builtins.float
512
+ min_coding_score: builtins.float
513
+ min_creative_score: builtins.float
514
+ min_factual_score: builtins.float
515
+ min_math_score: builtins.float
516
+ def __init__(
517
+ self,
518
+ *,
519
+ min_reasoning_score: builtins.float = ...,
520
+ min_coding_score: builtins.float = ...,
521
+ min_creative_score: builtins.float = ...,
522
+ min_factual_score: builtins.float = ...,
523
+ min_math_score: builtins.float = ...,
524
+ ) -> None: ...
525
+ def ClearField(
526
+ self,
527
+ field_name: typing.Literal[
528
+ "min_coding_score",
529
+ b"min_coding_score",
530
+ "min_creative_score",
531
+ b"min_creative_score",
532
+ "min_factual_score",
533
+ b"min_factual_score",
534
+ "min_math_score",
535
+ b"min_math_score",
536
+ "min_reasoning_score",
537
+ b"min_reasoning_score",
538
+ ],
539
+ ) -> None: ...
540
+
541
+ global___PerformanceRange = PerformanceRange
542
+
543
+ @typing.final
544
+ class SearchModelsResponse(google.protobuf.message.Message):
545
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
546
+
547
+ MODELS_FIELD_NUMBER: builtins.int
548
+ NEXT_PAGE_TOKEN_FIELD_NUMBER: builtins.int
549
+ TOTAL_COUNT_FIELD_NUMBER: builtins.int
550
+ FACETS_FIELD_NUMBER: builtins.int
551
+ next_page_token: builtins.str
552
+ total_count: builtins.int
553
+ @property
554
+ def models(
555
+ self,
556
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
557
+ weaveapi.modex.v1.model_pb2.Model
558
+ ]: ...
559
+ @property
560
+ def facets(
561
+ self,
562
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
563
+ global___FacetResult
564
+ ]: ...
565
+ def __init__(
566
+ self,
567
+ *,
568
+ models: collections.abc.Iterable[weaveapi.modex.v1.model_pb2.Model]
569
+ | None = ...,
570
+ next_page_token: builtins.str = ...,
571
+ total_count: builtins.int = ...,
572
+ facets: collections.abc.Iterable[global___FacetResult] | None = ...,
573
+ ) -> None: ...
574
+ def ClearField(
575
+ self,
576
+ field_name: typing.Literal[
577
+ "facets",
578
+ b"facets",
579
+ "models",
580
+ b"models",
581
+ "next_page_token",
582
+ b"next_page_token",
583
+ "total_count",
584
+ b"total_count",
585
+ ],
586
+ ) -> None: ...
587
+
588
+ global___SearchModelsResponse = SearchModelsResponse
589
+
590
+ @typing.final
591
+ class FacetResult(google.protobuf.message.Message):
592
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
593
+
594
+ FIELD_FIELD_NUMBER: builtins.int
595
+ VALUES_FIELD_NUMBER: builtins.int
596
+ field: builtins.str
597
+ @property
598
+ def values(
599
+ self,
600
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
601
+ global___FacetValue
602
+ ]: ...
603
+ def __init__(
604
+ self,
605
+ *,
606
+ field: builtins.str = ...,
607
+ values: collections.abc.Iterable[global___FacetValue] | None = ...,
608
+ ) -> None: ...
609
+ def ClearField(
610
+ self, field_name: typing.Literal["field", b"field", "values", b"values"]
611
+ ) -> None: ...
612
+
613
+ global___FacetResult = FacetResult
614
+
615
+ @typing.final
616
+ class FacetValue(google.protobuf.message.Message):
617
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
618
+
619
+ VALUE_FIELD_NUMBER: builtins.int
620
+ COUNT_FIELD_NUMBER: builtins.int
621
+ value: builtins.str
622
+ count: builtins.int
623
+ def __init__(
624
+ self,
625
+ *,
626
+ value: builtins.str = ...,
627
+ count: builtins.int = ...,
628
+ ) -> None: ...
629
+ def ClearField(
630
+ self, field_name: typing.Literal["count", b"count", "value", b"value"]
631
+ ) -> None: ...
632
+
633
+ global___FacetValue = FacetValue
634
+
635
+ @typing.final
636
+ class CompareModelsRequest(google.protobuf.message.Message):
637
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
638
+
639
+ MODEL_SLUGS_FIELD_NUMBER: builtins.int
640
+ FIELDS_FIELD_NUMBER: builtins.int
641
+ @property
642
+ def model_slugs(
643
+ self,
644
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
645
+ """e.g., ["openai/gpt-4o", "anthropic/claude-3-opus"]"""
646
+
647
+ @property
648
+ def fields(
649
+ self,
650
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
651
+ """Optional: specific fields to compare"""
652
+
653
+ def __init__(
654
+ self,
655
+ *,
656
+ model_slugs: collections.abc.Iterable[builtins.str] | None = ...,
657
+ fields: collections.abc.Iterable[builtins.str] | None = ...,
658
+ ) -> None: ...
659
+ def ClearField(
660
+ self,
661
+ field_name: typing.Literal["fields", b"fields", "model_slugs", b"model_slugs"],
662
+ ) -> None: ...
663
+
664
+ global___CompareModelsRequest = CompareModelsRequest
665
+
666
+ @typing.final
667
+ class CompareModelsResponse(google.protobuf.message.Message):
668
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
669
+
670
+ COMPARISONS_FIELD_NUMBER: builtins.int
671
+ SUMMARY_FIELD_NUMBER: builtins.int
672
+ @property
673
+ def comparisons(
674
+ self,
675
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
676
+ global___ModelComparison
677
+ ]: ...
678
+ @property
679
+ def summary(self) -> global___ComparisonSummary: ...
680
+ def __init__(
681
+ self,
682
+ *,
683
+ comparisons: collections.abc.Iterable[global___ModelComparison] | None = ...,
684
+ summary: global___ComparisonSummary | None = ...,
685
+ ) -> None: ...
686
+ def HasField(
687
+ self, field_name: typing.Literal["summary", b"summary"]
688
+ ) -> builtins.bool: ...
689
+ def ClearField(
690
+ self,
691
+ field_name: typing.Literal[
692
+ "comparisons", b"comparisons", "summary", b"summary"
693
+ ],
694
+ ) -> None: ...
695
+
696
+ global___CompareModelsResponse = CompareModelsResponse
697
+
698
+ @typing.final
699
+ class ModelComparison(google.protobuf.message.Message):
700
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
701
+
702
+ @typing.final
703
+ class HighlightedDifferencesEntry(google.protobuf.message.Message):
704
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
705
+
706
+ KEY_FIELD_NUMBER: builtins.int
707
+ VALUE_FIELD_NUMBER: builtins.int
708
+ key: builtins.str
709
+ value: builtins.str
710
+ def __init__(
711
+ self,
712
+ *,
713
+ key: builtins.str = ...,
714
+ value: builtins.str = ...,
715
+ ) -> None: ...
716
+ def ClearField(
717
+ self, field_name: typing.Literal["key", b"key", "value", b"value"]
718
+ ) -> None: ...
719
+
720
+ MODEL_FIELD_NUMBER: builtins.int
721
+ HIGHLIGHTED_DIFFERENCES_FIELD_NUMBER: builtins.int
722
+ @property
723
+ def model(self) -> weaveapi.modex.v1.model_pb2.Model: ...
724
+ @property
725
+ def highlighted_differences(
726
+ self,
727
+ ) -> google.protobuf.internal.containers.ScalarMap[builtins.str, builtins.str]: ...
728
+ def __init__(
729
+ self,
730
+ *,
731
+ model: weaveapi.modex.v1.model_pb2.Model | None = ...,
732
+ highlighted_differences: collections.abc.Mapping[builtins.str, builtins.str]
733
+ | None = ...,
734
+ ) -> None: ...
735
+ def HasField(
736
+ self, field_name: typing.Literal["model", b"model"]
737
+ ) -> builtins.bool: ...
738
+ def ClearField(
739
+ self,
740
+ field_name: typing.Literal[
741
+ "highlighted_differences", b"highlighted_differences", "model", b"model"
742
+ ],
743
+ ) -> None: ...
744
+
745
+ global___ModelComparison = ModelComparison
746
+
747
+ @typing.final
748
+ class ComparisonSummary(google.protobuf.message.Message):
749
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
750
+
751
+ CHEAPEST_INPUT_FIELD_NUMBER: builtins.int
752
+ CHEAPEST_OUTPUT_FIELD_NUMBER: builtins.int
753
+ LARGEST_CONTEXT_FIELD_NUMBER: builtins.int
754
+ BEST_REASONING_FIELD_NUMBER: builtins.int
755
+ BEST_CODING_FIELD_NUMBER: builtins.int
756
+ MOST_CAPABLE_FIELD_NUMBER: builtins.int
757
+ cheapest_input: builtins.str
758
+ cheapest_output: builtins.str
759
+ largest_context: builtins.str
760
+ best_reasoning: builtins.str
761
+ best_coding: builtins.str
762
+ most_capable: builtins.str
763
+ """most capabilities enabled"""
764
+ def __init__(
765
+ self,
766
+ *,
767
+ cheapest_input: builtins.str = ...,
768
+ cheapest_output: builtins.str = ...,
769
+ largest_context: builtins.str = ...,
770
+ best_reasoning: builtins.str = ...,
771
+ best_coding: builtins.str = ...,
772
+ most_capable: builtins.str = ...,
773
+ ) -> None: ...
774
+ def ClearField(
775
+ self,
776
+ field_name: typing.Literal[
777
+ "best_coding",
778
+ b"best_coding",
779
+ "best_reasoning",
780
+ b"best_reasoning",
781
+ "cheapest_input",
782
+ b"cheapest_input",
783
+ "cheapest_output",
784
+ b"cheapest_output",
785
+ "largest_context",
786
+ b"largest_context",
787
+ "most_capable",
788
+ b"most_capable",
789
+ ],
790
+ ) -> None: ...
791
+
792
+ global___ComparisonSummary = ComparisonSummary
793
+
794
+ @typing.final
795
+ class GetModelPriceHistoryRequest(google.protobuf.message.Message):
796
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
797
+
798
+ PROVIDER_FIELD_NUMBER: builtins.int
799
+ MODEL_ID_FIELD_NUMBER: builtins.int
800
+ DAYS_FIELD_NUMBER: builtins.int
801
+ provider: builtins.str
802
+ model_id: builtins.str
803
+ days: builtins.int
804
+ """Last N days (default 30)"""
805
+ def __init__(
806
+ self,
807
+ *,
808
+ provider: builtins.str = ...,
809
+ model_id: builtins.str = ...,
810
+ days: builtins.int = ...,
811
+ ) -> None: ...
812
+ def ClearField(
813
+ self,
814
+ field_name: typing.Literal[
815
+ "days", b"days", "model_id", b"model_id", "provider", b"provider"
816
+ ],
817
+ ) -> None: ...
818
+
819
+ global___GetModelPriceHistoryRequest = GetModelPriceHistoryRequest
820
+
821
+ @typing.final
822
+ class GetModelPriceHistoryResponse(google.protobuf.message.Message):
823
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
824
+
825
+ PRICE_HISTORY_FIELD_NUMBER: builtins.int
826
+ LATEST_CHANGE_FIELD_NUMBER: builtins.int
827
+ @property
828
+ def price_history(
829
+ self,
830
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
831
+ global___PricePoint
832
+ ]: ...
833
+ @property
834
+ def latest_change(self) -> global___PriceChange: ...
835
+ def __init__(
836
+ self,
837
+ *,
838
+ price_history: collections.abc.Iterable[global___PricePoint] | None = ...,
839
+ latest_change: global___PriceChange | None = ...,
840
+ ) -> None: ...
841
+ def HasField(
842
+ self, field_name: typing.Literal["latest_change", b"latest_change"]
843
+ ) -> builtins.bool: ...
844
+ def ClearField(
845
+ self,
846
+ field_name: typing.Literal[
847
+ "latest_change", b"latest_change", "price_history", b"price_history"
848
+ ],
849
+ ) -> None: ...
850
+
851
+ global___GetModelPriceHistoryResponse = GetModelPriceHistoryResponse
852
+
853
+ @typing.final
854
+ class PricePoint(google.protobuf.message.Message):
855
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
856
+
857
+ TIMESTAMP_FIELD_NUMBER: builtins.int
858
+ INPUT_PRICE_FIELD_NUMBER: builtins.int
859
+ OUTPUT_PRICE_FIELD_NUMBER: builtins.int
860
+ CACHE_READ_PRICE_FIELD_NUMBER: builtins.int
861
+ CACHE_WRITE_PRICE_FIELD_NUMBER: builtins.int
862
+ input_price: builtins.float
863
+ output_price: builtins.float
864
+ cache_read_price: builtins.float
865
+ cache_write_price: builtins.float
866
+ @property
867
+ def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
868
+ def __init__(
869
+ self,
870
+ *,
871
+ timestamp: google.protobuf.timestamp_pb2.Timestamp | None = ...,
872
+ input_price: builtins.float = ...,
873
+ output_price: builtins.float = ...,
874
+ cache_read_price: builtins.float = ...,
875
+ cache_write_price: builtins.float = ...,
876
+ ) -> None: ...
877
+ def HasField(
878
+ self, field_name: typing.Literal["timestamp", b"timestamp"]
879
+ ) -> builtins.bool: ...
880
+ def ClearField(
881
+ self,
882
+ field_name: typing.Literal[
883
+ "cache_read_price",
884
+ b"cache_read_price",
885
+ "cache_write_price",
886
+ b"cache_write_price",
887
+ "input_price",
888
+ b"input_price",
889
+ "output_price",
890
+ b"output_price",
891
+ "timestamp",
892
+ b"timestamp",
893
+ ],
894
+ ) -> None: ...
895
+
896
+ global___PricePoint = PricePoint
897
+
898
+ @typing.final
899
+ class PriceChange(google.protobuf.message.Message):
900
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
901
+
902
+ CHANGED_AT_FIELD_NUMBER: builtins.int
903
+ OLD_INPUT_PRICE_FIELD_NUMBER: builtins.int
904
+ NEW_INPUT_PRICE_FIELD_NUMBER: builtins.int
905
+ OLD_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
906
+ NEW_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
907
+ INPUT_CHANGE_PERCENT_FIELD_NUMBER: builtins.int
908
+ OUTPUT_CHANGE_PERCENT_FIELD_NUMBER: builtins.int
909
+ old_input_price: builtins.float
910
+ new_input_price: builtins.float
911
+ old_output_price: builtins.float
912
+ new_output_price: builtins.float
913
+ input_change_percent: builtins.float
914
+ output_change_percent: builtins.float
915
+ @property
916
+ def changed_at(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
917
+ def __init__(
918
+ self,
919
+ *,
920
+ changed_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
921
+ old_input_price: builtins.float = ...,
922
+ new_input_price: builtins.float = ...,
923
+ old_output_price: builtins.float = ...,
924
+ new_output_price: builtins.float = ...,
925
+ input_change_percent: builtins.float = ...,
926
+ output_change_percent: builtins.float = ...,
927
+ ) -> None: ...
928
+ def HasField(
929
+ self, field_name: typing.Literal["changed_at", b"changed_at"]
930
+ ) -> builtins.bool: ...
931
+ def ClearField(
932
+ self,
933
+ field_name: typing.Literal[
934
+ "changed_at",
935
+ b"changed_at",
936
+ "input_change_percent",
937
+ b"input_change_percent",
938
+ "new_input_price",
939
+ b"new_input_price",
940
+ "new_output_price",
941
+ b"new_output_price",
942
+ "old_input_price",
943
+ b"old_input_price",
944
+ "old_output_price",
945
+ b"old_output_price",
946
+ "output_change_percent",
947
+ b"output_change_percent",
948
+ ],
949
+ ) -> None: ...
950
+
951
+ global___PriceChange = PriceChange
952
+
953
+ @typing.final
954
+ class GetModelChangesRequest(google.protobuf.message.Message):
955
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
956
+
957
+ PROVIDER_FIELD_NUMBER: builtins.int
958
+ MODEL_ID_FIELD_NUMBER: builtins.int
959
+ LIMIT_FIELD_NUMBER: builtins.int
960
+ provider: builtins.str
961
+ model_id: builtins.str
962
+ limit: builtins.int
963
+ """Default 20"""
964
+ def __init__(
965
+ self,
966
+ *,
967
+ provider: builtins.str = ...,
968
+ model_id: builtins.str = ...,
969
+ limit: builtins.int = ...,
970
+ ) -> None: ...
971
+ def ClearField(
972
+ self,
973
+ field_name: typing.Literal[
974
+ "limit", b"limit", "model_id", b"model_id", "provider", b"provider"
975
+ ],
976
+ ) -> None: ...
977
+
978
+ global___GetModelChangesRequest = GetModelChangesRequest
979
+
980
+ @typing.final
981
+ class GetModelChangesResponse(google.protobuf.message.Message):
982
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
983
+
984
+ CHANGES_FIELD_NUMBER: builtins.int
985
+ @property
986
+ def changes(
987
+ self,
988
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
989
+ global___ModelChange
990
+ ]: ...
991
+ def __init__(
992
+ self,
993
+ *,
994
+ changes: collections.abc.Iterable[global___ModelChange] | None = ...,
995
+ ) -> None: ...
996
+ def ClearField(self, field_name: typing.Literal["changes", b"changes"]) -> None: ...
997
+
998
+ global___GetModelChangesResponse = GetModelChangesResponse
999
+
1000
+ @typing.final
1001
+ class ModelChange(google.protobuf.message.Message):
1002
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1003
+
1004
+ ID_FIELD_NUMBER: builtins.int
1005
+ FIELD_NAME_FIELD_NUMBER: builtins.int
1006
+ OLD_VALUE_FIELD_NUMBER: builtins.int
1007
+ NEW_VALUE_FIELD_NUMBER: builtins.int
1008
+ CHANGE_TYPE_FIELD_NUMBER: builtins.int
1009
+ DETECTED_AT_FIELD_NUMBER: builtins.int
1010
+ id: builtins.str
1011
+ field_name: builtins.str
1012
+ old_value: builtins.str
1013
+ new_value: builtins.str
1014
+ change_type: builtins.str
1015
+ """added, updated, deprecated, removed"""
1016
+ @property
1017
+ def detected_at(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
1018
+ def __init__(
1019
+ self,
1020
+ *,
1021
+ id: builtins.str = ...,
1022
+ field_name: builtins.str = ...,
1023
+ old_value: builtins.str = ...,
1024
+ new_value: builtins.str = ...,
1025
+ change_type: builtins.str = ...,
1026
+ detected_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
1027
+ ) -> None: ...
1028
+ def HasField(
1029
+ self, field_name: typing.Literal["detected_at", b"detected_at"]
1030
+ ) -> builtins.bool: ...
1031
+ def ClearField(
1032
+ self,
1033
+ field_name: typing.Literal[
1034
+ "change_type",
1035
+ b"change_type",
1036
+ "detected_at",
1037
+ b"detected_at",
1038
+ "field_name",
1039
+ b"field_name",
1040
+ "id",
1041
+ b"id",
1042
+ "new_value",
1043
+ b"new_value",
1044
+ "old_value",
1045
+ b"old_value",
1046
+ ],
1047
+ ) -> None: ...
1048
+
1049
+ global___ModelChange = ModelChange
1050
+
1051
+ @typing.final
1052
+ class GetTrendingModelsRequest(google.protobuf.message.Message):
1053
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1054
+
1055
+ PERIOD_DAYS_FIELD_NUMBER: builtins.int
1056
+ LIMIT_FIELD_NUMBER: builtins.int
1057
+ period_days: builtins.int
1058
+ """1, 7, 30"""
1059
+ limit: builtins.int
1060
+ """Default 10"""
1061
+ def __init__(
1062
+ self,
1063
+ *,
1064
+ period_days: builtins.int = ...,
1065
+ limit: builtins.int = ...,
1066
+ ) -> None: ...
1067
+ def ClearField(
1068
+ self,
1069
+ field_name: typing.Literal["limit", b"limit", "period_days", b"period_days"],
1070
+ ) -> None: ...
1071
+
1072
+ global___GetTrendingModelsRequest = GetTrendingModelsRequest
1073
+
1074
+ @typing.final
1075
+ class GetTrendingModelsResponse(google.protobuf.message.Message):
1076
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1077
+
1078
+ MODELS_FIELD_NUMBER: builtins.int
1079
+ @property
1080
+ def models(
1081
+ self,
1082
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
1083
+ global___TrendingModel
1084
+ ]: ...
1085
+ def __init__(
1086
+ self,
1087
+ *,
1088
+ models: collections.abc.Iterable[global___TrendingModel] | None = ...,
1089
+ ) -> None: ...
1090
+ def ClearField(self, field_name: typing.Literal["models", b"models"]) -> None: ...
1091
+
1092
+ global___GetTrendingModelsResponse = GetTrendingModelsResponse
1093
+
1094
+ @typing.final
1095
+ class TrendingModel(google.protobuf.message.Message):
1096
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1097
+
1098
+ MODEL_FIELD_NUMBER: builtins.int
1099
+ API_CALLS_FIELD_NUMBER: builtins.int
1100
+ UNIQUE_USERS_FIELD_NUMBER: builtins.int
1101
+ GROWTH_RATE_FIELD_NUMBER: builtins.int
1102
+ RANK_FIELD_NUMBER: builtins.int
1103
+ api_calls: builtins.int
1104
+ unique_users: builtins.int
1105
+ growth_rate: builtins.float
1106
+ """Percentage"""
1107
+ rank: builtins.int
1108
+ @property
1109
+ def model(self) -> weaveapi.modex.v1.model_pb2.Model: ...
1110
+ def __init__(
1111
+ self,
1112
+ *,
1113
+ model: weaveapi.modex.v1.model_pb2.Model | None = ...,
1114
+ api_calls: builtins.int = ...,
1115
+ unique_users: builtins.int = ...,
1116
+ growth_rate: builtins.float = ...,
1117
+ rank: builtins.int = ...,
1118
+ ) -> None: ...
1119
+ def HasField(
1120
+ self, field_name: typing.Literal["model", b"model"]
1121
+ ) -> builtins.bool: ...
1122
+ def ClearField(
1123
+ self,
1124
+ field_name: typing.Literal[
1125
+ "api_calls",
1126
+ b"api_calls",
1127
+ "growth_rate",
1128
+ b"growth_rate",
1129
+ "model",
1130
+ b"model",
1131
+ "rank",
1132
+ b"rank",
1133
+ "unique_users",
1134
+ b"unique_users",
1135
+ ],
1136
+ ) -> None: ...
1137
+
1138
+ global___TrendingModel = TrendingModel
1139
+
1140
+ @typing.final
1141
+ class GetRecentUpdatesRequest(google.protobuf.message.Message):
1142
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1143
+
1144
+ HOURS_FIELD_NUMBER: builtins.int
1145
+ PROVIDERS_FIELD_NUMBER: builtins.int
1146
+ CHANGE_TYPES_FIELD_NUMBER: builtins.int
1147
+ LIMIT_FIELD_NUMBER: builtins.int
1148
+ hours: builtins.int
1149
+ """Last N hours (default 24)"""
1150
+ limit: builtins.int
1151
+ """Default 50"""
1152
+ @property
1153
+ def providers(
1154
+ self,
1155
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1156
+ """Filter by providers"""
1157
+
1158
+ @property
1159
+ def change_types(
1160
+ self,
1161
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1162
+ """added, updated, deprecated, removed"""
1163
+
1164
+ def __init__(
1165
+ self,
1166
+ *,
1167
+ hours: builtins.int = ...,
1168
+ providers: collections.abc.Iterable[builtins.str] | None = ...,
1169
+ change_types: collections.abc.Iterable[builtins.str] | None = ...,
1170
+ limit: builtins.int = ...,
1171
+ ) -> None: ...
1172
+ def ClearField(
1173
+ self,
1174
+ field_name: typing.Literal[
1175
+ "change_types",
1176
+ b"change_types",
1177
+ "hours",
1178
+ b"hours",
1179
+ "limit",
1180
+ b"limit",
1181
+ "providers",
1182
+ b"providers",
1183
+ ],
1184
+ ) -> None: ...
1185
+
1186
+ global___GetRecentUpdatesRequest = GetRecentUpdatesRequest
1187
+
1188
+ @typing.final
1189
+ class GetRecentUpdatesResponse(google.protobuf.message.Message):
1190
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1191
+
1192
+ UPDATES_FIELD_NUMBER: builtins.int
1193
+ @property
1194
+ def updates(
1195
+ self,
1196
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
1197
+ global___UpdateEntry
1198
+ ]: ...
1199
+ def __init__(
1200
+ self,
1201
+ *,
1202
+ updates: collections.abc.Iterable[global___UpdateEntry] | None = ...,
1203
+ ) -> None: ...
1204
+ def ClearField(self, field_name: typing.Literal["updates", b"updates"]) -> None: ...
1205
+
1206
+ global___GetRecentUpdatesResponse = GetRecentUpdatesResponse
1207
+
1208
+ @typing.final
1209
+ class UpdateEntry(google.protobuf.message.Message):
1210
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1211
+
1212
+ MODEL_SLUG_FIELD_NUMBER: builtins.int
1213
+ MODEL_NAME_FIELD_NUMBER: builtins.int
1214
+ PROVIDER_NAME_FIELD_NUMBER: builtins.int
1215
+ CHANGE_TYPE_FIELD_NUMBER: builtins.int
1216
+ FIELD_NAME_FIELD_NUMBER: builtins.int
1217
+ OLD_VALUE_FIELD_NUMBER: builtins.int
1218
+ NEW_VALUE_FIELD_NUMBER: builtins.int
1219
+ SUMMARY_FIELD_NUMBER: builtins.int
1220
+ DETECTED_AT_FIELD_NUMBER: builtins.int
1221
+ model_slug: builtins.str
1222
+ model_name: builtins.str
1223
+ provider_name: builtins.str
1224
+ change_type: builtins.str
1225
+ field_name: builtins.str
1226
+ old_value: builtins.str
1227
+ new_value: builtins.str
1228
+ summary: builtins.str
1229
+ """Human-readable summary"""
1230
+ @property
1231
+ def detected_at(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
1232
+ def __init__(
1233
+ self,
1234
+ *,
1235
+ model_slug: builtins.str = ...,
1236
+ model_name: builtins.str = ...,
1237
+ provider_name: builtins.str = ...,
1238
+ change_type: builtins.str = ...,
1239
+ field_name: builtins.str = ...,
1240
+ old_value: builtins.str = ...,
1241
+ new_value: builtins.str = ...,
1242
+ summary: builtins.str = ...,
1243
+ detected_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
1244
+ ) -> None: ...
1245
+ def HasField(
1246
+ self, field_name: typing.Literal["detected_at", b"detected_at"]
1247
+ ) -> builtins.bool: ...
1248
+ def ClearField(
1249
+ self,
1250
+ field_name: typing.Literal[
1251
+ "change_type",
1252
+ b"change_type",
1253
+ "detected_at",
1254
+ b"detected_at",
1255
+ "field_name",
1256
+ b"field_name",
1257
+ "model_name",
1258
+ b"model_name",
1259
+ "model_slug",
1260
+ b"model_slug",
1261
+ "new_value",
1262
+ b"new_value",
1263
+ "old_value",
1264
+ b"old_value",
1265
+ "provider_name",
1266
+ b"provider_name",
1267
+ "summary",
1268
+ b"summary",
1269
+ ],
1270
+ ) -> None: ...
1271
+
1272
+ global___UpdateEntry = UpdateEntry
1273
+
1274
+ @typing.final
1275
+ class ExportDataRequest(google.protobuf.message.Message):
1276
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1277
+
1278
+ FORMAT_FIELD_NUMBER: builtins.int
1279
+ PROVIDERS_FIELD_NUMBER: builtins.int
1280
+ INCLUDE_INACTIVE_FIELD_NUMBER: builtins.int
1281
+ format: builtins.str
1282
+ """"json", "csv", "yaml" """
1283
+ include_inactive: builtins.bool
1284
+ @property
1285
+ def providers(
1286
+ self,
1287
+ ) -> google.protobuf.internal.containers.RepeatedScalarFieldContainer[builtins.str]:
1288
+ """Optional filter"""
1289
+
1290
+ def __init__(
1291
+ self,
1292
+ *,
1293
+ format: builtins.str = ...,
1294
+ providers: collections.abc.Iterable[builtins.str] | None = ...,
1295
+ include_inactive: builtins.bool = ...,
1296
+ ) -> None: ...
1297
+ def ClearField(
1298
+ self,
1299
+ field_name: typing.Literal[
1300
+ "format",
1301
+ b"format",
1302
+ "include_inactive",
1303
+ b"include_inactive",
1304
+ "providers",
1305
+ b"providers",
1306
+ ],
1307
+ ) -> None: ...
1308
+
1309
+ global___ExportDataRequest = ExportDataRequest
1310
+
1311
+ @typing.final
1312
+ class ExportDataResponse(google.protobuf.message.Message):
1313
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1314
+
1315
+ DATA_FIELD_NUMBER: builtins.int
1316
+ CONTENT_TYPE_FIELD_NUMBER: builtins.int
1317
+ FILENAME_FIELD_NUMBER: builtins.int
1318
+ MODEL_COUNT_FIELD_NUMBER: builtins.int
1319
+ GENERATED_AT_FIELD_NUMBER: builtins.int
1320
+ data: builtins.bytes
1321
+ content_type: builtins.str
1322
+ filename: builtins.str
1323
+ model_count: builtins.int
1324
+ @property
1325
+ def generated_at(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
1326
+ def __init__(
1327
+ self,
1328
+ *,
1329
+ data: builtins.bytes = ...,
1330
+ content_type: builtins.str = ...,
1331
+ filename: builtins.str = ...,
1332
+ model_count: builtins.int = ...,
1333
+ generated_at: google.protobuf.timestamp_pb2.Timestamp | None = ...,
1334
+ ) -> None: ...
1335
+ def HasField(
1336
+ self, field_name: typing.Literal["generated_at", b"generated_at"]
1337
+ ) -> builtins.bool: ...
1338
+ def ClearField(
1339
+ self,
1340
+ field_name: typing.Literal[
1341
+ "content_type",
1342
+ b"content_type",
1343
+ "data",
1344
+ b"data",
1345
+ "filename",
1346
+ b"filename",
1347
+ "generated_at",
1348
+ b"generated_at",
1349
+ "model_count",
1350
+ b"model_count",
1351
+ ],
1352
+ ) -> None: ...
1353
+
1354
+ global___ExportDataResponse = ExportDataResponse
1355
+
1356
+ @typing.final
1357
+ class GetStatisticsRequest(google.protobuf.message.Message):
1358
+ """Empty for now, might add filters later"""
1359
+
1360
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1361
+
1362
+ def __init__(
1363
+ self,
1364
+ ) -> None: ...
1365
+
1366
+ global___GetStatisticsRequest = GetStatisticsRequest
1367
+
1368
+ @typing.final
1369
+ class GetStatisticsResponse(google.protobuf.message.Message):
1370
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1371
+
1372
+ OVERALL_FIELD_NUMBER: builtins.int
1373
+ BY_PROVIDER_FIELD_NUMBER: builtins.int
1374
+ BY_TYPE_FIELD_NUMBER: builtins.int
1375
+ PRICING_FIELD_NUMBER: builtins.int
1376
+ RECENT_ACTIVITY_FIELD_NUMBER: builtins.int
1377
+ @property
1378
+ def overall(self) -> global___OverallStats: ...
1379
+ @property
1380
+ def by_provider(
1381
+ self,
1382
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
1383
+ global___ProviderStats
1384
+ ]: ...
1385
+ @property
1386
+ def by_type(
1387
+ self,
1388
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
1389
+ global___TypeStats
1390
+ ]: ...
1391
+ @property
1392
+ def pricing(self) -> global___PricingStats: ...
1393
+ @property
1394
+ def recent_activity(
1395
+ self,
1396
+ ) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[
1397
+ global___RecentActivity
1398
+ ]: ...
1399
+ def __init__(
1400
+ self,
1401
+ *,
1402
+ overall: global___OverallStats | None = ...,
1403
+ by_provider: collections.abc.Iterable[global___ProviderStats] | None = ...,
1404
+ by_type: collections.abc.Iterable[global___TypeStats] | None = ...,
1405
+ pricing: global___PricingStats | None = ...,
1406
+ recent_activity: collections.abc.Iterable[global___RecentActivity] | None = ...,
1407
+ ) -> None: ...
1408
+ def HasField(
1409
+ self, field_name: typing.Literal["overall", b"overall", "pricing", b"pricing"]
1410
+ ) -> builtins.bool: ...
1411
+ def ClearField(
1412
+ self,
1413
+ field_name: typing.Literal[
1414
+ "by_provider",
1415
+ b"by_provider",
1416
+ "by_type",
1417
+ b"by_type",
1418
+ "overall",
1419
+ b"overall",
1420
+ "pricing",
1421
+ b"pricing",
1422
+ "recent_activity",
1423
+ b"recent_activity",
1424
+ ],
1425
+ ) -> None: ...
1426
+
1427
+ global___GetStatisticsResponse = GetStatisticsResponse
1428
+
1429
+ @typing.final
1430
+ class OverallStats(google.protobuf.message.Message):
1431
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1432
+
1433
+ TOTAL_PROVIDERS_FIELD_NUMBER: builtins.int
1434
+ TOTAL_MODELS_FIELD_NUMBER: builtins.int
1435
+ ACTIVE_MODELS_FIELD_NUMBER: builtins.int
1436
+ DEPRECATED_MODELS_FIELD_NUMBER: builtins.int
1437
+ OPEN_SOURCE_MODELS_FIELD_NUMBER: builtins.int
1438
+ LAST_UPDATE_FIELD_NUMBER: builtins.int
1439
+ total_providers: builtins.int
1440
+ total_models: builtins.int
1441
+ active_models: builtins.int
1442
+ deprecated_models: builtins.int
1443
+ open_source_models: builtins.int
1444
+ @property
1445
+ def last_update(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
1446
+ def __init__(
1447
+ self,
1448
+ *,
1449
+ total_providers: builtins.int = ...,
1450
+ total_models: builtins.int = ...,
1451
+ active_models: builtins.int = ...,
1452
+ deprecated_models: builtins.int = ...,
1453
+ open_source_models: builtins.int = ...,
1454
+ last_update: google.protobuf.timestamp_pb2.Timestamp | None = ...,
1455
+ ) -> None: ...
1456
+ def HasField(
1457
+ self, field_name: typing.Literal["last_update", b"last_update"]
1458
+ ) -> builtins.bool: ...
1459
+ def ClearField(
1460
+ self,
1461
+ field_name: typing.Literal[
1462
+ "active_models",
1463
+ b"active_models",
1464
+ "deprecated_models",
1465
+ b"deprecated_models",
1466
+ "last_update",
1467
+ b"last_update",
1468
+ "open_source_models",
1469
+ b"open_source_models",
1470
+ "total_models",
1471
+ b"total_models",
1472
+ "total_providers",
1473
+ b"total_providers",
1474
+ ],
1475
+ ) -> None: ...
1476
+
1477
+ global___OverallStats = OverallStats
1478
+
1479
+ @typing.final
1480
+ class ProviderStats(google.protobuf.message.Message):
1481
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1482
+
1483
+ PROVIDER_NAME_FIELD_NUMBER: builtins.int
1484
+ MODEL_COUNT_FIELD_NUMBER: builtins.int
1485
+ ACTIVE_COUNT_FIELD_NUMBER: builtins.int
1486
+ AVG_INPUT_PRICE_FIELD_NUMBER: builtins.int
1487
+ AVG_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
1488
+ AVG_CONTEXT_WINDOW_FIELD_NUMBER: builtins.int
1489
+ provider_name: builtins.str
1490
+ model_count: builtins.int
1491
+ active_count: builtins.int
1492
+ avg_input_price: builtins.float
1493
+ avg_output_price: builtins.float
1494
+ avg_context_window: builtins.int
1495
+ def __init__(
1496
+ self,
1497
+ *,
1498
+ provider_name: builtins.str = ...,
1499
+ model_count: builtins.int = ...,
1500
+ active_count: builtins.int = ...,
1501
+ avg_input_price: builtins.float = ...,
1502
+ avg_output_price: builtins.float = ...,
1503
+ avg_context_window: builtins.int = ...,
1504
+ ) -> None: ...
1505
+ def ClearField(
1506
+ self,
1507
+ field_name: typing.Literal[
1508
+ "active_count",
1509
+ b"active_count",
1510
+ "avg_context_window",
1511
+ b"avg_context_window",
1512
+ "avg_input_price",
1513
+ b"avg_input_price",
1514
+ "avg_output_price",
1515
+ b"avg_output_price",
1516
+ "model_count",
1517
+ b"model_count",
1518
+ "provider_name",
1519
+ b"provider_name",
1520
+ ],
1521
+ ) -> None: ...
1522
+
1523
+ global___ProviderStats = ProviderStats
1524
+
1525
+ @typing.final
1526
+ class TypeStats(google.protobuf.message.Message):
1527
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1528
+
1529
+ MODEL_TYPE_FIELD_NUMBER: builtins.int
1530
+ COUNT_FIELD_NUMBER: builtins.int
1531
+ PERCENTAGE_FIELD_NUMBER: builtins.int
1532
+ model_type: builtins.str
1533
+ count: builtins.int
1534
+ percentage: builtins.float
1535
+ def __init__(
1536
+ self,
1537
+ *,
1538
+ model_type: builtins.str = ...,
1539
+ count: builtins.int = ...,
1540
+ percentage: builtins.float = ...,
1541
+ ) -> None: ...
1542
+ def ClearField(
1543
+ self,
1544
+ field_name: typing.Literal[
1545
+ "count", b"count", "model_type", b"model_type", "percentage", b"percentage"
1546
+ ],
1547
+ ) -> None: ...
1548
+
1549
+ global___TypeStats = TypeStats
1550
+
1551
+ @typing.final
1552
+ class PricingStats(google.protobuf.message.Message):
1553
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1554
+
1555
+ MIN_INPUT_PRICE_FIELD_NUMBER: builtins.int
1556
+ MAX_INPUT_PRICE_FIELD_NUMBER: builtins.int
1557
+ AVG_INPUT_PRICE_FIELD_NUMBER: builtins.int
1558
+ MEDIAN_INPUT_PRICE_FIELD_NUMBER: builtins.int
1559
+ MIN_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
1560
+ MAX_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
1561
+ AVG_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
1562
+ MEDIAN_OUTPUT_PRICE_FIELD_NUMBER: builtins.int
1563
+ min_input_price: builtins.float
1564
+ max_input_price: builtins.float
1565
+ avg_input_price: builtins.float
1566
+ median_input_price: builtins.float
1567
+ min_output_price: builtins.float
1568
+ max_output_price: builtins.float
1569
+ avg_output_price: builtins.float
1570
+ median_output_price: builtins.float
1571
+ def __init__(
1572
+ self,
1573
+ *,
1574
+ min_input_price: builtins.float = ...,
1575
+ max_input_price: builtins.float = ...,
1576
+ avg_input_price: builtins.float = ...,
1577
+ median_input_price: builtins.float = ...,
1578
+ min_output_price: builtins.float = ...,
1579
+ max_output_price: builtins.float = ...,
1580
+ avg_output_price: builtins.float = ...,
1581
+ median_output_price: builtins.float = ...,
1582
+ ) -> None: ...
1583
+ def ClearField(
1584
+ self,
1585
+ field_name: typing.Literal[
1586
+ "avg_input_price",
1587
+ b"avg_input_price",
1588
+ "avg_output_price",
1589
+ b"avg_output_price",
1590
+ "max_input_price",
1591
+ b"max_input_price",
1592
+ "max_output_price",
1593
+ b"max_output_price",
1594
+ "median_input_price",
1595
+ b"median_input_price",
1596
+ "median_output_price",
1597
+ b"median_output_price",
1598
+ "min_input_price",
1599
+ b"min_input_price",
1600
+ "min_output_price",
1601
+ b"min_output_price",
1602
+ ],
1603
+ ) -> None: ...
1604
+
1605
+ global___PricingStats = PricingStats
1606
+
1607
+ @typing.final
1608
+ class RecentActivity(google.protobuf.message.Message):
1609
+ DESCRIPTOR: google.protobuf.descriptor.Descriptor
1610
+
1611
+ ACTIVITY_TYPE_FIELD_NUMBER: builtins.int
1612
+ DESCRIPTION_FIELD_NUMBER: builtins.int
1613
+ TIMESTAMP_FIELD_NUMBER: builtins.int
1614
+ activity_type: builtins.str
1615
+ """"new_model", "price_change", "deprecation" """
1616
+ description: builtins.str
1617
+ @property
1618
+ def timestamp(self) -> google.protobuf.timestamp_pb2.Timestamp: ...
1619
+ def __init__(
1620
+ self,
1621
+ *,
1622
+ activity_type: builtins.str = ...,
1623
+ description: builtins.str = ...,
1624
+ timestamp: google.protobuf.timestamp_pb2.Timestamp | None = ...,
1625
+ ) -> None: ...
1626
+ def HasField(
1627
+ self, field_name: typing.Literal["timestamp", b"timestamp"]
1628
+ ) -> builtins.bool: ...
1629
+ def ClearField(
1630
+ self,
1631
+ field_name: typing.Literal[
1632
+ "activity_type",
1633
+ b"activity_type",
1634
+ "description",
1635
+ b"description",
1636
+ "timestamp",
1637
+ b"timestamp",
1638
+ ],
1639
+ ) -> None: ...
1640
+
1641
+ global___RecentActivity = RecentActivity