/ app / __pycache__ / demo.cpython-312.pyc
demo.cpython-312.pyc
 1 2  ��i����ddlmZddlZddlZddlZddlZddlmZmZddl	m
 3  Z
 4  ddlmZm
Z
ddlmZmZddlmZmZddlmZmZdd	lmZej2ej4d
 5  ��ej6e�Zed�
�Gd�d��Zdd�Zdd�											dd�Z dd�Z!edk(r		e!�yy#e"$rejFd�YywxYw)�)�annotationsN)�asdict�	dataclass)�Any)�GenerationResult�VllmGrpcClient)�discover_surface�
write_summary)�get_incident�scenario_names)�save_final_decision�parse_final_decision)�
FinalDecisionz/%(asctime)s %(levelname)s %(name)s: %(message)s)�level�formatT)�slotsc�6�eZdZUded<ded<ded<ded<y	)
 6  �DemoRun�str�scenarior�decisionr�
 7  generation�dict[str, Any]�surfaceN)�__name__�
 8  __module__�__qualname__�__annotations__���app/demo.pyrrs���M��� � �
�r rc���g}|dD]/}|dD]%}|drdnd}|j|d�d|�d���'�1d	d
 9  j|d��dd
10  j|���S)
N�services�methods�server_streaming�stream�unary�namez [�]zprotobuf packages=z, �protobuf_packagesz; rpcs=)�append�join)r�
service_lines�service�method�modes     r!�_surface_headerr1s����M��:�&�?���i�(�	?�F�%�&8�9�8�w�D�� � �F�6�N�#3�2�d�V�1�!=�>�	?�?�
11  �T�Y�Y�w�/B�'C�D�E�F��	�	�-�(�)�	+�r �localhost:8000��endpointc���t|��}t|�t|�}t||��}	|rt	d�d�}nd}|j|d|��}	|j
�|r
12  t	�t|	j|j�}
13  |rt|
14  �|r,t	d�t	tj|dd�	��t||
15  |	|�
16  �S#|j
�wxYw)Nr3)r4rzStreaming model output:c��t|dd��S)N�T)�end�flush)�print)�texts r!�<lambda>zrun_demo.<locals>.<lambda>;s��U�4�R�t�%D�r T)r&�on_textz
17  Discovery summary:�)�indent�	sort_keys)rrrr)r	r
18  rrr:�generate_incident�closer�
19  raw_output�incident_idr
�json�dumpsr)rr&�save�verboser4r�incident�client�	stream_fnrrs           r!�run_demorL+s�����1�G��'���H�%�H�
�X�w�
?�F�
���+�,�D�I��I��-�-����.�
2021  �	����
�
��#�J�$9�$9�8�;O�;O�P�H���H�%��
�$�%�
�d�j�j���d�;�<������	���	����s�'C�C0c
22  ��tjd��}|jdt�d��|jddd�	�|jd
23  dd�	�|jddd
�	�|jddd��|j	�}t|j|j|j|j|j��}td�tdt|j����td�td|jj���td�td|jj �d|jj"d�d|jj$�d|jj&���td�t|j(j+d���y)Nz%Run the Incident Commander gRPC demo.)�descriptionz
24  --scenarioT)�choices�requiredz--stream�
25  store_truezStream model output to stdout.)�action�helpz--savez$Persist outputs/final_decision.json.z	--verbosezPrint full discovery JSON.z
26  --endpointr2zvLLM gRPC endpoint.)�defaultrS)r&rGrHr4zDiscovered gRPC surface:z  zSelected RPC method:zObserved metrics:z  time_to_first_update_ms=z end_to_end_latency_ms=z.2fz output_bytes_received=z finish_reason=zFinal structured decision:r>)r?)�argparse�ArgumentParser�add_argumentr�
27  parse_argsrLrr&rGrHr4r:r1rr�selected_rpc�time_to_first_update_ms�end_to_end_latency_ms�output_bytes_received�
finish_reasonr�model_dump_json)�parser�args�runs   r!�mainrbZs���
�
$�
$�1X�
Y�F�
28  ����n�.>���N�
29  ���
30  �<�>^��_�
31  �����<b��c�
32  ����L�?[��\�
33  ����.>�EZ��[�����D�
34  ��
�
��{�{�
�Y�Y��������C�
3536  $�%�	�B�����,�.�
37  /�0�	�
38   �!�	�B�s�~�~�*�*�+�
39  ,�-�	�
40  ��	�
41  $�S�^�^�%K�%K�$L�M!�!$���!E�!E�c� J�K!�!$���!E�!E� F�G����5�5�6�	8��
4243  &�'�	�#�,�,�
44  &�
45  &�a�
46  &�
47  0�1r �__main__�)rr�returnr)rrr&�boolrGrfrHrfr4rrer)re�None)$�
48  __future__rrUrE�logging�sys�dataclassesrr�typingr�
49  app.clientrr�app.discover_vllm_grpcr	r
50  �app.incident_samplesrr�
51  app.parserr
r�app.schemasr�basicConfig�INFO�	getLoggerr�loggerrr1rLrb�KeyboardInterrupt�exitrr r!�<module>rxs���"����
52  �)��7�B�=�@�%�����
53  �,�,�<��
54  ��	�	�8�	$���������	�$%�
,��,�
�,��	,�
55  �,��
,�
�,�^2�@�z��������������
��s�1B:�:C�C