ExpressAI / eaas_client

https://expressai.github.io/autoeval/
Apache License 2.0
0 stars 1 forks source link

How to request service stably with larger number of samples? #2

Open pfliu-nlp opened 3 years ago

pfliu-nlp commented 3 years ago

batched request?

yyy-Apple commented 3 years ago

目前几点很头疼的地方。

  1. 对于大数据,如果采用batch发送请求的方式,很难获得corpus-level的分数,因为不知道用户的输入到底是来自一个新的corpus还是就是这个corpus。
  2. 同时,如果采用batch发送请求的方式,对后期的fine-grained analysis也会有影响。很难实现。
  3. 由于OpenAI的API全部都是只能一次发送一个请求。不确定我们要不要这样。但如果这样,1和2两个问题也无法得到解决。
  4. 如果不采用batch的方式,直接全部发送,这样做也不是不可以。不过最大的问题在于,如果batch发送我们可以根据batch写进度条,反馈及时。而全部发送就不知道后端服务器进行的如何了因为一旦返回了东西,这个request就结束了。所以全部发送的话用户不能得到速度的反馈,会很茫然。
yyy-Apple commented 3 years ago

目前可能可以的解决方法:

  1. 像openai一样一次只能发送一个sample请求。
  2. 如果想得到corpus-level的分数,要不自己算,要不把分数发给我们。他们应该大部分只需要平均的就自己算了。不过bleu这种还是复杂一些,还是需要把东西都发给我们。
  3. 分析模块也是再次把算好的分数发给我们,我们再分析。
yyy-Apple commented 3 years ago

如果算分采用一次一条的话,建议把分析模块搬到这个api这里。毕竟跑分析比较轻量级,所依赖的库不多,而且所用的库版本一般不存在矛盾。

yyy-Apple commented 3 years ago

仔细考虑之后还是一次处理100条。因为如果想要用户用自己想要的specification的话,我们就无法把所有可能的specification都给initialize了