weave-python 0.28.2__py3-none-any.whl → 0.30.4__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.
- weave/weaveapi/auth/v1/service_pb2.py +184 -88
- weave/weaveapi/auth/v1/service_pb2.pyi +1288 -1134
- weave/weaveapi/auth/v1/service_pb2_grpc.pyi +248 -335
- weave/weaveapi/auth/v1/session_pb2.py +12 -4
- weave/weaveapi/auth/v1/session_pb2.pyi +109 -89
- weave/weaveapi/auth/v1/session_pb2_grpc.pyi +11 -10
- weave/weaveapi/auth/v1/usage_pb2.py +16 -12
- weave/weaveapi/auth/v1/usage_pb2.pyi +251 -197
- weave/weaveapi/auth/v1/usage_pb2_grpc.pyi +11 -10
- weave/weaveapi/auth/v1/user_pb2.py +58 -16
- weave/weaveapi/auth/v1/user_pb2.pyi +588 -505
- weave/weaveapi/auth/v1/user_pb2_grpc.pyi +11 -10
- weave/weaveapi/generate/v1/configuration_pb2.py +29 -17
- weave/weaveapi/generate/v1/configuration_pb2.pyi +277 -241
- weave/weaveapi/generate/v1/configuration_pb2_grpc.pyi +11 -10
- weave/weaveapi/generate/v1/generate_pb2.py +30 -4
- weave/weaveapi/generate/v1/generate_pb2.pyi +138 -40
- weave/weaveapi/generate/v1/generate_pb2_grpc.pyi +11 -10
- weave/weaveapi/generate/v1/service_pb2.py +50 -20
- weave/weaveapi/generate/v1/service_pb2.pyi +264 -135
- weave/weaveapi/generate/v1/service_pb2_grpc.py +47 -0
- weave/weaveapi/generate/v1/service_pb2_grpc.pyi +89 -78
- weave/weaveapi/llmx/v1/architecture_pb2.py +3 -3
- weave/weaveapi/llmx/v1/architecture_pb2.pyi +664 -555
- weave/weaveapi/llmx/v1/architecture_pb2_grpc.pyi +11 -10
- weave/weaveapi/llmx/v1/capabilities_pb2.py +86 -54
- weave/weaveapi/llmx/v1/capabilities_pb2.pyi +967 -852
- weave/weaveapi/llmx/v1/capabilities_pb2_grpc.pyi +11 -10
- weave/weaveapi/llmx/v1/model_pb2.py +54 -18
- weave/weaveapi/llmx/v1/model_pb2.pyi +533 -455
- weave/weaveapi/llmx/v1/model_pb2_grpc.pyi +11 -10
- weave/weaveapi/llmx/v1/pricing_pb2.py +22 -18
- weave/weaveapi/llmx/v1/pricing_pb2.pyi +194 -172
- weave/weaveapi/llmx/v1/pricing_pb2_grpc.pyi +11 -10
- weave/weaveapi/llmx/v1/provider_pb2.py +3 -3
- weave/weaveapi/llmx/v1/provider_pb2.pyi +84 -59
- weave/weaveapi/llmx/v1/provider_pb2_grpc.pyi +11 -10
- weave/weaveapi/llmx/v1/service_pb2.py +224 -86
- weave/weaveapi/llmx/v1/service_pb2.pyi +1651 -1403
- weave/weaveapi/llmx/v1/service_pb2_grpc.pyi +160 -203
- weave/weaveapi/mcpregistry/v1/server_pb2.py +14 -8
- weave/weaveapi/mcpregistry/v1/server_pb2.pyi +143 -121
- weave/weaveapi/mcpregistry/v1/server_pb2_grpc.pyi +11 -10
- weave/weaveapi/mcpregistry/v1/service_pb2.py +47 -27
- weave/weaveapi/mcpregistry/v1/service_pb2.pyi +132 -122
- weave/weaveapi/mcpregistry/v1/service_pb2_grpc.pyi +87 -112
- weave/weaveapi/payment/v1/invoice_pb2.py +36 -10
- weave/weaveapi/payment/v1/invoice_pb2.pyi +352 -291
- weave/weaveapi/payment/v1/invoice_pb2_grpc.pyi +11 -10
- weave/weaveapi/payment/v1/service_pb2.py +256 -90
- weave/weaveapi/payment/v1/service_pb2.pyi +1381 -1242
- weave/weaveapi/payment/v1/service_pb2_grpc.pyi +229 -319
- weave/weaveapi/payment/v1/subscription_pb2.py +97 -21
- weave/weaveapi/payment/v1/subscription_pb2.pyi +727 -611
- weave/weaveapi/payment/v1/subscription_pb2_grpc.pyi +11 -10
- weave/weaveapi/storage/v1/auth_pb2.py +3 -3
- weave/weaveapi/storage/v1/auth_pb2.pyi +42 -29
- weave/weaveapi/storage/v1/auth_pb2_grpc.pyi +11 -10
- weave/weaveapi/storage/v1/nosql_database_pb2.py +45 -21
- weave/weaveapi/storage/v1/nosql_database_pb2.pyi +438 -372
- weave/weaveapi/storage/v1/nosql_database_pb2_grpc.pyi +11 -10
- weave/weaveapi/storage/v1/object_store_pb2.py +25 -11
- weave/weaveapi/storage/v1/object_store_pb2.pyi +203 -187
- weave/weaveapi/storage/v1/object_store_pb2_grpc.pyi +11 -10
- weave/weaveapi/storage/v1/service_pb2.py +94 -34
- weave/weaveapi/storage/v1/service_pb2.pyi +414 -357
- weave/weaveapi/storage/v1/service_pb2_grpc.pyi +88 -107
- weave/weaveapi/storage/v1/sql_database_pb2.py +37 -21
- weave/weaveapi/storage/v1/sql_database_pb2.pyi +481 -400
- weave/weaveapi/storage/v1/sql_database_pb2_grpc.pyi +11 -10
- weave/weaveapi/storage/v1/storage_pb2.py +18 -4
- weave/weaveapi/storage/v1/storage_pb2.pyi +79 -70
- weave/weaveapi/storage/v1/storage_pb2_grpc.pyi +11 -10
- weave/weaveapi/synthesize/v1/dataset_pb2.py +10 -8
- weave/weaveapi/synthesize/v1/dataset_pb2.pyi +158 -128
- weave/weaveapi/synthesize/v1/dataset_pb2_grpc.pyi +11 -10
- weave/weaveapi/synthesize/v1/inline_data_pb2.py +4 -4
- weave/weaveapi/synthesize/v1/inline_data_pb2.pyi +31 -27
- weave/weaveapi/synthesize/v1/inline_data_pb2_grpc.pyi +11 -10
- weave/weaveapi/synthesize/v1/relationship_pb2.py +17 -9
- weave/weaveapi/synthesize/v1/relationship_pb2.pyi +67 -64
- weave/weaveapi/synthesize/v1/relationship_pb2_grpc.pyi +11 -10
- weave/weaveapi/synthesize/v1/service_pb2.py +40 -22
- weave/weaveapi/synthesize/v1/service_pb2.pyi +202 -168
- weave/weaveapi/synthesize/v1/service_pb2_grpc.pyi +67 -79
- weave/weaveapi/synthesize/v1/training_pb2.py +17 -11
- weave/weaveapi/synthesize/v1/training_pb2.pyi +119 -106
- weave/weaveapi/synthesize/v1/training_pb2_grpc.pyi +11 -10
- weave/weavesql/llmxdb/capabilities.py +487 -0
- weave/weavesql/llmxdb/changes.py +297 -0
- weave/weavesql/llmxdb/models.py +594 -0
- weave/weavesql/llmxdb/providers.py +348 -0
- weave/weavesql/llmxdb/scraper_runs.py +287 -0
- weave/weavesql/llmxdb/search.py +721 -0
- weave/weavesql/weavedb/dataset.py +75 -0
- weave/weavesql/weavedb/models.py +135 -0
- weave/weavesql/weavedb/relationships.py +72 -0
- weave/weavesql/weavedb/storage.py +113 -0
- weave/weavesql/weavedb/synthesizer.py +107 -0
- {weave_python-0.28.2.dist-info → weave_python-0.30.4.dist-info}/METADATA +3 -3
- weave_python-0.30.4.dist-info/RECORD +131 -0
- {weave_python-0.28.2.dist-info → weave_python-0.30.4.dist-info}/WHEEL +1 -1
- weave_python-0.28.2.dist-info/RECORD +0 -120
- {weave_python-0.28.2.dist-info → weave_python-0.30.4.dist-info}/licenses/LICENSE +0 -0
|
@@ -3,18 +3,19 @@
|
|
|
3
3
|
isort:skip_file
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
-
import abc
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import grpc
|
|
10
|
-
import typing
|
|
6
|
+
from collections import abc as _abc
|
|
7
|
+
from grpc import aio as _aio
|
|
8
|
+
import abc as _abc_1
|
|
9
|
+
import grpc as _grpc
|
|
10
|
+
import typing as _typing
|
|
11
11
|
|
|
12
|
-
_T =
|
|
12
|
+
_T = _typing.TypeVar("_T")
|
|
13
13
|
|
|
14
14
|
class _MaybeAsyncIterator(
|
|
15
|
-
|
|
16
|
-
collections.abc.Iterator[_T],
|
|
17
|
-
metaclass=abc.ABCMeta,
|
|
15
|
+
_abc.AsyncIterator[_T], _abc.Iterator[_T], metaclass=_abc_1.ABCMeta
|
|
18
16
|
): ...
|
|
19
|
-
class _ServicerContext(
|
|
17
|
+
class _ServicerContext(_grpc.ServicerContext, _aio.ServicerContext): # type: ignore[misc, type-arg]
|
|
20
18
|
...
|
|
19
|
+
|
|
20
|
+
GRPC_GENERATED_VERSION: str
|
|
21
|
+
GRPC_VERSION: str
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
3
|
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
4
|
# source: weaveapi/llmx/v1/provider.proto
|
|
5
|
-
# Protobuf Python Version: 6.
|
|
5
|
+
# Protobuf Python Version: 6.33.5
|
|
6
6
|
"""Generated protocol buffer code."""
|
|
7
7
|
|
|
8
8
|
from google.protobuf import descriptor as _descriptor
|
|
@@ -12,7 +12,7 @@ from google.protobuf import symbol_database as _symbol_database
|
|
|
12
12
|
from google.protobuf.internal import builder as _builder
|
|
13
13
|
|
|
14
14
|
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
15
|
-
_runtime_version.Domain.PUBLIC, 6,
|
|
15
|
+
_runtime_version.Domain.PUBLIC, 6, 33, 5, "", "weaveapi/llmx/v1/provider.proto"
|
|
16
16
|
)
|
|
17
17
|
# @@protoc_insertion_point(imports)
|
|
18
18
|
|
|
@@ -20,7 +20,7 @@ _sym_db = _symbol_database.Default()
|
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(
|
|
23
|
-
b'\n\x1fweaveapi/llmx/v1/provider.proto\x12\x10weaveapi.llmx.v1"\x8b\x02\n\x08Provider\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x0bwebsite_url\x18\x05 \x01(\tR\nwebsiteUrl\x12+\n\x11\x64ocumentation_url\x18\x06 \x01(\tR\x10\x64ocumentationUrl\x12\x19\n\x08logo_url\x18\x07 \x01(\tR\x07logoUrl\x12\x1b\n\tis_active\x18\x08 \x01(\x08R\x08isActive\x12\x1f\n\x0bmodel_count\x18\t \x01(\x05R\nmodelCountB\xbd\x01\n\x14\x63om.weaveapi.llmx.v1B\rProviderProtoP\x01Z4github.com/weave-labs/weave-go/weaveapi/llmx/v1;llmx\xa2\x02\x03WLX\xaa\x02\x10Weaveapi.Llmx.V1\xca\x02\x10Weaveapi\\Llmx\\V1\xe2\x02\x1cWeaveapi\\Llmx\\V1\\GPBMetadata\xea\x02\x12Weaveapi::Llmx::V1b\
|
|
23
|
+
b'\n\x1fweaveapi/llmx/v1/provider.proto\x12\x10weaveapi.llmx.v1"\x8b\x02\n\x08Provider\x12\x0e\n\x02id\x18\x01 \x01(\tR\x02id\x12\x12\n\x04slug\x18\x02 \x01(\tR\x04slug\x12\x12\n\x04name\x18\x03 \x01(\tR\x04name\x12 \n\x0b\x64\x65scription\x18\x04 \x01(\tR\x0b\x64\x65scription\x12\x1f\n\x0bwebsite_url\x18\x05 \x01(\tR\nwebsiteUrl\x12+\n\x11\x64ocumentation_url\x18\x06 \x01(\tR\x10\x64ocumentationUrl\x12\x19\n\x08logo_url\x18\x07 \x01(\tR\x07logoUrl\x12\x1b\n\tis_active\x18\x08 \x01(\x08R\x08isActive\x12\x1f\n\x0bmodel_count\x18\t \x01(\x05R\nmodelCountB\xbd\x01\n\x14\x63om.weaveapi.llmx.v1B\rProviderProtoP\x01Z4github.com/weave-labs/weave-go/weaveapi/llmx/v1;llmx\xa2\x02\x03WLX\xaa\x02\x10Weaveapi.Llmx.V1\xca\x02\x10Weaveapi\\Llmx\\V1\xe2\x02\x1cWeaveapi\\Llmx\\V1\\GPBMetadata\xea\x02\x12Weaveapi::Llmx::V1b\x08\x65\x64itionsp\xe8\x07'
|
|
24
24
|
)
|
|
25
25
|
|
|
26
26
|
_globals = globals()
|
|
@@ -3,101 +3,126 @@
|
|
|
3
3
|
isort:skip_file
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
import
|
|
9
|
-
import
|
|
6
|
+
from google.protobuf import descriptor as _descriptor
|
|
7
|
+
from google.protobuf import message as _message
|
|
8
|
+
import builtins as _builtins
|
|
9
|
+
import sys
|
|
10
|
+
import typing as _typing
|
|
10
11
|
|
|
11
|
-
|
|
12
|
+
if sys.version_info >= (3, 10):
|
|
13
|
+
from typing import TypeAlias as _TypeAlias
|
|
14
|
+
else:
|
|
15
|
+
from typing_extensions import TypeAlias as _TypeAlias
|
|
12
16
|
|
|
13
|
-
|
|
14
|
-
|
|
17
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
18
|
+
|
|
19
|
+
@_typing.final
|
|
20
|
+
class Provider(_message.Message):
|
|
15
21
|
"""Provider represents an AI model provider/vendor organization."""
|
|
16
22
|
|
|
17
|
-
DESCRIPTOR:
|
|
23
|
+
DESCRIPTOR: _descriptor.Descriptor
|
|
18
24
|
|
|
19
|
-
ID_FIELD_NUMBER:
|
|
20
|
-
SLUG_FIELD_NUMBER:
|
|
21
|
-
NAME_FIELD_NUMBER:
|
|
22
|
-
DESCRIPTION_FIELD_NUMBER:
|
|
23
|
-
WEBSITE_URL_FIELD_NUMBER:
|
|
24
|
-
DOCUMENTATION_URL_FIELD_NUMBER:
|
|
25
|
-
LOGO_URL_FIELD_NUMBER:
|
|
26
|
-
IS_ACTIVE_FIELD_NUMBER:
|
|
27
|
-
MODEL_COUNT_FIELD_NUMBER:
|
|
28
|
-
id:
|
|
25
|
+
ID_FIELD_NUMBER: _builtins.int
|
|
26
|
+
SLUG_FIELD_NUMBER: _builtins.int
|
|
27
|
+
NAME_FIELD_NUMBER: _builtins.int
|
|
28
|
+
DESCRIPTION_FIELD_NUMBER: _builtins.int
|
|
29
|
+
WEBSITE_URL_FIELD_NUMBER: _builtins.int
|
|
30
|
+
DOCUMENTATION_URL_FIELD_NUMBER: _builtins.int
|
|
31
|
+
LOGO_URL_FIELD_NUMBER: _builtins.int
|
|
32
|
+
IS_ACTIVE_FIELD_NUMBER: _builtins.int
|
|
33
|
+
MODEL_COUNT_FIELD_NUMBER: _builtins.int
|
|
34
|
+
id: _builtins.str
|
|
29
35
|
"""Unique internal identifier for this provider.
|
|
30
36
|
Example: "pvd_01234567-89ab-cdef-0123-456789abcdef"
|
|
31
37
|
"""
|
|
32
|
-
slug:
|
|
38
|
+
slug: _builtins.str
|
|
33
39
|
"""URL-friendly identifier for routing.
|
|
34
40
|
Examples: "openai", "anthropic", "google", "meta"
|
|
35
41
|
Used in paths like /providers/openai
|
|
36
42
|
"""
|
|
37
|
-
name:
|
|
43
|
+
name: _builtins.str
|
|
38
44
|
"""Display name of the provider.
|
|
39
45
|
Examples: "OpenAI", "Anthropic", "Google AI", "Meta AI"
|
|
40
46
|
"""
|
|
41
|
-
description:
|
|
47
|
+
description: _builtins.str
|
|
42
48
|
"""Description of the provider and their focus.
|
|
43
49
|
Example: "OpenAI develops general-purpose AI models including GPT-4,
|
|
44
50
|
DALL-E, and Whisper, focusing on safe and beneficial AI."
|
|
45
51
|
"""
|
|
46
|
-
website_url:
|
|
52
|
+
website_url: _builtins.str
|
|
47
53
|
"""Main website URL.
|
|
48
54
|
Example: "https://openai.com"
|
|
49
55
|
"""
|
|
50
|
-
documentation_url:
|
|
56
|
+
documentation_url: _builtins.str
|
|
51
57
|
"""API documentation URL.
|
|
52
58
|
Example: "https://platform.openai.com/docs"
|
|
53
59
|
"""
|
|
54
|
-
logo_url:
|
|
60
|
+
logo_url: _builtins.str
|
|
55
61
|
"""URL to provider's logo image.
|
|
56
62
|
Example: "https://assets.example.com/logos/openai.svg"
|
|
57
63
|
"""
|
|
58
|
-
is_active:
|
|
64
|
+
is_active: _builtins.bool
|
|
59
65
|
"""Whether provider is currently operational.
|
|
60
66
|
Example: false if provider has shut down or paused service
|
|
61
67
|
"""
|
|
62
|
-
model_count:
|
|
68
|
+
model_count: _builtins.int
|
|
63
69
|
"""Number of models offered by this provider.
|
|
64
70
|
Example: 25 for a provider with 25 different models
|
|
65
71
|
"""
|
|
66
72
|
def __init__(
|
|
67
73
|
self,
|
|
68
74
|
*,
|
|
69
|
-
id:
|
|
70
|
-
slug:
|
|
71
|
-
name:
|
|
72
|
-
description:
|
|
73
|
-
website_url:
|
|
74
|
-
documentation_url:
|
|
75
|
-
logo_url:
|
|
76
|
-
is_active:
|
|
77
|
-
model_count:
|
|
78
|
-
) -> None: ...
|
|
79
|
-
def ClearField(
|
|
80
|
-
self,
|
|
81
|
-
field_name: typing.Literal[
|
|
82
|
-
"description",
|
|
83
|
-
b"description",
|
|
84
|
-
"documentation_url",
|
|
85
|
-
b"documentation_url",
|
|
86
|
-
"id",
|
|
87
|
-
b"id",
|
|
88
|
-
"is_active",
|
|
89
|
-
b"is_active",
|
|
90
|
-
"logo_url",
|
|
91
|
-
b"logo_url",
|
|
92
|
-
"model_count",
|
|
93
|
-
b"model_count",
|
|
94
|
-
"name",
|
|
95
|
-
b"name",
|
|
96
|
-
"slug",
|
|
97
|
-
b"slug",
|
|
98
|
-
"website_url",
|
|
99
|
-
b"website_url",
|
|
100
|
-
],
|
|
75
|
+
id: _builtins.str | None = ...,
|
|
76
|
+
slug: _builtins.str | None = ...,
|
|
77
|
+
name: _builtins.str | None = ...,
|
|
78
|
+
description: _builtins.str | None = ...,
|
|
79
|
+
website_url: _builtins.str | None = ...,
|
|
80
|
+
documentation_url: _builtins.str | None = ...,
|
|
81
|
+
logo_url: _builtins.str | None = ...,
|
|
82
|
+
is_active: _builtins.bool | None = ...,
|
|
83
|
+
model_count: _builtins.int | None = ...,
|
|
101
84
|
) -> None: ...
|
|
85
|
+
_HasFieldArgType: _TypeAlias = _typing.Literal[
|
|
86
|
+
"description",
|
|
87
|
+
b"description",
|
|
88
|
+
"documentation_url",
|
|
89
|
+
b"documentation_url",
|
|
90
|
+
"id",
|
|
91
|
+
b"id",
|
|
92
|
+
"is_active",
|
|
93
|
+
b"is_active",
|
|
94
|
+
"logo_url",
|
|
95
|
+
b"logo_url",
|
|
96
|
+
"model_count",
|
|
97
|
+
b"model_count",
|
|
98
|
+
"name",
|
|
99
|
+
b"name",
|
|
100
|
+
"slug",
|
|
101
|
+
b"slug",
|
|
102
|
+
"website_url",
|
|
103
|
+
b"website_url",
|
|
104
|
+
] # noqa: Y015
|
|
105
|
+
def HasField(self, field_name: _HasFieldArgType) -> _builtins.bool: ...
|
|
106
|
+
_ClearFieldArgType: _TypeAlias = _typing.Literal[
|
|
107
|
+
"description",
|
|
108
|
+
b"description",
|
|
109
|
+
"documentation_url",
|
|
110
|
+
b"documentation_url",
|
|
111
|
+
"id",
|
|
112
|
+
b"id",
|
|
113
|
+
"is_active",
|
|
114
|
+
b"is_active",
|
|
115
|
+
"logo_url",
|
|
116
|
+
b"logo_url",
|
|
117
|
+
"model_count",
|
|
118
|
+
b"model_count",
|
|
119
|
+
"name",
|
|
120
|
+
b"name",
|
|
121
|
+
"slug",
|
|
122
|
+
b"slug",
|
|
123
|
+
"website_url",
|
|
124
|
+
b"website_url",
|
|
125
|
+
] # noqa: Y015
|
|
126
|
+
def ClearField(self, field_name: _ClearFieldArgType) -> None: ...
|
|
102
127
|
|
|
103
|
-
|
|
128
|
+
Global___Provider: _TypeAlias = Provider # noqa: Y015
|
|
@@ -3,18 +3,19 @@
|
|
|
3
3
|
isort:skip_file
|
|
4
4
|
"""
|
|
5
5
|
|
|
6
|
-
import abc
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import grpc
|
|
10
|
-
import typing
|
|
6
|
+
from collections import abc as _abc
|
|
7
|
+
from grpc import aio as _aio
|
|
8
|
+
import abc as _abc_1
|
|
9
|
+
import grpc as _grpc
|
|
10
|
+
import typing as _typing
|
|
11
11
|
|
|
12
|
-
_T =
|
|
12
|
+
_T = _typing.TypeVar("_T")
|
|
13
13
|
|
|
14
14
|
class _MaybeAsyncIterator(
|
|
15
|
-
|
|
16
|
-
collections.abc.Iterator[_T],
|
|
17
|
-
metaclass=abc.ABCMeta,
|
|
15
|
+
_abc.AsyncIterator[_T], _abc.Iterator[_T], metaclass=_abc_1.ABCMeta
|
|
18
16
|
): ...
|
|
19
|
-
class _ServicerContext(
|
|
17
|
+
class _ServicerContext(_grpc.ServicerContext, _aio.ServicerContext): # type: ignore[misc, type-arg]
|
|
20
18
|
...
|
|
19
|
+
|
|
20
|
+
GRPC_GENERATED_VERSION: str
|
|
21
|
+
GRPC_VERSION: str
|