Skip to content

ValueError: Extracted completion from trace is not a list #404

@onebula

Description

@onebula

Traceback:

2025-12-11 13:11:33,841 [ERROR] (Process-1067516 agentlightning.trainer.trainer)   Algorithm bundle encountered an error.
Traceback (most recent call last):
  File "/mnt/bn/chenkuang/pyenv/versions/agentlightning/lib/python3.10/site-packages/agentlightning/trainer/trainer.py", line 506, in _algorithm_bundle
    await algorithm.run(  # type: ignore
  File "/mnt/bn/chenkuang/pyenv/versions/agentlightning/lib/python3.10/site-packages/agentlightning/algorithm/apo/apo.py", line 858, in run
    _, seed_score = await self.evaluate_prompt_on_batch(
  File "/mnt/bn/chenkuang/pyenv/versions/agentlightning/lib/python3.10/site-packages/agentlightning/algorithm/apo/apo.py", line 502, in evaluate_prompt_on_batch
    rollout_results = await self.get_rollout_results(
  File "/mnt/bn/chenkuang/pyenv/versions/agentlightning/lib/python3.10/site-packages/agentlightning/algorithm/apo/apo.py", line 420, in get_rollout_results
    messages = adapter.adapt(spans)
  File "/mnt/bn/chenkuang/pyenv/versions/agentlightning/lib/python3.10/site-packages/agentlightning/adapter/messages.py", line 258, in adapt
    raise ValueError(f"Extracted completion from trace is not a list: {completion}")
ValueError: Extracted completion from trace is not a list: {'None': {'finish_reason': 'stop', 'role': 'assistant', 'content': 'Hello! How can I assist you today?'}}

By printing trace spans in TraceToMessages as follows, I found the dotted path 'gen_ai.completion.None.content' is incorret. It should be 'gen_ai.completion.0.content' with integer replacing the original 'None'.

[Span(rollout_id='ro-4b74a9a4f2cd', attempt_id='at-d3575f62', sequence_id=1, trace_id='c0eaada581f3b8916f470ac97726c636', span_id='6680d6fd82a51398', parent_id='2d5b1d9369928c98', name='openai.chat.completion', status=TraceStatus(status_code='OK', description=None), attributes={'gen_ai.request.type': 'chat', 'gen_ai.system': 'OpenAI', 'gen_ai.request.model': 'gpt-4.1-mini-2025-04-14', 'gen_ai.request.streaming': False, 'gen_ai.prompt.0.role': 'user', 'gen_ai.prompt.0.content': 'hello', 'gen_ai.response.id': 'chatcmpl-Clak69fnEEigBo5uUv9BoNoWlLH7D', 'gen_ai.response.model': 'gpt-4.1-mini-2025-04-14', 'gen_ai.openai.system_fingerprint': 'fp_3dcd5944f5', 'gen_ai.usage.total_tokens': 18, 'gen_ai.usage.prompt_tokens': 8, 'gen_ai.usage.completion_tokens': 10, 'gen_ai.completion.None.finish_reason': 'stop', 'gen_ai.completion.None.role': 'assistant', 'gen_ai.completion.None.content': 'Hello! How can I assist you today?', 'gen_ai.prompt.prompt_filter_results': 'null'}, events=[], links=[], start_time=1765458689.8824494, end_time=1765458690.4280267, context=SpanContext(trace_id='c0eaada581f3b8916f470ac97726c636', span_id='6680d6fd82a51398', is_remote=False, trace_state={}), parent=SpanContext(trace_id='c0eaada581f3b8916f470ac97726c636', span_id='2d5b1d9369928c98', is_remote=False, trace_state={}), resource=OtelResource(attributes={'service.name': 'agentops', 'agentops.project.id': 'temporary', 'imported_libraries': ['logging', 'agentlightning', 'json', 'pandas']}, schema_url='')), Span(rollout_id='ro-4b74a9a4f2cd', attempt_id='at-d3575f62', sequence_id=2, trace_id='c0eaada581f3b8916f470ac97726c636', span_id='de71e0648d56c761', parent_id='2d5b1d9369928c98', name='openai.chat.completion', status=TraceStatus(status_code='OK', description=None), attributes={'gen_ai.request.type': 'chat', 'gen_ai.system': 'OpenAI', 'gen_ai.request.model': 'gpt-4.1-mini-2025-04-14', 'gen_ai.request.max_tokens': 500, 'gen_ai.request.streaming': False, 'gen_ai.prompt.0.role': 'user', 'gen_ai.prompt.0.content': 'hello', 'gen_ai.prompt.1.role': 'assistant', 'gen_ai.prompt.1.content': 'Hello! How can I assist you today?', 'gen_ai.prompt.2.role': 'system', 'gen_ai.prompt.2.content': 'Your task is to ...', 'gen_ai.prompt.3.role': 'user', 'gen_ai.prompt.3.content': '{\n "event": "11/25 18時1分熊本県で最大震度5強を観測する地震発生",\n "docs": []\n}', 'gen_ai.response.id': 'chatcmpl-Clak6SmYXdoAHM1OxpXPdk6tXekNe', 'gen_ai.response.model': 'gpt-4.1-mini-2025-04-14', 'gen_ai.openai.system_fingerprint': 'fp_3dcd5944f5', 'gen_ai.usage.total_tokens': 1100, 'gen_ai.usage.prompt_tokens': 1068, 'gen_ai.usage.completion_tokens': 32, 'gen_ai.completion.None.finish_reason': 'stop', 'gen_ai.completion.None.role': 'assistant', 'gen_ai.completion.None.content': '{"timeline":[{"date":"2023-11-25","stage":"熊本県で最大震度5強の地震発生"}]}', 'gen_ai.prompt.prompt_filter_results': 'null'}, events=[], links=[], start_time=1765458690.4364552, end_time=1765458691.8720765, context=SpanContext(trace_id='c0eaada581f3b8916f470ac97726c636', span_id='de71e0648d56c761', is_remote=False, trace_state={}), parent=SpanContext(trace_id='c0eaada581f3b8916f470ac97726c636', span_id='2d5b1d9369928c98', is_remote=False, trace_state={}), resource=OtelResource(attributes={'service.name': 'agentops', 'agentops.project.id': 'temporary', 'imported_libraries': ['logging', 'agentlightning', 'json', 'pandas']}, schema_url=''))]

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions