Skip to content

[Bug]: GroqException - list index out of range #8710

Description

@ChenghaoMou

What happened?

Not sure if this is a Groq problem or litellm problem. Here is a code snippet to reproduce the issue:

import os

import litellm

os.environ["LITELLM_LOG"] = "DEBUG"


async def main():
    response = await litellm.acompletion(
        model="groq/llama-3.3-70b-specdec",
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {
                "role": "user",
                "content": [{"type": "text", "text": "Test"}],
            },
        ],
        stream=True,
        stream_options={"include_usage": True},
    )
    async for chunk in response:
        print(chunk)


if __name__ == "__main__":
    import asyncio

    asyncio.run(main())

Turning off include_usage will make it work. From the log, it looks like it is using databricks for parsing.

Relevant log output

uv run --with "litellm==1.61.7"  temp.py

ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content='It', role='assistant', function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' looks', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' like', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' you', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content="'re", role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' just', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' testing', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' the', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' waters', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content='.', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' Is', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' there', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' something', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' I', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' can', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' help', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' you', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' with', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' or', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' would', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' you', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' like', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' to', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' start', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' a', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' conversation', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content='?', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' I', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content="'m", role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' here', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' to', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' assist', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' you', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' with', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' any', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' questions', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' or', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' topics', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' you', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content="'d", role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' like', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' to', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=' discuss', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content='.', role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145122, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason='stop', index=0, delta=Delta(provider_specific_fields=None, content=None, role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True})
ModelResponseStream(id='chatcmpl-b4e476ff-5fde-456e-9b86-0549c2652542', created=1740145123, model='llama-3.3-70b-specdec', object='chat.completion.chunk', system_fingerprint=None, choices=[StreamingChoices(finish_reason=None, index=0, delta=Delta(provider_specific_fields=None, content=None, role=None, function_call=None, tool_calls=None, audio=None), logprobs=None)], stream_options={'include_usage': True}, usage=Usage(completion_tokens=44, prompt_tokens=6, total_tokens=50, completion_tokens_details=None, prompt_tokens_details=None))

Give Feedback / Get Help: https://github.com/BerriAI/litellm/issues/new
LiteLLM.Info: If you need to debug this error, use `litellm._turn_on_debug()'.


Provider List: https://docs.litellm.ai/docs/providers

Traceback (most recent call last):
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/litellm_core_utils/streaming_handler.py", line 1548, in __anext__
    async for chunk in self.completion_stream:
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/llms/databricks/streaming_utils.py", line 143, in __anext__
    return self.chunk_parser(chunk=json_chunk)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/llms/databricks/streaming_utils.py", line 28, in chunk_parser
    if processed_chunk.choices[0].delta.content is not None:  # type: ignore
       ~~~~~~~~~~~~~~~~~~~~~~~^^^
IndexError: list index out of range

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/chenghao/Developer/ai-worker/temp.py", line 28, in <module>
    asyncio.run(main())
  File "/Users/chenghao/.local/share/uv/python/cpython-3.12.6-macos-aarch64-none/lib/python3.12/asyncio/runners.py", line 194, in run
    return runner.run(main)
           ^^^^^^^^^^^^^^^^
  File "/Users/chenghao/.local/share/uv/python/cpython-3.12.6-macos-aarch64-none/lib/python3.12/asyncio/runners.py", line 118, in run
    return self._loop.run_until_complete(task)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/chenghao/.local/share/uv/python/cpython-3.12.6-macos-aarch64-none/lib/python3.12/asyncio/base_events.py", line 687, in run_until_complete
    return future.result()
           ^^^^^^^^^^^^^^^
  File "/Users/chenghao/Developer/ai-worker/temp.py", line 21, in main
    async for chunk in response:
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/litellm_core_utils/streaming_handler.py", line 1703, in __anext__
    raise exception_type(
          ^^^^^^^^^^^^^^^
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/litellm_core_utils/exception_mapping_utils.py", line 2207, in exception_type
    raise e  # it's already mapped
    ^^^^^^^
  File "/Users/chenghao/Developer/ai-worker/.venv/lib/python3.12/site-packages/litellm/litellm_core_utils/exception_mapping_utils.py", line 463, in exception_type
    raise APIConnectionError(
litellm.exceptions.APIConnectionError: litellm.APIConnectionError: APIConnectionError: GroqException - list index out of range

Are you a ML Ops Team?

No

What LiteLLM version are you on ?

1.61.7

Twitter / LinkedIn details

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingstale

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions