diff --git a/backend/sample.env b/backend/sample.env
index 908151dac9..8b0654240b 100644
--- a/backend/sample.env
+++ b/backend/sample.env
@@ -100,9 +100,9 @@ PROMPT_STUDIO_FILE_PATH=/app/prompt-studio-data
# Structure Tool Image (Runs prompt studio exported tools)
# https://hub.docker.com/r/unstract/tool-structure
-STRUCTURE_TOOL_IMAGE_URL="docker:unstract/tool-structure:0.0.99"
+STRUCTURE_TOOL_IMAGE_URL="docker:unstract/tool-structure:0.0.100"
STRUCTURE_TOOL_IMAGE_NAME="unstract/tool-structure"
-STRUCTURE_TOOL_IMAGE_TAG="0.0.99"
+STRUCTURE_TOOL_IMAGE_TAG="0.0.100"
# Feature Flags
EVALUATION_SERVER_IP=unstract-flipt
diff --git a/backend/uv.lock b/backend/uv.lock
index 66ef99df8d..e2fc56b1b2 100644
--- a/backend/uv.lock
+++ b/backend/uv.lock
@@ -1296,6 +1296,7 @@ dependencies = [
{ name = "griffecli" },
{ name = "griffelib" },
]
+sdist = { url = "https://files.pythonhosted.org/packages/04/56/28a0accac339c164b52a92c6cfc45a903acc0c174caa5c1713803467b533/griffe-2.0.0.tar.gz", hash = "sha256:c68979cd8395422083a51ea7cf02f9c119d889646d99b7b656ee43725de1b80f", size = 293906, upload-time = "2026-03-23T21:06:53.402Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/8b/94/ee21d41e7eb4f823b94603b9d40f86d3c7fde80eacc2c3c71845476dddaa/griffe-2.0.0-py3-none-any.whl", hash = "sha256:5418081135a391c3e6e757a7f3f156f1a1a746cc7b4023868ff7d5e2f9a980aa", size = 5214, upload-time = "2026-02-09T19:09:44.105Z" },
]
@@ -1308,6 +1309,7 @@ dependencies = [
{ name = "colorama" },
{ name = "griffelib" },
]
+sdist = { url = "https://files.pythonhosted.org/packages/a4/f8/2e129fd4a86e52e58eefe664de05e7d502decf766e7316cc9e70fdec3e18/griffecli-2.0.0.tar.gz", hash = "sha256:312fa5ebb4ce6afc786356e2d0ce85b06c1c20d45abc42d74f0cda65e159f6ef", size = 56213, upload-time = "2026-03-23T21:06:54.8Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/e6/ed/d93f7a447bbf7a935d8868e9617cbe1cadf9ee9ee6bd275d3040fbf93d60/griffecli-2.0.0-py3-none-any.whl", hash = "sha256:9f7cd9ee9b21d55e91689358978d2385ae65c22f307a63fb3269acf3f21e643d", size = 9345, upload-time = "2026-02-09T19:09:42.554Z" },
]
@@ -1316,6 +1318,7 @@ wheels = [
name = "griffelib"
version = "2.0.0"
source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ad/06/eccbd311c9e2b3ca45dbc063b93134c57a1ccc7607c5e545264ad092c4a9/griffelib-2.0.0.tar.gz", hash = "sha256:e504d637a089f5cab9b5daf18f7645970509bf4f53eda8d79ed71cce8bd97934", size = 166312, upload-time = "2026-03-23T21:06:55.954Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/4d/51/c936033e16d12b627ea334aaaaf42229c37620d0f15593456ab69ab48161/griffelib-2.0.0-py3-none-any.whl", hash = "sha256:01284878c966508b6d6f1dbff9b6fa607bc062d8261c5c7253cb285b06422a7f", size = 142004, upload-time = "2026-02-09T19:09:40.561Z" },
]
@@ -1692,7 +1695,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -1707,10 +1710,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -3961,7 +3960,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -3996,7 +3995,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
diff --git a/docker/dockerfiles/worker-unified.Dockerfile b/docker/dockerfiles/worker-unified.Dockerfile
index 202f71b699..9b9f3b8fac 100644
--- a/docker/dockerfiles/worker-unified.Dockerfile
+++ b/docker/dockerfiles/worker-unified.Dockerfile
@@ -24,6 +24,7 @@ RUN apt-get update \
build-essential \
curl \
gcc \
+ git \
libmagic-dev \
libssl-dev \
pkg-config \
diff --git a/platform-service/uv.lock b/platform-service/uv.lock
index 66bd331ad4..9af6dfee65 100644
--- a/platform-service/uv.lock
+++ b/platform-service/uv.lock
@@ -1110,7 +1110,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -1125,10 +1125,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -2708,7 +2704,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -2743,7 +2739,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
diff --git a/prompt-service/uv.lock b/prompt-service/uv.lock
index dba297a76d..68187468cb 100644
--- a/prompt-service/uv.lock
+++ b/prompt-service/uv.lock
@@ -1128,7 +1128,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -1143,10 +1143,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -2859,7 +2855,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -2894,7 +2890,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
diff --git a/tools/classifier/Dockerfile b/tools/classifier/Dockerfile
index ae45416c67..f82cff2675 100644
--- a/tools/classifier/Dockerfile
+++ b/tools/classifier/Dockerfile
@@ -10,7 +10,7 @@ ENV \
PIP_DEFAULT_TIMEOUT=120
# Install dependencies for unstructured library's partition
-RUN apt-get update && apt-get --no-install-recommends -y install dumb-init libmagic-dev poppler-utils\
+RUN apt-get update && apt-get --no-install-recommends -y install dumb-init git libmagic-dev poppler-utils\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
diff --git a/tools/classifier/src/config/properties.json b/tools/classifier/src/config/properties.json
index 7e36827e7b..1b7b306e3b 100644
--- a/tools/classifier/src/config/properties.json
+++ b/tools/classifier/src/config/properties.json
@@ -2,7 +2,7 @@
"schemaVersion": "0.0.1",
"displayName": "File Classifier",
"functionName": "classify",
- "toolVersion": "0.0.78",
+ "toolVersion": "0.0.79",
"description": "Classifies a file into a bin based on its contents",
"input": {
"description": "File to be classified"
diff --git a/tools/structure/Dockerfile b/tools/structure/Dockerfile
index 6af880bad3..c231636cc7 100644
--- a/tools/structure/Dockerfile
+++ b/tools/structure/Dockerfile
@@ -25,7 +25,7 @@ ENV \
# Install system dependencies in one layer
RUN apt-get update && \
apt-get install -y --no-install-recommends \
- ffmpeg libsm6 libxext6 libmagic-dev poppler-utils \
+ ffmpeg git libsm6 libxext6 libmagic-dev poppler-utils \
libreoffice freetds-dev freetds-bin dumb-init && \
apt-get clean && \
rm -rf /var/lib/apt/lists/* /var/cache/apt/archives/*
diff --git a/tools/structure/src/config/properties.json b/tools/structure/src/config/properties.json
index a1d8800031..8dce918746 100644
--- a/tools/structure/src/config/properties.json
+++ b/tools/structure/src/config/properties.json
@@ -2,7 +2,7 @@
"schemaVersion": "0.0.1",
"displayName": "Structure Tool",
"functionName": "structure_tool",
- "toolVersion": "0.0.99",
+ "toolVersion": "0.0.100",
"description": "This is a template tool which can answer set of input prompts designed in the Prompt Studio",
"input": {
"description": "File that needs to be indexed and parsed for answers"
diff --git a/tools/text_extractor/Dockerfile b/tools/text_extractor/Dockerfile
index 92274d3812..ea3abef48b 100644
--- a/tools/text_extractor/Dockerfile
+++ b/tools/text_extractor/Dockerfile
@@ -10,7 +10,7 @@ ENV \
PIP_DEFAULT_TIMEOUT=120
# Install dependencies for unstructured library's partition
-RUN apt-get update && apt-get --no-install-recommends -y install dumb-init libmagic-dev poppler-utils\
+RUN apt-get update && apt-get --no-install-recommends -y install dumb-init git libmagic-dev poppler-utils\
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
diff --git a/tools/text_extractor/src/config/properties.json b/tools/text_extractor/src/config/properties.json
index 648754bcee..a3d3c336f7 100644
--- a/tools/text_extractor/src/config/properties.json
+++ b/tools/text_extractor/src/config/properties.json
@@ -2,7 +2,7 @@
"schemaVersion": "0.0.1",
"displayName": "Text Extractor",
"functionName": "text_extractor",
- "toolVersion": "0.0.74",
+ "toolVersion": "0.0.75",
"description": "The Text Extractor is a powerful tool designed to convert documents to its text form or Extract texts from documents",
"input": {
"description": "Document"
diff --git a/unstract/filesystem/uv.lock b/unstract/filesystem/uv.lock
index 4f53174aff..616a330266 100644
--- a/unstract/filesystem/uv.lock
+++ b/unstract/filesystem/uv.lock
@@ -662,7 +662,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -677,10 +677,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -1844,7 +1840,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -1879,7 +1875,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
diff --git a/unstract/sdk1/pyproject.toml b/unstract/sdk1/pyproject.toml
index 1fb8e10dc6..a67c12c833 100644
--- a/unstract/sdk1/pyproject.toml
+++ b/unstract/sdk1/pyproject.toml
@@ -27,7 +27,7 @@ dependencies = [
"python-dotenv==1.0.1",
# # Adapter changes
"tiktoken~=0.9.0",
- "litellm==1.82.3",
+ "litellm",
"llama-index>=0.14.13",
"llama-index-vector-stores-postgres>=0.7.3",
"llama-index-vector-stores-milvus>=0.9.6",
@@ -71,7 +71,6 @@ docs = ["lazydocs~=0.4.8"]
test = [
"parameterized==0.9.0",
"pytest==8.3.3",
- "pytest-asyncio>=0.23.0",
"pytest-mock==3.14.0",
"pytest-asyncio>=0.24.0",
"pytest-cov>=6.0.0",
@@ -80,6 +79,7 @@ test = [
[tool.uv.sources]
unstract-core = { path = "../core", editable = true }
+litellm = { git = "https://github.com/Zipstack/litellm.git", tag = "v1.82.3" }
[build-system]
requires = ["hatchling"]
diff --git a/unstract/sdk1/uv.lock b/unstract/sdk1/uv.lock
index 1d9baae019..935fca31d8 100644
--- a/unstract/sdk1/uv.lock
+++ b/unstract/sdk1/uv.lock
@@ -1104,7 +1104,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -1119,10 +1119,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -2774,7 +2770,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -2809,7 +2805,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
diff --git a/unstract/tool-registry/tool_registry_config/public_tools.json b/unstract/tool-registry/tool_registry_config/public_tools.json
index c812e82797..c174d3b948 100644
--- a/unstract/tool-registry/tool_registry_config/public_tools.json
+++ b/unstract/tool-registry/tool_registry_config/public_tools.json
@@ -5,7 +5,7 @@
"schemaVersion": "0.0.1",
"displayName": "File Classifier",
"functionName": "classify",
- "toolVersion": "0.0.78",
+ "toolVersion": "0.0.79",
"description": "Classifies a file into a bin based on its contents",
"input": {
"description": "File to be classified"
@@ -106,9 +106,9 @@
"properties": {}
},
"icon": "\n\n",
- "image_url": "docker:unstract/tool-classifier:0.0.78",
+ "image_url": "docker:unstract/tool-classifier:0.0.79",
"image_name": "unstract/tool-classifier",
- "image_tag": "0.0.78"
+ "image_tag": "0.0.79"
},
"text_extractor": {
"tool_uid": "text_extractor",
@@ -116,7 +116,7 @@
"schemaVersion": "0.0.1",
"displayName": "Text Extractor",
"functionName": "text_extractor",
- "toolVersion": "0.0.74",
+ "toolVersion": "0.0.75",
"description": "The Text Extractor is a powerful tool designed to convert documents to its text form or Extract texts from documents",
"input": {
"description": "Document"
@@ -191,8 +191,8 @@
}
},
"icon": "\n\n",
- "image_url": "docker:unstract/tool-text-extractor:0.0.74",
+ "image_url": "docker:unstract/tool-text-extractor:0.0.75",
"image_name": "unstract/tool-text-extractor",
- "image_tag": "0.0.74"
+ "image_tag": "0.0.75"
}
}
diff --git a/unstract/tool-registry/uv.lock b/unstract/tool-registry/uv.lock
index 42c9ea4481..0fb8a3f516 100644
--- a/unstract/tool-registry/uv.lock
+++ b/unstract/tool-registry/uv.lock
@@ -699,7 +699,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -714,10 +714,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -1887,7 +1883,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -1922,6 +1918,7 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
+ { name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
{ name = "pytest-mock", specifier = "==3.14.0" },
diff --git a/uv.lock b/uv.lock
index 9353d252cb..e275f07da1 100644
--- a/uv.lock
+++ b/uv.lock
@@ -1548,7 +1548,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -1563,10 +1563,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -3752,7 +3748,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -3787,6 +3783,7 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
+ { name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },
{ name = "pytest-mock", specifier = "==3.14.0" },
diff --git a/workers/uv.lock b/workers/uv.lock
index 6f223ae552..02ea3d3ffd 100644
--- a/workers/uv.lock
+++ b/workers/uv.lock
@@ -1480,6 +1480,7 @@ dependencies = [
{ name = "griffecli" },
{ name = "griffelib" },
]
+sdist = { url = "https://files.pythonhosted.org/packages/04/56/28a0accac339c164b52a92c6cfc45a903acc0c174caa5c1713803467b533/griffe-2.0.0.tar.gz", hash = "sha256:c68979cd8395422083a51ea7cf02f9c119d889646d99b7b656ee43725de1b80f", size = 293906, upload-time = "2026-03-23T21:06:53.402Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/8b/94/ee21d41e7eb4f823b94603b9d40f86d3c7fde80eacc2c3c71845476dddaa/griffe-2.0.0-py3-none-any.whl", hash = "sha256:5418081135a391c3e6e757a7f3f156f1a1a746cc7b4023868ff7d5e2f9a980aa", size = 5214, upload-time = "2026-02-09T19:09:44.105Z" },
]
@@ -1492,6 +1493,7 @@ dependencies = [
{ name = "colorama" },
{ name = "griffelib" },
]
+sdist = { url = "https://files.pythonhosted.org/packages/a4/f8/2e129fd4a86e52e58eefe664de05e7d502decf766e7316cc9e70fdec3e18/griffecli-2.0.0.tar.gz", hash = "sha256:312fa5ebb4ce6afc786356e2d0ce85b06c1c20d45abc42d74f0cda65e159f6ef", size = 56213, upload-time = "2026-03-23T21:06:54.8Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/e6/ed/d93f7a447bbf7a935d8868e9617cbe1cadf9ee9ee6bd275d3040fbf93d60/griffecli-2.0.0-py3-none-any.whl", hash = "sha256:9f7cd9ee9b21d55e91689358978d2385ae65c22f307a63fb3269acf3f21e643d", size = 9345, upload-time = "2026-02-09T19:09:42.554Z" },
]
@@ -1500,6 +1502,7 @@ wheels = [
name = "griffelib"
version = "2.0.0"
source = { registry = "https://pypi.org/simple" }
+sdist = { url = "https://files.pythonhosted.org/packages/ad/06/eccbd311c9e2b3ca45dbc063b93134c57a1ccc7607c5e545264ad092c4a9/griffelib-2.0.0.tar.gz", hash = "sha256:e504d637a089f5cab9b5daf18f7645970509bf4f53eda8d79ed71cce8bd97934", size = 166312, upload-time = "2026-03-23T21:06:55.954Z" }
wheels = [
{ url = "https://files.pythonhosted.org/packages/4d/51/c936033e16d12b627ea334aaaaf42229c37620d0f15593456ab69ab48161/griffelib-2.0.0-py3-none-any.whl", hash = "sha256:01284878c966508b6d6f1dbff9b6fa607bc062d8261c5c7253cb285b06422a7f", size = 142004, upload-time = "2026-02-09T19:09:40.561Z" },
]
@@ -1991,7 +1994,7 @@ wheels = [
[[package]]
name = "litellm"
version = "1.82.3"
-source = { registry = "https://pypi.org/simple" }
+source = { git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3#809ba8ce35f1c763eb28717a82f1079b5c8f151d" }
dependencies = [
{ name = "aiohttp" },
{ name = "click" },
@@ -2006,10 +2009,6 @@ dependencies = [
{ name = "tiktoken" },
{ name = "tokenizers" },
]
-sdist = { url = "https://files.pythonhosted.org/packages/53/00/13993312e6d2fb29cd6d5ffceb293455ef747fe5675eaa9aa49b09184656/litellm-1.82.3.tar.gz", hash = "sha256:7215b95e7cc38a52b5ae778d67e8829dec86594c8b05d8431294e95c7d59937c", size = 17368754, upload-time = "2026-03-16T21:51:30.356Z" }
-wheels = [
- { url = "https://files.pythonhosted.org/packages/5a/3a/590d58dee65a238f7f3d5c37f8f9f9021ecaf27fe379a393b4259324b56e/litellm-1.82.3-py3-none-any.whl", hash = "sha256:609901f6c5a5cf8c24386e4e3f50738bb8a9db719709fd76b208c8ee6d00f7a7", size = 15551034, upload-time = "2026-03-16T21:51:26.747Z" },
-]
[[package]]
name = "llama-cloud"
@@ -4723,7 +4722,7 @@ requires-dist = [
{ name = "gcsfs", marker = "extra == 'gcs'", specifier = "~=2024.10.0" },
{ name = "httpx", specifier = ">=0.25.2" },
{ name = "jsonschema" },
- { name = "litellm", specifier = "==1.82.3" },
+ { name = "litellm", git = "https://github.com/Zipstack/litellm.git?tag=v1.82.3" },
{ name = "llama-index", specifier = ">=0.14.13" },
{ name = "llama-index-vector-stores-milvus", specifier = ">=0.9.6" },
{ name = "llama-index-vector-stores-pinecone", specifier = ">=0.7.1" },
@@ -4758,7 +4757,6 @@ docs = [{ name = "lazydocs", specifier = "~=0.4.8" }]
test = [
{ name = "parameterized", specifier = "==0.9.0" },
{ name = "pytest", specifier = "==8.3.3" },
- { name = "pytest-asyncio", specifier = ">=0.23.0" },
{ name = "pytest-asyncio", specifier = ">=0.24.0" },
{ name = "pytest-cov", specifier = ">=6.0.0" },
{ name = "pytest-md-report", specifier = ">=0.6.2" },