From 2ac8c4466895d1074a5a0e6153309ee1127eb79f Mon Sep 17 00:00:00 2001 From: Marcello Maugeri Date: Wed, 9 Jul 2025 10:17:29 +0200 Subject: [PATCH 1/2] feat(lite_llm): add PDF support Adds the ability to ingest and process PDF documents in the lite_llm pipeline. --- src/google/adk/models/lite_llm.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/src/google/adk/models/lite_llm.py b/src/google/adk/models/lite_llm.py index 39514d6f..430d2e20 100644 --- a/src/google/adk/models/lite_llm.py +++ b/src/google/adk/models/lite_llm.py @@ -38,6 +38,7 @@ from litellm import ChatCompletionDeveloperMessage from litellm import ChatCompletionImageUrlObject from litellm import ChatCompletionMessageToolCall from litellm import ChatCompletionTextObject +from litellm import ChatCompletionFileObject from litellm import ChatCompletionToolMessage from litellm import ChatCompletionUserMessage from litellm import ChatCompletionVideoUrlObject @@ -262,6 +263,16 @@ def _get_content( video_url=data_uri, ) ) + elif part.inline_data.mime_type == "application/pdf": + content_objects.append( + ChatCompletionFileObject( + type="file", + file={ + "file_data": data_uri, + "format": "pdf" + } + ) + ) else: raise ValueError("LiteLlm(BaseLlm) does not support this content part.") From 0a187b4a7d69c9adcd70fa55cdec18593dc0179d Mon Sep 17 00:00:00 2001 From: Sean Zhou Date: Fri, 11 Jul 2025 14:42:12 -0700 Subject: [PATCH 2/2] auto format the codes --- src/google/adk/models/lite_llm.py | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/src/google/adk/models/lite_llm.py b/src/google/adk/models/lite_llm.py index 430d2e20..2dfcbba8 100644 --- a/src/google/adk/models/lite_llm.py +++ b/src/google/adk/models/lite_llm.py @@ -35,10 +35,10 @@ from litellm import acompletion from litellm import ChatCompletionAssistantMessage from litellm import ChatCompletionAssistantToolCall from litellm import ChatCompletionDeveloperMessage +from litellm import ChatCompletionFileObject from litellm import ChatCompletionImageUrlObject from litellm import ChatCompletionMessageToolCall from litellm import ChatCompletionTextObject -from litellm import ChatCompletionFileObject from litellm import ChatCompletionToolMessage from litellm import ChatCompletionUserMessage from litellm import ChatCompletionVideoUrlObject @@ -265,13 +265,9 @@ def _get_content( ) elif part.inline_data.mime_type == "application/pdf": content_objects.append( - ChatCompletionFileObject( - type="file", - file={ - "file_data": data_uri, - "format": "pdf" - } - ) + ChatCompletionFileObject( + type="file", file={"file_data": data_uri, "format": "pdf"} + ) ) else: raise ValueError("LiteLlm(BaseLlm) does not support this content part.")