Fish
Fish
您能不能提供一下环境信息(运行设备、版本等)?有助于我们复现该问题。
目前看来可能是 costum_api.py 文件中 parse_responses 的解析错误,我们正在讨论修复方案。 您也可以尝试以下方法解决: 1. 如果您需要自定义 Custom API 的 Response 格式,请确保 parse_responses 函数能够正确解析 Token 数量。 2. 如果您指定 --api "custom" 只是为了应用 query-template,您可以参考下面的方法: 2.1. 如果您使用的 Response 方式是 OpenAI 形式,您可以用 openai_api.py...
如果您使用 vLLM 作为推理后端,那么您可以直接使用 OpenAI 格式的 API 解析。参考: ```bash evalscope perf --model llama2_7b_chat --parallel 64 \ --url 'http://127.0.0.1:8000/v1/chat/completions' --dataset openqa \ --query-template '{"model": "%m", "messages": [], "max_tokens": 1024, "temperature": 0.7}' \...
理解您着急的心情,我们在尝试复现。目前我们测试了最近两个版本的 EvalScope ,使用 OpenAI API 并没有遇到该问题,您的版本是?
目前看来,您的环境是没有问题的,我们也无法复现该问题。您是否修改过 EvalScope 的源码? 上文我们发现的问题是在 evalscope/perf/http_client.py 文件的 statistic_benchmark_metric_worker 函数中 407 行: `avg_time_per_token = total_time / n_total_completion_tokens` 可能出现 ZeroDivisionError: float division by zero,导致直接退出循环,陷入无结束的等待。 而出现 ZeroDivisionError 的原因是 evalscope/perf/custom_api.py 的 parse_responses 无法解析 OpenAI 格式的...
> 上文我们发现的问题是在 evalscope/perf/http_client.py 文件的 statistic_benchmark_metric_worker 函数中 407 行: avg_time_per_token = total_time / n_total_completion_tokens 可能出现 ZeroDivisionError: float division by zero,导致直接退出循环,陷入无结束的等待。 那么看起来,您遇到的就是这个问题,能否请您排查: ```python n_query_prompt_tokens, n_query_completion_tokens = api_plugin.parse_responses( benchmark_data["response_messages"], request=benchmark_data["request"]) ``` 这一部分返回值是否正常?
能看看您添加日志的位置和日志的输出吗?