bump pydantic-monty, refresh deps, cap transformers<5

This commit is contained in:
Yiorgis Gozadinos 2026-05-18 16:02:51 +03:00
parent 1df6530d03
commit 04415a9d09
No known key found for this signature in database
7 changed files with 1674 additions and 1527 deletions

View file

@ -5,6 +5,9 @@
- Bump `docling>=2.93.0` and `docling-core>=2.75.0`.
- Bump `pydantic-ai-slim>=1.96.0`. Migrate off deprecated APIs: AG-UI imports use `pydantic_ai.ui.ag_ui`, docs/CLI examples use the explicit `openai-chat:` model prefix, and `Agent(retries=)` is split into `tool_retries=` + `output_retries=`.
- Bump `pydantic-monty>=0.0.17`. Migrate off deprecated `pydantic_monty.run_repl_async(repl, ...)` to `repl.feed_run_async(...)`.
- Cap `transformers<5.0.0` in the `mxbai` extra: `mxbai-rerank>=0.1.6` calls `tokenizer.prepare_for_model` which transformers 5 removed.
- Refresh the rest of the lockfile to latest within current constraints (pydantic, pydantic-ai, rich, ruff, ty, pytest, torch, textual, textual-image, watchfiles, pre-commit, datasets, and transitives).
## [0.47.0] - 2026-05-14

View file

@ -260,8 +260,7 @@ class Sandbox:
},
)
if self._context.documents:
await pydantic_monty.run_repl_async(
self._repl,
await self._repl.feed_run_async(
"pass",
inputs={
"documents": [
@ -296,8 +295,7 @@ class Sandbox:
max_chars = self._config.analysis.max_output_chars
try:
output = await pydantic_monty.run_repl_async(
repl,
output = await repl.feed_run_async(
code,
external_functions=external_fns,
print_callback=print_callback,

View file

@ -393,6 +393,8 @@ async def _rebuild_embed_only(
embeddings.extend(batch_embeddings)
for chunk, content_fts, embedding in zip(chunks, texts, embeddings):
assert chunk.id is not None
assert chunk.document_id is not None
pending_records.append(
client.store.ChunkRecord(
id=chunk.id,

View file

@ -96,7 +96,7 @@ async def _apply_compress_docling_document(store: Store) -> None: # pragma: no
"Recovering %d documents from failed migration", len(staging_ids)
)
# Create new documents table and copy from staging
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(
@ -137,7 +137,7 @@ async def _apply_compress_docling_document(store: Store) -> None: # pragma: no
return
# No documents and no staging to recover, just recreate table with new schema
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(
@ -177,7 +177,7 @@ async def _apply_compress_docling_document(store: Store) -> None: # pragma: no
)
# Replace old table with staging table
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(

View file

@ -118,7 +118,7 @@ async def _apply_split_pages_zstd(store: Store) -> None: # pragma: no cover
logger.info(
"Recovering %d documents from failed migration", len(staging_ids)
)
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(
@ -144,7 +144,7 @@ async def _apply_split_pages_zstd(store: Store) -> None: # pragma: no cover
return
# No documents and no staging — recreate table with new schema
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(
@ -188,7 +188,7 @@ async def _apply_split_pages_zstd(store: Store) -> None: # pragma: no cover
)
# Replace old table with staging table
store.documents_table = None
del store.documents_table
if "documents" in (await store.db.list_tables()).tables:
await store.db.drop_table("documents")
store.documents_table = await store.db.create_table(

View file

@ -31,7 +31,7 @@ dependencies = [
"pathspec>=1.0.4",
"pydantic>=2.12.5",
"pydantic-ai-slim[openai,fastmcp,logfire,ag-ui]>=1.96.0",
"pydantic-monty>=0.0.9",
"pydantic-monty>=0.0.17",
"python-dotenv>=1.2.2",
"pyyaml>=6.0.3",
"rich>=14.3.3",
@ -48,7 +48,7 @@ s3 = ["obstore>=0.9,<0.10"]
# Embedding providers
voyageai = ["pydantic-ai-slim[voyageai]"]
# Rerankers
mxbai = ["mxbai-rerank>=0.1.6"]
mxbai = ["mxbai-rerank>=0.1.6", "transformers>=4.49.0,<5.0.0"]
cohere = ["cohere>=5.21.1"]
zeroentropy = ["zeroentropy>=0.1.0a11"]
jina = ["transformers>=4.40.0", "torch>=2.0.0"]

3174
uv.lock

File diff suppressed because it is too large Load diff