chore: isolate bare minimum project dependencies (#2282)
Some checks failed
Integration Auth Tests / test-matrix (oauth2_token) (push) Failing after 2s
Integration Tests / test-matrix (http, 3.12, inspect) (push) Failing after 7s
Integration Tests / test-matrix (http, 3.12, post_training) (push) Failing after 7s
Integration Tests / test-matrix (http, 3.13, agents) (push) Failing after 11s
Integration Tests / test-matrix (http, 3.12, vector_io) (push) Failing after 13s
Integration Tests / test-matrix (http, 3.13, providers) (push) Failing after 11s
Integration Tests / test-matrix (http, 3.12, agents) (push) Failing after 21s
Integration Tests / test-matrix (library, 3.13, agents) (push) Failing after 9s
Integration Tests / test-matrix (http, 3.13, inference) (push) Failing after 17s
Integration Tests / test-matrix (http, 3.13, inspect) (push) Failing after 16s
Integration Tests / test-matrix (library, 3.12, inference) (push) Failing after 14s
Integration Tests / test-matrix (library, 3.12, datasets) (push) Failing after 9s
Integration Tests / test-matrix (http, 3.13, datasets) (push) Failing after 18s
Integration Tests / test-matrix (http, 3.12, providers) (push) Failing after 19s
Integration Tests / test-matrix (library, 3.12, scoring) (push) Failing after 10s
Integration Tests / test-matrix (library, 3.12, agents) (push) Failing after 18s
Integration Tests / test-matrix (library, 3.12, post_training) (push) Failing after 13s
Integration Tests / test-matrix (http, 3.13, tool_runtime) (push) Failing after 15s
Integration Tests / test-matrix (http, 3.13, post_training) (push) Failing after 15s
Integration Tests / test-matrix (library, 3.12, tool_runtime) (push) Failing after 12s
Integration Tests / test-matrix (http, 3.12, datasets) (push) Failing after 20s
Integration Tests / test-matrix (library, 3.13, post_training) (push) Failing after 10s
Integration Tests / test-matrix (library, 3.12, inspect) (push) Failing after 14s
Integration Tests / test-matrix (library, 3.13, datasets) (push) Failing after 7s
Test Llama Stack Build / generate-matrix (push) Successful in 7s
Integration Tests / test-matrix (http, 3.13, scoring) (push) Failing after 16s
Integration Tests / test-matrix (library, 3.12, providers) (push) Failing after 16s
Integration Tests / test-matrix (http, 3.12, tool_runtime) (push) Failing after 18s
Test Llama Stack Build / build-custom-container-distribution (push) Failing after 8s
Python Package Build Test / build (3.12) (push) Failing after 5s
Integration Tests / test-matrix (library, 3.12, vector_io) (push) Failing after 17s
Python Package Build Test / build (3.13) (push) Failing after 4s
Test Llama Stack Build / build-single-provider (push) Failing after 8s
Integration Tests / test-matrix (library, 3.13, inspect) (push) Failing after 8s
Integration Tests / test-matrix (library, 3.13, inference) (push) Failing after 11s
Integration Tests / test-matrix (http, 3.12, inference) (push) Failing after 26s
Integration Tests / test-matrix (http, 3.12, scoring) (push) Failing after 19s
Integration Tests / test-matrix (http, 3.13, vector_io) (push) Failing after 15s
Integration Tests / test-matrix (library, 3.13, scoring) (push) Failing after 11s
Integration Tests / test-matrix (library, 3.13, tool_runtime) (push) Failing after 8s
Test External Providers / test-external-providers (venv) (push) Failing after 8s
Integration Tests / test-matrix (library, 3.13, providers) (push) Failing after 10s
Test Llama Stack Build / build-ubi9-container-distribution (push) Failing after 12s
Unit Tests / unit-tests (3.12) (push) Failing after 7s
Integration Tests / test-matrix (library, 3.13, vector_io) (push) Failing after 10s
Unit Tests / unit-tests (3.13) (push) Failing after 6s
Update ReadTheDocs / update-readthedocs (push) Failing after 4s
Test Llama Stack Build / build (push) Failing after 7s
Pre-commit / pre-commit (push) Successful in 48s

# What does this PR do?

The goal is to promote the minimal set of dependencies the project needs
to run, this includes:

* dependencies needed to work with the CLI
* dependencies needed for the server to run with no providers

This also:
* Relocate redundant dependencies out of the core project and into the
  individual providers that actually require them.
* Include all necessary server dependencies so the project can run
  standalone, even without any providers.

<!-- Provide a short summary of what this PR does and why. Link to
relevant issues if applicable. -->

<!-- If resolving an issue, uncomment and update the line below -->
<!-- Closes #[issue-number] -->

## Test Plan

Build and run distro a server.

Signed-off-by: Sébastien Han <seb@redhat.com>
This commit is contained in:
Sébastien Han 2025-06-26 10:14:27 +02:00 committed by GitHub
parent 43c1f39bd6
commit dbdc811d16
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
7 changed files with 111 additions and 28 deletions

View file

@ -6,6 +6,8 @@ aiohttp==3.11.13
# via llama-stack
aiosignal==1.3.2
# via aiohttp
aiosqlite==0.21.0
# via llama-stack
annotated-types==0.7.0
# via pydantic
anyio==4.8.0
@ -14,6 +16,8 @@ anyio==4.8.0
# llama-stack-client
# openai
# starlette
asyncpg==0.30.0
# via llama-stack
attrs==25.1.0
# via
# aiohttp
@ -27,11 +31,18 @@ certifi==2025.1.31
charset-normalizer==3.4.1
# via requests
click==8.1.8
# via llama-stack-client
# via
# llama-stack-client
# uvicorn
colorama==0.4.6 ; sys_platform == 'win32'
# via
# click
# tqdm
deprecated==1.2.18
# via
# opentelemetry-api
# opentelemetry-exporter-otlp-proto-http
# opentelemetry-semantic-conventions
distro==1.9.0
# via
# llama-stack-client
@ -50,10 +61,13 @@ frozenlist==1.5.0
# aiosignal
fsspec==2024.12.0
# via huggingface-hub
googleapis-common-protos==1.67.0
# via opentelemetry-exporter-otlp-proto-http
h11==0.16.0
# via
# httpcore
# llama-stack
# uvicorn
hf-xet==1.1.5 ; platform_machine == 'aarch64' or platform_machine == 'amd64' or platform_machine == 'arm64' or platform_machine == 'x86_64'
# via huggingface-hub
httpcore==1.0.9
@ -71,6 +85,8 @@ idna==3.10
# httpx
# requests
# yarl
importlib-metadata==8.5.0
# via opentelemetry-api
jinja2==3.1.6
# via llama-stack
jiter==0.8.2
@ -95,6 +111,25 @@ numpy==2.2.3
# via pandas
openai==1.71.0
# via llama-stack
opentelemetry-api==1.30.0
# via
# opentelemetry-exporter-otlp-proto-http
# opentelemetry-sdk
# opentelemetry-semantic-conventions
opentelemetry-exporter-otlp-proto-common==1.30.0
# via opentelemetry-exporter-otlp-proto-http
opentelemetry-exporter-otlp-proto-http==1.30.0
# via llama-stack
opentelemetry-proto==1.30.0
# via
# opentelemetry-exporter-otlp-proto-common
# opentelemetry-exporter-otlp-proto-http
opentelemetry-sdk==1.30.0
# via
# llama-stack
# opentelemetry-exporter-otlp-proto-http
opentelemetry-semantic-conventions==0.51b0
# via opentelemetry-sdk
packaging==24.2
# via huggingface-hub
pandas==2.2.3
@ -109,6 +144,10 @@ propcache==0.3.0
# via
# aiohttp
# yarl
protobuf==5.29.3
# via
# googleapis-common-protos
# opentelemetry-proto
pyaml==25.1.0
# via llama-stack-client
pyasn1==0.4.8
@ -148,7 +187,7 @@ regex==2024.11.6
requests==2.32.4
# via
# huggingface-hub
# llama-stack
# opentelemetry-exporter-otlp-proto-http
# tiktoken
rich==13.9.4
# via
@ -160,8 +199,6 @@ rpds-py==0.22.3
# referencing
rsa==4.9
# via python-jose
setuptools==80.8.0
# via llama-stack
six==1.17.0
# via
# ecdsa
@ -189,11 +226,13 @@ tqdm==4.67.1
# openai
typing-extensions==4.12.2
# via
# aiosqlite
# anyio
# fastapi
# huggingface-hub
# llama-stack-client
# openai
# opentelemetry-sdk
# pydantic
# pydantic-core
# referencing
@ -201,7 +240,13 @@ tzdata==2025.1
# via pandas
urllib3==2.3.0
# via requests
uvicorn==0.34.0
# via llama-stack
wcwidth==0.2.13
# via prompt-toolkit
wrapt==1.17.2
# via deprecated
yarl==1.18.3
# via aiohttp
zipp==3.21.0
# via importlib-metadata