Skip to content

Commit 1ea3fbe

Browse files
ergunshDevtools-frontend LUCI CQ
authored andcommitted
[Eval] Fix action blocks not showing up in eval tool
The `response` was getting marked as empty text when there is an emulated function call in ACTION block. This CL updates the logic to * Save only `aidaResponse` for the eval data. * Use `aidaResponse` in eval tool to render the response. Bug: none Change-Id: Ib6f966bc8c414213206e435c09ab7737cbd55893 Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/6434147 Reviewed-by: Alex Rudenko <[email protected]> Commit-Queue: Ergün Erdoğmuş <[email protected]>
1 parent 7eacf7e commit 1ea3fbe

File tree

2 files changed

+7
-9
lines changed

2 files changed

+7
-9
lines changed

front_end/models/ai_assistance/agents/AiAgent.ts

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -244,8 +244,7 @@ export abstract class AiAgent<T> {
244244
*/
245245
readonly #structuredLog: Array<{
246246
request: Host.AidaClient.AidaRequest,
247-
response: string,
248-
aidaResponse?: Host.AidaClient.AidaResponse,
247+
aidaResponse: Host.AidaClient.AidaResponse,
249248
}> = [];
250249

251250
/**
@@ -651,7 +650,6 @@ export abstract class AiAgent<T> {
651650
#aidaFetch(request: Host.AidaClient.AidaRequest, options?: {signal?: AbortSignal}):
652651
AsyncGenerator<AidaFetchResult, void, void> {
653652
let aidaResponse: Host.AidaClient.AidaResponse|undefined = undefined;
654-
let response = '';
655653
let rpcId: Host.AidaClient.RpcGlobalId|undefined;
656654

657655
for await (aidaResponse of this.#aidaClient.fetch(request, options)) {
@@ -680,7 +678,6 @@ export abstract class AiAgent<T> {
680678
}
681679
}
682680

683-
response = aidaResponse.explanation;
684681
rpcId = aidaResponse.metadata.rpcGlobalId ?? rpcId;
685682
yield {
686683
rpcId,
@@ -693,10 +690,9 @@ export abstract class AiAgent<T> {
693690
request,
694691
response: aidaResponse,
695692
});
696-
if (isDebugMode()) {
693+
if (isDebugMode() && aidaResponse) {
697694
this.#structuredLog.push({
698695
request: structuredClone(request),
699-
response,
700696
aidaResponse,
701697
});
702698
localStorage.setItem('aiAssistanceStructuredLog', JSON.stringify(this.#structuredLog));

scripts/ai_assistance/eval/index.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -156,14 +156,16 @@ const API = {
156156
for (const example of examples) {
157157
const exampleId = example.exampleId;
158158
const request = example.request.input || example.request.current_message.parts[0].text;
159-
const response = example.response;
159+
// Even though we don't collect `response` texts anymore, we still need it for backwards compatibility.
160+
// TODO: Show function calling responses here as well.
161+
const response = example.aidaResponse?.explanation || example.response;
160162
if (!examplesMap[exampleId]) {
161163
examplesMap[exampleId] = [];
162164
}
163165

164166
examplesMap[exampleId].push({
165167
exampleId,
166-
request: {input: request},
168+
request,
167169
response,
168170
});
169171
}
@@ -261,7 +263,7 @@ function renderExample(container, sourceMap, {onEvaluationChange}) {
261263

262264
let i = 0;
263265
for (const requestResponse of requestResponses) {
264-
const text = `${requestResponse.request.input}\n\n${requestResponse.response}`;
266+
const text = `${requestResponse.request}\n\n${requestResponse.response}`;
265267
const evaluationId = JSON.stringify({
266268
datasetTitle: viewState.dataId,
267269
exampleId,

0 commit comments

Comments
 (0)