nominal-api-protos 0.978.0__tar.gz → 0.983.0__tar.gz
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.
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/PKG-INFO +1 -1
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/ai/v1/ai_agent_pb2.py +119 -0
- nominal_api_protos-0.978.0/nominal_api_protos/nominal/ai/v1/workbook_agent_pb2.pyi → nominal_api_protos-0.983.0/nominal_api_protos/nominal/ai/v1/ai_agent_pb2.pyi +23 -19
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/ai/v1/ai_agent_pb2_grpc.py +321 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/ai/v1/workbook_agent_pb2.py +41 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/ai/v1/workbook_agent_pb2.pyi +32 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/workbook_agent_pb2_grpc.py +40 -36
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/data_connector_pb2.py +137 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/data_connector_pb2.pyi +222 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/data_connector_pb2_grpc.py +368 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/opc_ua_connector_pb2.py +117 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/opc_ua_connector_pb2.pyi +282 -0
- nominal_api_protos-0.983.0/nominal_api_protos/nominal/data_connector/v1/opc_ua_connector_pb2_grpc.py +24 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/direct_channel_writer/v2/direct_nominal_channel_writer_pb2.py +25 -23
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/direct_channel_writer/v2/direct_nominal_channel_writer_pb2.pyi +10 -2
- nominal_api_protos-0.983.0/nominal_api_protos/nominal_write_pb2.py +70 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal_write_pb2.pyi +40 -2
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos.egg-info/PKG-INFO +1 -1
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos.egg-info/SOURCES.txt +9 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/setup.py +1 -1
- nominal_api_protos-0.978.0/nominal_api_protos/nominal/ai/v1/workbook_agent_pb2.py +0 -117
- nominal_api_protos-0.978.0/nominal_api_protos/nominal_write_pb2.py +0 -60
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/ai_features_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/ai_features_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/ai_features_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/knowledge_base_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/knowledge_base_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/ai/v1/knowledge_base_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/application/v1/application_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/application/v1/application_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/application/v1/application_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authentication/groups/v1/groups_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authentication/groups/v1/groups_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authentication/groups/v1/groups_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/markings/v1/markings_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/markings/v1/markings_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/markings/v1/markings_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/permissions/v1/permissions_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/permissions/v1/permissions_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/permissions/v1/permissions_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/roles/v1/roles_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/roles/v1/roles_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/authorization/roles/v1/roles_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/blob_storage_service/v1/blob_storage_service_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/blob_storage_service/v1/blob_storage_service_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/blob_storage_service/v1/blob_storage_service_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/comments/v1/comments_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/comments/v1/comments_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/comments/v1/comments_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/demo_apps/v1/connect_demo_apps_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/demo_apps/v1/connect_demo_apps_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/demo_apps/v1/connect_demo_apps_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/download/v1/connect_download_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/download/v1/connect_download_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/download/v1/connect_download_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/v1/connect_apps_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/v1/connect_apps_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connect/v1/connect_apps_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connections/v1/external_api_connections_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connections/v1/external_api_connections_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/connections/v1/external_api_connections_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/conversations/v1/conversations_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/conversations/v1/conversations_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/conversations/v1/conversations_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/direct_channel_writer/v2/direct_nominal_channel_writer_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/edge/v1/edge_sync_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/edge/v1/edge_sync_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/edge/v1/edge_sync_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/executions/v1/procedure_executions_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/executions/v1/procedure_executions_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/executions/v1/procedure_executions_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/id_format_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/id_format_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/id_format_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/procedures_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/procedures_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/procedures/v1/procedures_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/scout/elements/v1/elements_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/scout/elements/v1/elements_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/scout/elements/v1/elements_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/opc_ua_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/opc_ua_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/opc_ua_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/streaming_connection_service_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/streaming_connection_service_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/streaming_connection_service/v1/streaming_connection_service_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/series/series_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/series/series_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/series/series_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/time/time_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/time/time_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/time/time_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/types_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/types_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/types/types_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/units/v1/units_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/units/v1/units_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/units/v1/units_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/versioning/v1/versioning_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/versioning/v1/versioning_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/versioning/v1/versioning_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/workspaces/v1/workspaces_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/workspaces/v1/workspaces_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal/workspaces/v1/workspaces_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/nominal_write_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/prometheus_remote_write_pb2.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/prometheus_remote_write_pb2.pyi +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/prometheus_remote_write_pb2_grpc.py +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos/py.typed +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos.egg-info/dependency_links.txt +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos.egg-info/requires.txt +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/nominal_api_protos.egg-info/top_level.txt +0 -0
- {nominal_api_protos-0.978.0 → nominal_api_protos-0.983.0}/setup.cfg +0 -0
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: nominal/ai/v1/ai_agent.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'nominal/ai/v1/ai_agent.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from google.protobuf import timestamp_pb2 as google_dot_protobuf_dot_timestamp__pb2
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\x1cnominal/ai/v1/ai_agent.proto\x12\rnominal.ai.v1\x1a\x1fgoogle/protobuf/timestamp.proto\"\xc8\x01\n\x11StreamChatRequest\x12\x18\n\x10\x63onversation_rid\x18\x01 \x01(\t\x12\x30\n\x07message\x18\x02 \x01(\x0b\x32\x1f.nominal.ai.v1.UserModelMessage\x12(\n\x06images\x18\x03 \x03(\x0b\x32\x18.nominal.ai.v1.ImagePart\x12\x32\n\x08workbook\x18\x04 \x01(\x0b\x32\x1e.nominal.ai.v1.WorkbookContextH\x00\x42\t\n\x07\x63ontext\"z\n\x0fWorkbookContext\x12\x14\n\x0cworkbook_rid\x18\x01 \x01(\t\x12?\n\ruser_presence\x18\x02 \x01(\x0b\x32#.nominal.ai.v1.WorkbookUserPresenceH\x00\x88\x01\x01\x42\x10\n\x0e_user_presence\"t\n\x14WorkbookUserPresence\x12\x16\n\ttab_index\x18\x01 \x01(\x05H\x00\x88\x01\x01\x12,\n\x05range\x18\x02 \x01(\x0b\x32\x18.nominal.ai.v1.TimeRangeH\x01\x88\x01\x01\x42\x0c\n\n_tab_indexB\x08\n\x06_range\"\xb7\x01\n\x19\x43reateConversationRequest\x12\r\n\x05title\x18\x01 \x01(\t\x12\x15\n\rworkspace_rid\x18\x02 \x01(\t\x12!\n\x14old_conversation_rid\x18\x03 \x01(\tH\x00\x88\x01\x01\x12 \n\x13previous_message_id\x18\x04 \x01(\tH\x01\x88\x01\x01\x42\x17\n\x15_old_conversation_ridB\x16\n\x14_previous_message_id\":\n\x1a\x43reateConversationResponse\x12\x1c\n\x14new_conversation_rid\x18\x01 \x01(\t\"L\n!UpdateConversationMetadataRequest\x12\r\n\x05title\x18\x01 \x01(\t\x12\x18\n\x10\x63onversation_rid\x18\x02 \x01(\t\"$\n\"UpdateConversationMetadataResponse\"5\n\x19\x44\x65leteConversationRequest\x12\x18\n\x10\x63onversation_rid\x18\x01 \x01(\t\"\x1c\n\x1a\x44\x65leteConversationResponse\"\xa6\x01\n\x16GetConversationRequest\x12\x18\n\x10\x63onversation_rid\x18\x01 \x01(\t\x12\"\n\x15page_start_message_id\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x1e\n\x11max_message_count\x18\x03 \x01(\x05H\x01\x88\x01\x01\x42\x18\n\x16_page_start_message_idB\x14\n\x12_max_message_count\"\x95\x01\n\x12ModelMessageWithId\x12.\n\x07message\x18\x01 \x01(\x0b\x32\x1b.nominal.ai.v1.ModelMessageH\x00\x12\x30\n\x0btool_action\x18\x02 \x01(\x0b\x32\x19.nominal.ai.v1.ToolActionH\x00\x12\x12\n\nmessage_id\x18\x03 \x01(\tB\t\n\x07\x63ontent\"V\n\x17GetConversationResponse\x12;\n\x10ordered_messages\x18\x01 \x03(\x0b\x32!.nominal.ai.v1.ModelMessageWithId\"1\n\x18ListConversationsRequest\x12\x15\n\rworkspace_rid\x18\x01 \x01(\t\"\xa4\x01\n\x14\x43onversationMetadata\x12\x18\n\x10\x63onversation_rid\x18\x01 \x01(\t\x12\r\n\x05title\x18\x02 \x01(\t\x12.\n\ncreated_at\x18\x03 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\x12\x33\n\x0flast_updated_at\x18\x04 \x01(\x0b\x32\x1a.google.protobuf.Timestamp\"W\n\x19ListConversationsResponse\x12:\n\rconversations\x18\x01 \x03(\x0b\x32#.nominal.ai.v1.ConversationMetadata\"g\n\tTimeRange\x12-\n\x0brange_start\x18\x01 \x01(\x0b\x32\x18.nominal.ai.v1.Timestamp\x12+\n\trange_end\x18\x02 \x01(\x0b\x32\x18.nominal.ai.v1.Timestamp\"1\n\tTimestamp\x12\x0f\n\x07seconds\x18\x01 \x01(\x05\x12\x13\n\x0bnanoseconds\x18\x02 \x01(\x05\"\x82\x01\n\x0cModelMessage\x12/\n\x04user\x18\x01 \x01(\x0b\x32\x1f.nominal.ai.v1.UserModelMessageH\x00\x12\x39\n\tassistant\x18\x02 \x01(\x0b\x32$.nominal.ai.v1.AssistantModelMessageH\x00\x42\x06\n\x04kind\"@\n\x10UserModelMessage\x12,\n\x04text\x18\x01 \x03(\x0b\x32\x1e.nominal.ai.v1.UserContentPart\"S\n\x15\x41ssistantModelMessage\x12:\n\rcontent_parts\x18\x01 \x03(\x0b\x32#.nominal.ai.v1.AssistantContentPart\"B\n\x0fUserContentPart\x12\'\n\x04text\x18\x01 \x01(\x0b\x32\x17.nominal.ai.v1.TextPartH\x00\x42\x06\n\x04part\"z\n\x14\x41ssistantContentPart\x12\'\n\x04text\x18\x01 \x01(\x0b\x32\x17.nominal.ai.v1.TextPartH\x00\x12\x31\n\treasoning\x18\x02 \x01(\x0b\x32\x1c.nominal.ai.v1.ReasoningPartH\x00\x42\x06\n\x04part\"\x18\n\x08TextPart\x12\x0c\n\x04text\x18\x01 \x01(\t\"e\n\tImagePart\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x17\n\nmedia_type\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x15\n\x08\x66ilename\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\r\n\x0b_media_typeB\x0b\n\t_filename\"\"\n\rReasoningPart\x12\x11\n\treasoning\x18\x01 \x01(\t\"\x96\x04\n\x12StreamChatResponse\x12\'\n\x06\x66inish\x18\x01 \x01(\x0b\x32\x15.nominal.ai.v1.FinishH\x00\x12%\n\x05\x65rror\x18\x02 \x01(\x0b\x32\x14.nominal.ai.v1.ErrorH\x00\x12.\n\ntext_start\x18\x03 \x01(\x0b\x32\x18.nominal.ai.v1.TextStartH\x00\x12.\n\ntext_delta\x18\x04 \x01(\x0b\x32\x18.nominal.ai.v1.TextDeltaH\x00\x12*\n\x08text_end\x18\x05 \x01(\x0b\x32\x16.nominal.ai.v1.TextEndH\x00\x12\x38\n\x0freasoning_start\x18\x06 \x01(\x0b\x32\x1d.nominal.ai.v1.ReasoningStartH\x00\x12\x38\n\x0freasoning_delta\x18\x07 \x01(\x0b\x32\x1d.nominal.ai.v1.ReasoningDeltaH\x00\x12\x34\n\rreasoning_end\x18\x08 \x01(\x0b\x32\x1b.nominal.ai.v1.ReasoningEndH\x00\x12<\n\x11workbook_mutation\x18\t \x01(\x0b\x32\x1f.nominal.ai.v1.WorkbookMutationH\x00\x12\x30\n\x0btool_action\x18\n \x01(\x0b\x32\x19.nominal.ai.v1.ToolActionH\x00\x42\n\n\x08response\"%\n\x06\x46inish\x12\x1b\n\x13ordered_message_ids\x18\x01 \x03(\t\"\x18\n\x05\x45rror\x12\x0f\n\x07message\x18\x01 \x01(\t\"\x17\n\tTextStart\x12\n\n\x02id\x18\x01 \x01(\t\"&\n\tTextDelta\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x64\x65lta\x18\x02 \x01(\t\"\x15\n\x07TextEnd\x12\n\n\x02id\x18\x01 \x01(\t\"\x1c\n\x0eReasoningStart\x12\n\n\x02id\x18\x01 \x01(\t\"+\n\x0eReasoningDelta\x12\n\n\x02id\x18\x01 \x01(\t\x12\r\n\x05\x64\x65lta\x18\x02 \x01(\t\"\x1a\n\x0cReasoningEnd\x12\n\n\x02id\x18\x01 \x01(\t\"4\n\x0e\x41\x64\x64TabMutation\x12\x15\n\x08tab_name\x18\x01 \x01(\tH\x00\x88\x01\x01\x42\x0b\n\t_tab_name\"V\n\x18\x41\x64\x64OrUpdatePanelMutation\x12\x15\n\rpanel_as_json\x18\x01 \x01(\t\x12\x10\n\x08panel_id\x18\x02 \x01(\t\x12\x11\n\ttab_index\x18\x03 \x01(\x05\")\n\x14RemovePanelsMutation\x12\x11\n\tpanel_ids\x18\x01 \x03(\t\"\x96\x01\n\x1c\x41\x64\x64OrReplaceVariableMutation\x12\x1c\n\x14\x63ompute_spec_as_json\x18\x01 \x01(\t\x12\x1a\n\rvariable_name\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x19\n\x0c\x64isplay_name\x18\x03 \x01(\tH\x01\x88\x01\x01\x42\x10\n\x0e_variable_nameB\x0f\n\r_display_name\"1\n\x17\x44\x65leteVariablesMutation\x12\x16\n\x0evariable_names\x18\x01 \x03(\t\"\xf6\x02\n\x10WorkbookMutation\x12\n\n\x02id\x18\x01 \x01(\t\x12\x30\n\x07\x61\x64\x64_tab\x18\x02 \x01(\x0b\x32\x1d.nominal.ai.v1.AddTabMutationH\x00\x12\x46\n\x13\x61\x64\x64_or_update_panel\x18\x03 \x01(\x0b\x32\'.nominal.ai.v1.AddOrUpdatePanelMutationH\x00\x12<\n\rremove_panels\x18\x04 \x01(\x0b\x32#.nominal.ai.v1.RemovePanelsMutationH\x00\x12N\n\x17\x61\x64\x64_or_replace_variable\x18\x05 \x01(\x0b\x32+.nominal.ai.v1.AddOrReplaceVariableMutationH\x00\x12\x42\n\x10\x64\x65lete_variables\x18\x06 \x01(\x0b\x32&.nominal.ai.v1.DeleteVariablesMutationH\x00\x42\n\n\x08mutation\"\\\n\nToolAction\x12\n\n\x02id\x18\x01 \x01(\t\x12\x18\n\x10tool_action_verb\x18\x02 \x01(\t\x12\x18\n\x0btool_target\x18\x03 \x01(\tH\x00\x88\x01\x01\x42\x0e\n\x0c_tool_target2\x89\x05\n\x0e\x41IAgentService\x12S\n\nStreamChat\x12 .nominal.ai.v1.StreamChatRequest\x1a!.nominal.ai.v1.StreamChatResponse0\x01\x12`\n\x0fGetConversation\x12%.nominal.ai.v1.GetConversationRequest\x1a&.nominal.ai.v1.GetConversationResponse\x12\x66\n\x11ListConversations\x12\'.nominal.ai.v1.ListConversationsRequest\x1a(.nominal.ai.v1.ListConversationsResponse\x12i\n\x12\x43reateConversation\x12(.nominal.ai.v1.CreateConversationRequest\x1a).nominal.ai.v1.CreateConversationResponse\x12\x81\x01\n\x1aUpdateConversationMetadata\x12\x30.nominal.ai.v1.UpdateConversationMetadataRequest\x1a\x31.nominal.ai.v1.UpdateConversationMetadataResponse\x12i\n\x12\x44\x65leteConversation\x12(.nominal.ai.v1.DeleteConversationRequest\x1a).nominal.ai.v1.DeleteConversationResponseb\x06proto3')
|
|
29
|
+
|
|
30
|
+
_globals = globals()
|
|
31
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
32
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'nominal.ai.v1.ai_agent_pb2', _globals)
|
|
33
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
34
|
+
DESCRIPTOR._loaded_options = None
|
|
35
|
+
_globals['_STREAMCHATREQUEST']._serialized_start=81
|
|
36
|
+
_globals['_STREAMCHATREQUEST']._serialized_end=281
|
|
37
|
+
_globals['_WORKBOOKCONTEXT']._serialized_start=283
|
|
38
|
+
_globals['_WORKBOOKCONTEXT']._serialized_end=405
|
|
39
|
+
_globals['_WORKBOOKUSERPRESENCE']._serialized_start=407
|
|
40
|
+
_globals['_WORKBOOKUSERPRESENCE']._serialized_end=523
|
|
41
|
+
_globals['_CREATECONVERSATIONREQUEST']._serialized_start=526
|
|
42
|
+
_globals['_CREATECONVERSATIONREQUEST']._serialized_end=709
|
|
43
|
+
_globals['_CREATECONVERSATIONRESPONSE']._serialized_start=711
|
|
44
|
+
_globals['_CREATECONVERSATIONRESPONSE']._serialized_end=769
|
|
45
|
+
_globals['_UPDATECONVERSATIONMETADATAREQUEST']._serialized_start=771
|
|
46
|
+
_globals['_UPDATECONVERSATIONMETADATAREQUEST']._serialized_end=847
|
|
47
|
+
_globals['_UPDATECONVERSATIONMETADATARESPONSE']._serialized_start=849
|
|
48
|
+
_globals['_UPDATECONVERSATIONMETADATARESPONSE']._serialized_end=885
|
|
49
|
+
_globals['_DELETECONVERSATIONREQUEST']._serialized_start=887
|
|
50
|
+
_globals['_DELETECONVERSATIONREQUEST']._serialized_end=940
|
|
51
|
+
_globals['_DELETECONVERSATIONRESPONSE']._serialized_start=942
|
|
52
|
+
_globals['_DELETECONVERSATIONRESPONSE']._serialized_end=970
|
|
53
|
+
_globals['_GETCONVERSATIONREQUEST']._serialized_start=973
|
|
54
|
+
_globals['_GETCONVERSATIONREQUEST']._serialized_end=1139
|
|
55
|
+
_globals['_MODELMESSAGEWITHID']._serialized_start=1142
|
|
56
|
+
_globals['_MODELMESSAGEWITHID']._serialized_end=1291
|
|
57
|
+
_globals['_GETCONVERSATIONRESPONSE']._serialized_start=1293
|
|
58
|
+
_globals['_GETCONVERSATIONRESPONSE']._serialized_end=1379
|
|
59
|
+
_globals['_LISTCONVERSATIONSREQUEST']._serialized_start=1381
|
|
60
|
+
_globals['_LISTCONVERSATIONSREQUEST']._serialized_end=1430
|
|
61
|
+
_globals['_CONVERSATIONMETADATA']._serialized_start=1433
|
|
62
|
+
_globals['_CONVERSATIONMETADATA']._serialized_end=1597
|
|
63
|
+
_globals['_LISTCONVERSATIONSRESPONSE']._serialized_start=1599
|
|
64
|
+
_globals['_LISTCONVERSATIONSRESPONSE']._serialized_end=1686
|
|
65
|
+
_globals['_TIMERANGE']._serialized_start=1688
|
|
66
|
+
_globals['_TIMERANGE']._serialized_end=1791
|
|
67
|
+
_globals['_TIMESTAMP']._serialized_start=1793
|
|
68
|
+
_globals['_TIMESTAMP']._serialized_end=1842
|
|
69
|
+
_globals['_MODELMESSAGE']._serialized_start=1845
|
|
70
|
+
_globals['_MODELMESSAGE']._serialized_end=1975
|
|
71
|
+
_globals['_USERMODELMESSAGE']._serialized_start=1977
|
|
72
|
+
_globals['_USERMODELMESSAGE']._serialized_end=2041
|
|
73
|
+
_globals['_ASSISTANTMODELMESSAGE']._serialized_start=2043
|
|
74
|
+
_globals['_ASSISTANTMODELMESSAGE']._serialized_end=2126
|
|
75
|
+
_globals['_USERCONTENTPART']._serialized_start=2128
|
|
76
|
+
_globals['_USERCONTENTPART']._serialized_end=2194
|
|
77
|
+
_globals['_ASSISTANTCONTENTPART']._serialized_start=2196
|
|
78
|
+
_globals['_ASSISTANTCONTENTPART']._serialized_end=2318
|
|
79
|
+
_globals['_TEXTPART']._serialized_start=2320
|
|
80
|
+
_globals['_TEXTPART']._serialized_end=2344
|
|
81
|
+
_globals['_IMAGEPART']._serialized_start=2346
|
|
82
|
+
_globals['_IMAGEPART']._serialized_end=2447
|
|
83
|
+
_globals['_REASONINGPART']._serialized_start=2449
|
|
84
|
+
_globals['_REASONINGPART']._serialized_end=2483
|
|
85
|
+
_globals['_STREAMCHATRESPONSE']._serialized_start=2486
|
|
86
|
+
_globals['_STREAMCHATRESPONSE']._serialized_end=3020
|
|
87
|
+
_globals['_FINISH']._serialized_start=3022
|
|
88
|
+
_globals['_FINISH']._serialized_end=3059
|
|
89
|
+
_globals['_ERROR']._serialized_start=3061
|
|
90
|
+
_globals['_ERROR']._serialized_end=3085
|
|
91
|
+
_globals['_TEXTSTART']._serialized_start=3087
|
|
92
|
+
_globals['_TEXTSTART']._serialized_end=3110
|
|
93
|
+
_globals['_TEXTDELTA']._serialized_start=3112
|
|
94
|
+
_globals['_TEXTDELTA']._serialized_end=3150
|
|
95
|
+
_globals['_TEXTEND']._serialized_start=3152
|
|
96
|
+
_globals['_TEXTEND']._serialized_end=3173
|
|
97
|
+
_globals['_REASONINGSTART']._serialized_start=3175
|
|
98
|
+
_globals['_REASONINGSTART']._serialized_end=3203
|
|
99
|
+
_globals['_REASONINGDELTA']._serialized_start=3205
|
|
100
|
+
_globals['_REASONINGDELTA']._serialized_end=3248
|
|
101
|
+
_globals['_REASONINGEND']._serialized_start=3250
|
|
102
|
+
_globals['_REASONINGEND']._serialized_end=3276
|
|
103
|
+
_globals['_ADDTABMUTATION']._serialized_start=3278
|
|
104
|
+
_globals['_ADDTABMUTATION']._serialized_end=3330
|
|
105
|
+
_globals['_ADDORUPDATEPANELMUTATION']._serialized_start=3332
|
|
106
|
+
_globals['_ADDORUPDATEPANELMUTATION']._serialized_end=3418
|
|
107
|
+
_globals['_REMOVEPANELSMUTATION']._serialized_start=3420
|
|
108
|
+
_globals['_REMOVEPANELSMUTATION']._serialized_end=3461
|
|
109
|
+
_globals['_ADDORREPLACEVARIABLEMUTATION']._serialized_start=3464
|
|
110
|
+
_globals['_ADDORREPLACEVARIABLEMUTATION']._serialized_end=3614
|
|
111
|
+
_globals['_DELETEVARIABLESMUTATION']._serialized_start=3616
|
|
112
|
+
_globals['_DELETEVARIABLESMUTATION']._serialized_end=3665
|
|
113
|
+
_globals['_WORKBOOKMUTATION']._serialized_start=3668
|
|
114
|
+
_globals['_WORKBOOKMUTATION']._serialized_end=4042
|
|
115
|
+
_globals['_TOOLACTION']._serialized_start=4044
|
|
116
|
+
_globals['_TOOLACTION']._serialized_end=4136
|
|
117
|
+
_globals['_AIAGENTSERVICE']._serialized_start=4139
|
|
118
|
+
_globals['_AIAGENTSERVICE']._serialized_end=4788
|
|
119
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -10,28 +10,32 @@ from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
|
10
10
|
DESCRIPTOR: _descriptor.FileDescriptor
|
|
11
11
|
|
|
12
12
|
class StreamChatRequest(_message.Message):
|
|
13
|
-
__slots__ = ("
|
|
14
|
-
|
|
15
|
-
NOTEBOOK_AS_JSON_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
-
SELECTED_TAB_INDEX_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
-
IMAGES_FIELD_NUMBER: _ClassVar[int]
|
|
18
|
-
RANGE_FIELD_NUMBER: _ClassVar[int]
|
|
13
|
+
__slots__ = ("conversation_rid", "message", "images", "workbook")
|
|
14
|
+
CONVERSATION_RID_FIELD_NUMBER: _ClassVar[int]
|
|
19
15
|
MESSAGE_FIELD_NUMBER: _ClassVar[int]
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
16
|
+
IMAGES_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
+
WORKBOOK_FIELD_NUMBER: _ClassVar[int]
|
|
18
|
+
conversation_rid: str
|
|
19
|
+
message: UserModelMessage
|
|
23
20
|
images: _containers.RepeatedCompositeFieldContainer[ImagePart]
|
|
21
|
+
workbook: WorkbookContext
|
|
22
|
+
def __init__(self, conversation_rid: _Optional[str] = ..., message: _Optional[_Union[UserModelMessage, _Mapping]] = ..., images: _Optional[_Iterable[_Union[ImagePart, _Mapping]]] = ..., workbook: _Optional[_Union[WorkbookContext, _Mapping]] = ...) -> None: ...
|
|
23
|
+
|
|
24
|
+
class WorkbookContext(_message.Message):
|
|
25
|
+
__slots__ = ("workbook_rid", "user_presence")
|
|
26
|
+
WORKBOOK_RID_FIELD_NUMBER: _ClassVar[int]
|
|
27
|
+
USER_PRESENCE_FIELD_NUMBER: _ClassVar[int]
|
|
28
|
+
workbook_rid: str
|
|
29
|
+
user_presence: WorkbookUserPresence
|
|
30
|
+
def __init__(self, workbook_rid: _Optional[str] = ..., user_presence: _Optional[_Union[WorkbookUserPresence, _Mapping]] = ...) -> None: ...
|
|
31
|
+
|
|
32
|
+
class WorkbookUserPresence(_message.Message):
|
|
33
|
+
__slots__ = ("tab_index", "range")
|
|
34
|
+
TAB_INDEX_FIELD_NUMBER: _ClassVar[int]
|
|
35
|
+
RANGE_FIELD_NUMBER: _ClassVar[int]
|
|
36
|
+
tab_index: int
|
|
24
37
|
range: TimeRange
|
|
25
|
-
|
|
26
|
-
def __init__(self, messages: _Optional[_Iterable[_Union[ModelMessage, _Mapping]]] = ..., notebook_as_json: _Optional[str] = ..., selected_tab_index: _Optional[int] = ..., images: _Optional[_Iterable[_Union[ImagePart, _Mapping]]] = ..., range: _Optional[_Union[TimeRange, _Mapping]] = ..., message: _Optional[_Union[AppendMessage, _Mapping]] = ...) -> None: ...
|
|
27
|
-
|
|
28
|
-
class AppendMessage(_message.Message):
|
|
29
|
-
__slots__ = ("message", "conversation_rid")
|
|
30
|
-
MESSAGE_FIELD_NUMBER: _ClassVar[int]
|
|
31
|
-
CONVERSATION_RID_FIELD_NUMBER: _ClassVar[int]
|
|
32
|
-
message: UserModelMessage
|
|
33
|
-
conversation_rid: str
|
|
34
|
-
def __init__(self, message: _Optional[_Union[UserModelMessage, _Mapping]] = ..., conversation_rid: _Optional[str] = ...) -> None: ...
|
|
38
|
+
def __init__(self, tab_index: _Optional[int] = ..., range: _Optional[_Union[TimeRange, _Mapping]] = ...) -> None: ...
|
|
35
39
|
|
|
36
40
|
class CreateConversationRequest(_message.Message):
|
|
37
41
|
__slots__ = ("title", "workspace_rid", "old_conversation_rid", "previous_message_id")
|
|
@@ -0,0 +1,321 @@
|
|
|
1
|
+
# Generated by the gRPC Python protocol compiler plugin. DO NOT EDIT!
|
|
2
|
+
"""Client and server classes corresponding to protobuf-defined services."""
|
|
3
|
+
import grpc
|
|
4
|
+
import warnings
|
|
5
|
+
|
|
6
|
+
from nominal.ai.v1 import ai_agent_pb2 as nominal_dot_ai_dot_v1_dot_ai__agent__pb2
|
|
7
|
+
|
|
8
|
+
GRPC_GENERATED_VERSION = '1.76.0'
|
|
9
|
+
GRPC_VERSION = grpc.__version__
|
|
10
|
+
_version_not_supported = False
|
|
11
|
+
|
|
12
|
+
try:
|
|
13
|
+
from grpc._utilities import first_version_is_lower
|
|
14
|
+
_version_not_supported = first_version_is_lower(GRPC_VERSION, GRPC_GENERATED_VERSION)
|
|
15
|
+
except ImportError:
|
|
16
|
+
_version_not_supported = True
|
|
17
|
+
|
|
18
|
+
if _version_not_supported:
|
|
19
|
+
raise RuntimeError(
|
|
20
|
+
f'The grpc package installed is at version {GRPC_VERSION},'
|
|
21
|
+
+ ' but the generated code in nominal/ai/v1/ai_agent_pb2_grpc.py depends on'
|
|
22
|
+
+ f' grpcio>={GRPC_GENERATED_VERSION}.'
|
|
23
|
+
+ f' Please upgrade your grpc module to grpcio>={GRPC_GENERATED_VERSION}'
|
|
24
|
+
+ f' or downgrade your generated code using grpcio-tools<={GRPC_VERSION}.'
|
|
25
|
+
)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class AIAgentServiceStub(object):
|
|
29
|
+
"""AIAgentService provides AI-powered assistance for general operations
|
|
30
|
+
"""
|
|
31
|
+
|
|
32
|
+
def __init__(self, channel):
|
|
33
|
+
"""Constructor.
|
|
34
|
+
|
|
35
|
+
Args:
|
|
36
|
+
channel: A grpc.Channel.
|
|
37
|
+
"""
|
|
38
|
+
self.StreamChat = channel.unary_stream(
|
|
39
|
+
'/nominal.ai.v1.AIAgentService/StreamChat',
|
|
40
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatRequest.SerializeToString,
|
|
41
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatResponse.FromString,
|
|
42
|
+
_registered_method=True)
|
|
43
|
+
self.GetConversation = channel.unary_unary(
|
|
44
|
+
'/nominal.ai.v1.AIAgentService/GetConversation',
|
|
45
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationRequest.SerializeToString,
|
|
46
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationResponse.FromString,
|
|
47
|
+
_registered_method=True)
|
|
48
|
+
self.ListConversations = channel.unary_unary(
|
|
49
|
+
'/nominal.ai.v1.AIAgentService/ListConversations',
|
|
50
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsRequest.SerializeToString,
|
|
51
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsResponse.FromString,
|
|
52
|
+
_registered_method=True)
|
|
53
|
+
self.CreateConversation = channel.unary_unary(
|
|
54
|
+
'/nominal.ai.v1.AIAgentService/CreateConversation',
|
|
55
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationRequest.SerializeToString,
|
|
56
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationResponse.FromString,
|
|
57
|
+
_registered_method=True)
|
|
58
|
+
self.UpdateConversationMetadata = channel.unary_unary(
|
|
59
|
+
'/nominal.ai.v1.AIAgentService/UpdateConversationMetadata',
|
|
60
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataRequest.SerializeToString,
|
|
61
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataResponse.FromString,
|
|
62
|
+
_registered_method=True)
|
|
63
|
+
self.DeleteConversation = channel.unary_unary(
|
|
64
|
+
'/nominal.ai.v1.AIAgentService/DeleteConversation',
|
|
65
|
+
request_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationRequest.SerializeToString,
|
|
66
|
+
response_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationResponse.FromString,
|
|
67
|
+
_registered_method=True)
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
class AIAgentServiceServicer(object):
|
|
71
|
+
"""AIAgentService provides AI-powered assistance for general operations
|
|
72
|
+
"""
|
|
73
|
+
|
|
74
|
+
def StreamChat(self, request, context):
|
|
75
|
+
"""StreamChat handles bidirectional streaming chat for AI agent
|
|
76
|
+
"""
|
|
77
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
78
|
+
context.set_details('Method not implemented!')
|
|
79
|
+
raise NotImplementedError('Method not implemented!')
|
|
80
|
+
|
|
81
|
+
def GetConversation(self, request, context):
|
|
82
|
+
"""GetConversation handles getting a complete conversation list, with an optional limit on number of messages returned
|
|
83
|
+
"""
|
|
84
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
85
|
+
context.set_details('Method not implemented!')
|
|
86
|
+
raise NotImplementedError('Method not implemented!')
|
|
87
|
+
|
|
88
|
+
def ListConversations(self, request, context):
|
|
89
|
+
"""ListConversations handles getting the list of conversation ids ordered by most recently updated
|
|
90
|
+
"""
|
|
91
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
92
|
+
context.set_details('Method not implemented!')
|
|
93
|
+
raise NotImplementedError('Method not implemented!')
|
|
94
|
+
|
|
95
|
+
def CreateConversation(self, request, context):
|
|
96
|
+
"""CreateConversation handles creating a conversation and assigning it a conversation rid
|
|
97
|
+
"""
|
|
98
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
99
|
+
context.set_details('Method not implemented!')
|
|
100
|
+
raise NotImplementedError('Method not implemented!')
|
|
101
|
+
|
|
102
|
+
def UpdateConversationMetadata(self, request, context):
|
|
103
|
+
"""UpdateConversationMetadata handles updating any metadata associated with a conversation
|
|
104
|
+
"""
|
|
105
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
106
|
+
context.set_details('Method not implemented!')
|
|
107
|
+
raise NotImplementedError('Method not implemented!')
|
|
108
|
+
|
|
109
|
+
def DeleteConversation(self, request, context):
|
|
110
|
+
"""DeleteConversation handles deleting a specific conversation by conversation rid
|
|
111
|
+
"""
|
|
112
|
+
context.set_code(grpc.StatusCode.UNIMPLEMENTED)
|
|
113
|
+
context.set_details('Method not implemented!')
|
|
114
|
+
raise NotImplementedError('Method not implemented!')
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
def add_AIAgentServiceServicer_to_server(servicer, server):
|
|
118
|
+
rpc_method_handlers = {
|
|
119
|
+
'StreamChat': grpc.unary_stream_rpc_method_handler(
|
|
120
|
+
servicer.StreamChat,
|
|
121
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatRequest.FromString,
|
|
122
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatResponse.SerializeToString,
|
|
123
|
+
),
|
|
124
|
+
'GetConversation': grpc.unary_unary_rpc_method_handler(
|
|
125
|
+
servicer.GetConversation,
|
|
126
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationRequest.FromString,
|
|
127
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationResponse.SerializeToString,
|
|
128
|
+
),
|
|
129
|
+
'ListConversations': grpc.unary_unary_rpc_method_handler(
|
|
130
|
+
servicer.ListConversations,
|
|
131
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsRequest.FromString,
|
|
132
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsResponse.SerializeToString,
|
|
133
|
+
),
|
|
134
|
+
'CreateConversation': grpc.unary_unary_rpc_method_handler(
|
|
135
|
+
servicer.CreateConversation,
|
|
136
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationRequest.FromString,
|
|
137
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationResponse.SerializeToString,
|
|
138
|
+
),
|
|
139
|
+
'UpdateConversationMetadata': grpc.unary_unary_rpc_method_handler(
|
|
140
|
+
servicer.UpdateConversationMetadata,
|
|
141
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataRequest.FromString,
|
|
142
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataResponse.SerializeToString,
|
|
143
|
+
),
|
|
144
|
+
'DeleteConversation': grpc.unary_unary_rpc_method_handler(
|
|
145
|
+
servicer.DeleteConversation,
|
|
146
|
+
request_deserializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationRequest.FromString,
|
|
147
|
+
response_serializer=nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationResponse.SerializeToString,
|
|
148
|
+
),
|
|
149
|
+
}
|
|
150
|
+
generic_handler = grpc.method_handlers_generic_handler(
|
|
151
|
+
'nominal.ai.v1.AIAgentService', rpc_method_handlers)
|
|
152
|
+
server.add_generic_rpc_handlers((generic_handler,))
|
|
153
|
+
server.add_registered_method_handlers('nominal.ai.v1.AIAgentService', rpc_method_handlers)
|
|
154
|
+
|
|
155
|
+
|
|
156
|
+
# This class is part of an EXPERIMENTAL API.
|
|
157
|
+
class AIAgentService(object):
|
|
158
|
+
"""AIAgentService provides AI-powered assistance for general operations
|
|
159
|
+
"""
|
|
160
|
+
|
|
161
|
+
@staticmethod
|
|
162
|
+
def StreamChat(request,
|
|
163
|
+
target,
|
|
164
|
+
options=(),
|
|
165
|
+
channel_credentials=None,
|
|
166
|
+
call_credentials=None,
|
|
167
|
+
insecure=False,
|
|
168
|
+
compression=None,
|
|
169
|
+
wait_for_ready=None,
|
|
170
|
+
timeout=None,
|
|
171
|
+
metadata=None):
|
|
172
|
+
return grpc.experimental.unary_stream(
|
|
173
|
+
request,
|
|
174
|
+
target,
|
|
175
|
+
'/nominal.ai.v1.AIAgentService/StreamChat',
|
|
176
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatRequest.SerializeToString,
|
|
177
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.StreamChatResponse.FromString,
|
|
178
|
+
options,
|
|
179
|
+
channel_credentials,
|
|
180
|
+
insecure,
|
|
181
|
+
call_credentials,
|
|
182
|
+
compression,
|
|
183
|
+
wait_for_ready,
|
|
184
|
+
timeout,
|
|
185
|
+
metadata,
|
|
186
|
+
_registered_method=True)
|
|
187
|
+
|
|
188
|
+
@staticmethod
|
|
189
|
+
def GetConversation(request,
|
|
190
|
+
target,
|
|
191
|
+
options=(),
|
|
192
|
+
channel_credentials=None,
|
|
193
|
+
call_credentials=None,
|
|
194
|
+
insecure=False,
|
|
195
|
+
compression=None,
|
|
196
|
+
wait_for_ready=None,
|
|
197
|
+
timeout=None,
|
|
198
|
+
metadata=None):
|
|
199
|
+
return grpc.experimental.unary_unary(
|
|
200
|
+
request,
|
|
201
|
+
target,
|
|
202
|
+
'/nominal.ai.v1.AIAgentService/GetConversation',
|
|
203
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationRequest.SerializeToString,
|
|
204
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.GetConversationResponse.FromString,
|
|
205
|
+
options,
|
|
206
|
+
channel_credentials,
|
|
207
|
+
insecure,
|
|
208
|
+
call_credentials,
|
|
209
|
+
compression,
|
|
210
|
+
wait_for_ready,
|
|
211
|
+
timeout,
|
|
212
|
+
metadata,
|
|
213
|
+
_registered_method=True)
|
|
214
|
+
|
|
215
|
+
@staticmethod
|
|
216
|
+
def ListConversations(request,
|
|
217
|
+
target,
|
|
218
|
+
options=(),
|
|
219
|
+
channel_credentials=None,
|
|
220
|
+
call_credentials=None,
|
|
221
|
+
insecure=False,
|
|
222
|
+
compression=None,
|
|
223
|
+
wait_for_ready=None,
|
|
224
|
+
timeout=None,
|
|
225
|
+
metadata=None):
|
|
226
|
+
return grpc.experimental.unary_unary(
|
|
227
|
+
request,
|
|
228
|
+
target,
|
|
229
|
+
'/nominal.ai.v1.AIAgentService/ListConversations',
|
|
230
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsRequest.SerializeToString,
|
|
231
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.ListConversationsResponse.FromString,
|
|
232
|
+
options,
|
|
233
|
+
channel_credentials,
|
|
234
|
+
insecure,
|
|
235
|
+
call_credentials,
|
|
236
|
+
compression,
|
|
237
|
+
wait_for_ready,
|
|
238
|
+
timeout,
|
|
239
|
+
metadata,
|
|
240
|
+
_registered_method=True)
|
|
241
|
+
|
|
242
|
+
@staticmethod
|
|
243
|
+
def CreateConversation(request,
|
|
244
|
+
target,
|
|
245
|
+
options=(),
|
|
246
|
+
channel_credentials=None,
|
|
247
|
+
call_credentials=None,
|
|
248
|
+
insecure=False,
|
|
249
|
+
compression=None,
|
|
250
|
+
wait_for_ready=None,
|
|
251
|
+
timeout=None,
|
|
252
|
+
metadata=None):
|
|
253
|
+
return grpc.experimental.unary_unary(
|
|
254
|
+
request,
|
|
255
|
+
target,
|
|
256
|
+
'/nominal.ai.v1.AIAgentService/CreateConversation',
|
|
257
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationRequest.SerializeToString,
|
|
258
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.CreateConversationResponse.FromString,
|
|
259
|
+
options,
|
|
260
|
+
channel_credentials,
|
|
261
|
+
insecure,
|
|
262
|
+
call_credentials,
|
|
263
|
+
compression,
|
|
264
|
+
wait_for_ready,
|
|
265
|
+
timeout,
|
|
266
|
+
metadata,
|
|
267
|
+
_registered_method=True)
|
|
268
|
+
|
|
269
|
+
@staticmethod
|
|
270
|
+
def UpdateConversationMetadata(request,
|
|
271
|
+
target,
|
|
272
|
+
options=(),
|
|
273
|
+
channel_credentials=None,
|
|
274
|
+
call_credentials=None,
|
|
275
|
+
insecure=False,
|
|
276
|
+
compression=None,
|
|
277
|
+
wait_for_ready=None,
|
|
278
|
+
timeout=None,
|
|
279
|
+
metadata=None):
|
|
280
|
+
return grpc.experimental.unary_unary(
|
|
281
|
+
request,
|
|
282
|
+
target,
|
|
283
|
+
'/nominal.ai.v1.AIAgentService/UpdateConversationMetadata',
|
|
284
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataRequest.SerializeToString,
|
|
285
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.UpdateConversationMetadataResponse.FromString,
|
|
286
|
+
options,
|
|
287
|
+
channel_credentials,
|
|
288
|
+
insecure,
|
|
289
|
+
call_credentials,
|
|
290
|
+
compression,
|
|
291
|
+
wait_for_ready,
|
|
292
|
+
timeout,
|
|
293
|
+
metadata,
|
|
294
|
+
_registered_method=True)
|
|
295
|
+
|
|
296
|
+
@staticmethod
|
|
297
|
+
def DeleteConversation(request,
|
|
298
|
+
target,
|
|
299
|
+
options=(),
|
|
300
|
+
channel_credentials=None,
|
|
301
|
+
call_credentials=None,
|
|
302
|
+
insecure=False,
|
|
303
|
+
compression=None,
|
|
304
|
+
wait_for_ready=None,
|
|
305
|
+
timeout=None,
|
|
306
|
+
metadata=None):
|
|
307
|
+
return grpc.experimental.unary_unary(
|
|
308
|
+
request,
|
|
309
|
+
target,
|
|
310
|
+
'/nominal.ai.v1.AIAgentService/DeleteConversation',
|
|
311
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationRequest.SerializeToString,
|
|
312
|
+
nominal_dot_ai_dot_v1_dot_ai__agent__pb2.DeleteConversationResponse.FromString,
|
|
313
|
+
options,
|
|
314
|
+
channel_credentials,
|
|
315
|
+
insecure,
|
|
316
|
+
call_credentials,
|
|
317
|
+
compression,
|
|
318
|
+
wait_for_ready,
|
|
319
|
+
timeout,
|
|
320
|
+
metadata,
|
|
321
|
+
_registered_method=True)
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# -*- coding: utf-8 -*-
|
|
2
|
+
# Generated by the protocol buffer compiler. DO NOT EDIT!
|
|
3
|
+
# NO CHECKED-IN PROTOBUF GENCODE
|
|
4
|
+
# source: nominal/ai/v1/workbook_agent.proto
|
|
5
|
+
# Protobuf Python Version: 6.31.1
|
|
6
|
+
"""Generated protocol buffer code."""
|
|
7
|
+
from google.protobuf import descriptor as _descriptor
|
|
8
|
+
from google.protobuf import descriptor_pool as _descriptor_pool
|
|
9
|
+
from google.protobuf import runtime_version as _runtime_version
|
|
10
|
+
from google.protobuf import symbol_database as _symbol_database
|
|
11
|
+
from google.protobuf.internal import builder as _builder
|
|
12
|
+
_runtime_version.ValidateProtobufRuntimeVersion(
|
|
13
|
+
_runtime_version.Domain.PUBLIC,
|
|
14
|
+
6,
|
|
15
|
+
31,
|
|
16
|
+
1,
|
|
17
|
+
'',
|
|
18
|
+
'nominal/ai/v1/workbook_agent.proto'
|
|
19
|
+
)
|
|
20
|
+
# @@protoc_insertion_point(imports)
|
|
21
|
+
|
|
22
|
+
_sym_db = _symbol_database.Default()
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
from nominal.ai.v1 import ai_agent_pb2 as nominal_dot_ai_dot_v1_dot_ai__agent__pb2
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
DESCRIPTOR = _descriptor_pool.Default().AddSerializedFile(b'\n\"nominal/ai/v1/workbook_agent.proto\x12\rnominal.ai.v1\x1a\x1cnominal/ai/v1/ai_agent.proto\"\xd5\x02\n%WorkbookAgentServiceStreamChatRequest\x12-\n\x08messages\x18\x01 \x03(\x0b\x32\x1b.nominal.ai.v1.ModelMessage\x12\x1d\n\x10notebook_as_json\x18\x02 \x01(\tH\x00\x88\x01\x01\x12\x1f\n\x12selected_tab_index\x18\x03 \x01(\x05H\x01\x88\x01\x01\x12(\n\x06images\x18\x04 \x03(\x0b\x32\x18.nominal.ai.v1.ImagePart\x12\'\n\x05range\x18\x05 \x01(\x0b\x32\x18.nominal.ai.v1.TimeRange\x12\x32\n\x07message\x18\x06 \x01(\x0b\x32\x1c.nominal.ai.v1.AppendMessageH\x02\x88\x01\x01\x42\x13\n\x11_notebook_as_jsonB\x15\n\x13_selected_tab_indexB\n\n\x08_message\"[\n\rAppendMessage\x12\x30\n\x07message\x18\x01 \x01(\x0b\x32\x1f.nominal.ai.v1.UserModelMessage\x12\x18\n\x10\x63onversation_rid\x18\x02 \x01(\t2\xa3\x05\n\x14WorkbookAgentService\x12g\n\nStreamChat\x12\x34.nominal.ai.v1.WorkbookAgentServiceStreamChatRequest\x1a!.nominal.ai.v1.StreamChatResponse0\x01\x12`\n\x0fGetConversation\x12%.nominal.ai.v1.GetConversationRequest\x1a&.nominal.ai.v1.GetConversationResponse\x12\x66\n\x11ListConversations\x12\'.nominal.ai.v1.ListConversationsRequest\x1a(.nominal.ai.v1.ListConversationsResponse\x12i\n\x12\x43reateConversation\x12(.nominal.ai.v1.CreateConversationRequest\x1a).nominal.ai.v1.CreateConversationResponse\x12\x81\x01\n\x1aUpdateConversationMetadata\x12\x30.nominal.ai.v1.UpdateConversationMetadataRequest\x1a\x31.nominal.ai.v1.UpdateConversationMetadataResponse\x12i\n\x12\x44\x65leteConversation\x12(.nominal.ai.v1.DeleteConversationRequest\x1a).nominal.ai.v1.DeleteConversationResponseb\x06proto3')
|
|
29
|
+
|
|
30
|
+
_globals = globals()
|
|
31
|
+
_builder.BuildMessageAndEnumDescriptors(DESCRIPTOR, _globals)
|
|
32
|
+
_builder.BuildTopDescriptorsAndMessages(DESCRIPTOR, 'nominal.ai.v1.workbook_agent_pb2', _globals)
|
|
33
|
+
if not _descriptor._USE_C_DESCRIPTORS:
|
|
34
|
+
DESCRIPTOR._loaded_options = None
|
|
35
|
+
_globals['_WORKBOOKAGENTSERVICESTREAMCHATREQUEST']._serialized_start=84
|
|
36
|
+
_globals['_WORKBOOKAGENTSERVICESTREAMCHATREQUEST']._serialized_end=425
|
|
37
|
+
_globals['_APPENDMESSAGE']._serialized_start=427
|
|
38
|
+
_globals['_APPENDMESSAGE']._serialized_end=518
|
|
39
|
+
_globals['_WORKBOOKAGENTSERVICE']._serialized_start=521
|
|
40
|
+
_globals['_WORKBOOKAGENTSERVICE']._serialized_end=1196
|
|
41
|
+
# @@protoc_insertion_point(module_scope)
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
from nominal.ai.v1 import ai_agent_pb2 as _ai_agent_pb2
|
|
2
|
+
from google.protobuf.internal import containers as _containers
|
|
3
|
+
from google.protobuf import descriptor as _descriptor
|
|
4
|
+
from google.protobuf import message as _message
|
|
5
|
+
from collections.abc import Iterable as _Iterable, Mapping as _Mapping
|
|
6
|
+
from typing import ClassVar as _ClassVar, Optional as _Optional, Union as _Union
|
|
7
|
+
|
|
8
|
+
DESCRIPTOR: _descriptor.FileDescriptor
|
|
9
|
+
|
|
10
|
+
class WorkbookAgentServiceStreamChatRequest(_message.Message):
|
|
11
|
+
__slots__ = ("messages", "notebook_as_json", "selected_tab_index", "images", "range", "message")
|
|
12
|
+
MESSAGES_FIELD_NUMBER: _ClassVar[int]
|
|
13
|
+
NOTEBOOK_AS_JSON_FIELD_NUMBER: _ClassVar[int]
|
|
14
|
+
SELECTED_TAB_INDEX_FIELD_NUMBER: _ClassVar[int]
|
|
15
|
+
IMAGES_FIELD_NUMBER: _ClassVar[int]
|
|
16
|
+
RANGE_FIELD_NUMBER: _ClassVar[int]
|
|
17
|
+
MESSAGE_FIELD_NUMBER: _ClassVar[int]
|
|
18
|
+
messages: _containers.RepeatedCompositeFieldContainer[_ai_agent_pb2.ModelMessage]
|
|
19
|
+
notebook_as_json: str
|
|
20
|
+
selected_tab_index: int
|
|
21
|
+
images: _containers.RepeatedCompositeFieldContainer[_ai_agent_pb2.ImagePart]
|
|
22
|
+
range: _ai_agent_pb2.TimeRange
|
|
23
|
+
message: AppendMessage
|
|
24
|
+
def __init__(self, messages: _Optional[_Iterable[_Union[_ai_agent_pb2.ModelMessage, _Mapping]]] = ..., notebook_as_json: _Optional[str] = ..., selected_tab_index: _Optional[int] = ..., images: _Optional[_Iterable[_Union[_ai_agent_pb2.ImagePart, _Mapping]]] = ..., range: _Optional[_Union[_ai_agent_pb2.TimeRange, _Mapping]] = ..., message: _Optional[_Union[AppendMessage, _Mapping]] = ...) -> None: ...
|
|
25
|
+
|
|
26
|
+
class AppendMessage(_message.Message):
|
|
27
|
+
__slots__ = ("message", "conversation_rid")
|
|
28
|
+
MESSAGE_FIELD_NUMBER: _ClassVar[int]
|
|
29
|
+
CONVERSATION_RID_FIELD_NUMBER: _ClassVar[int]
|
|
30
|
+
message: _ai_agent_pb2.UserModelMessage
|
|
31
|
+
conversation_rid: str
|
|
32
|
+
def __init__(self, message: _Optional[_Union[_ai_agent_pb2.UserModelMessage, _Mapping]] = ..., conversation_rid: _Optional[str] = ...) -> None: ...
|