MCPcopy Create free account
hub / github.com/PaddlePaddle/FastDeploy / process_one_length

Function process_one_length

fastdeploy/benchmarks/serve.py:842–873  ·  view source on GitHub ↗
(
        # E.g., "ttft"
        metric_attribute_name: str,
        # E.g., "TTFT"
        metric_name: str,
        # E.g., "Time to First Token"
        metric_header: str,
    )

Source from the content-addressed store, hash-verified

840 result[f"p{p_word}_{metric_attribute_name}_ms"] = value
841
842 def process_one_length(
843 # E.g., "ttft"
844 metric_attribute_name: str,
845 # E.g., "TTFT"
846 metric_name: str,
847 # E.g., "Time to First Token"
848 metric_header: str,
849 ):
850 # This function prints and adds statistics of the specified
851 # metric.
852 if metric_attribute_name not in selected_percentile_metrics:
853 return
854 print("{s:{c}^{n}}".format(s=metric_header, n=50, c="-"))
855 print(
856 "{:<40} {:<10.2f}".format(
857 f"Mean {metric_name}:",
858 getattr(metrics, f"mean_{metric_attribute_name}"),
859 )
860 )
861 print(
862 "{:<40} {:<10.2f}".format(
863 f"Median {metric_name}:",
864 getattr(metrics, f"median_{metric_attribute_name}"),
865 )
866 )
867 result[f"mean_{metric_attribute_name}"] = getattr(metrics, f"mean_{metric_attribute_name}")
868 result[f"median_{metric_attribute_name}"] = getattr(metrics, f"median_{metric_attribute_name}")
869 result[f"std_{metric_attribute_name}"] = getattr(metrics, f"std_{metric_attribute_name}")
870 for p, value in getattr(metrics, f"percentiles_{metric_attribute_name}"):
871 p_word = str(int(p)) if int(p) == p else str(p)
872 print("{:<40} {:<10.2f}".format(f"P{p_word} {metric_name}:", value))
873 result[f"p{p_word}_{metric_attribute_name}"] = value
874
875 process_one_length("s_decode", "Decode", "解码速度(tok/s)")
876 process_one_metric("ttft", "TTFT", "Time to First Token")

Callers 1

benchmarkFunction · 0.70

Calls 2

printFunction · 0.85
formatMethod · 0.45

Tested by

no test coverage detected