mirror of
https://github.com/fawney19/Aether.git
synced 2026-09-02 01:10:23 +08:00
Add Codex image progress heartbeat
This commit is contained in:
@@ -366,6 +366,10 @@ pub fn build_admin_monitoring_trace_request_candidate_payload_with_key_accounts(
|
||||
"latency_ms": candidate.latency_ms,
|
||||
"concurrent_requests": candidate.concurrent_requests,
|
||||
"ranking": build_admin_monitoring_trace_candidate_ranking(candidate.extra_data.as_ref()),
|
||||
"image_progress": candidate.extra_data.as_ref()
|
||||
.and_then(|value| value.get("image_progress"))
|
||||
.cloned()
|
||||
.unwrap_or(Value::Null),
|
||||
"extra_data": build_admin_monitoring_trace_candidate_extra_data(candidate.extra_data.as_ref(), usage),
|
||||
"created_at": unix_ms_to_rfc3339(candidate.created_at_unix_ms),
|
||||
"started_at": candidate.started_at_unix_ms.and_then(unix_ms_to_rfc3339),
|
||||
|
||||
@@ -983,6 +983,7 @@ fn admin_usage_active_request_json(
|
||||
item: &StoredRequestUsageAudit,
|
||||
api_key_name: Option<String>,
|
||||
provider_key_name: Option<String>,
|
||||
image_progress: Option<&Value>,
|
||||
) -> Value {
|
||||
let cache_creation_input_tokens = admin_usage_cache_creation_tokens(item);
|
||||
let client_is_stream = admin_usage_client_is_stream(item);
|
||||
@@ -1022,6 +1023,9 @@ fn admin_usage_active_request_json(
|
||||
if let Some(target_model) = item.target_model.as_ref() {
|
||||
value["target_model"] = json!(target_model);
|
||||
}
|
||||
if let Some(image_progress) = image_progress {
|
||||
value["image_progress"] = image_progress.clone();
|
||||
}
|
||||
value
|
||||
}
|
||||
|
||||
@@ -2017,6 +2021,7 @@ pub fn build_admin_usage_active_requests_response(
|
||||
api_key_names: &BTreeMap<String, String>,
|
||||
auth_api_key_reader_available: bool,
|
||||
provider_key_names: &BTreeMap<String, String>,
|
||||
image_progress_by_request_id: &BTreeMap<String, Value>,
|
||||
) -> Response<Body> {
|
||||
let payload: Vec<_> = items
|
||||
.iter()
|
||||
@@ -2024,7 +2029,12 @@ pub fn build_admin_usage_active_requests_response(
|
||||
let provider_key_name = admin_usage_provider_key_name(item, provider_key_names);
|
||||
let api_key_name =
|
||||
admin_usage_api_key_name(item, api_key_names, auth_api_key_reader_available);
|
||||
admin_usage_active_request_json(item, api_key_name, provider_key_name)
|
||||
admin_usage_active_request_json(
|
||||
item,
|
||||
api_key_name,
|
||||
provider_key_name,
|
||||
image_progress_by_request_id.get(&item.request_id),
|
||||
)
|
||||
})
|
||||
.collect();
|
||||
|
||||
@@ -2362,7 +2372,7 @@ mod tests {
|
||||
|
||||
assert!(!admin_usage_client_is_stream(&item));
|
||||
|
||||
let active = admin_usage_active_request_json(&item, None, None);
|
||||
let active = admin_usage_active_request_json(&item, None, None, None);
|
||||
assert_eq!(active["is_stream"], true);
|
||||
assert_eq!(active["upstream_is_stream"], true);
|
||||
assert_eq!(active["client_requested_stream"], false);
|
||||
|
||||
Reference in New Issue
Block a user