What is the best way to get around the API rate limits when working with the function arize_client.log_evaluations_sync? I am trying to log 6 evaluations for one span and I am getting rate limited after the first evaluation is logged (obfuscated gist). The rate limit seems extremely low to me and the only way to work around this is to sleep for 1 second between the log_evaluations_sync calls 🫠 Even then, I still get the error. This is not gonna work at all for our production workloads 🤔. STAT!
Thanks a ton SallyAnn and Aparna.
Followup: Is there a way to log evals for multiple spans in the same request? The current implementation seemingly requires the dataframe to contain only one span_id
Is there an example of a DF with multiple span_ids?
That worked. Thanks a ton.
Is there an API issue/lag on your end? I was able to log evals a few hours ago but now nothing is being logged. I am getting 200 responses from the call to log_evaluations_sync but the evals do not show up on Arize 🤔. One of the traces I tested most recently was dbd539aee5121510a7ef68c20eca13a5
I am sending the span ids.
I will DM you
Thanks Jason. Please keep me posted. The functionlog_evaluations_sync is frustrating at the moment as it fails frequently and silently and makes logging evals at scale impossible due to frequent and silent ❓ errors. We already batch eval calls (passing multiple spans in the same DF). We also have retries with exponential backoffs to avoid DDOSing your API. None of this seems to help 😢. In my experience, the error rate is ~35 to 50% which is very high.
