Skip to content

Commit aaac9b0

Browse files
authored
Merge pull request #81 from m-misiura/get_ready_for_lls_0.5.x
feat: add llama-stack 0.5.x compatibility with request objects
2 parents 0c4c943 + 0d3e8d3 commit aaac9b0

8 files changed

Lines changed: 280 additions & 182 deletions

File tree

pyproject.toml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
[project]
22
name = "llama-stack-provider-lmeval"
3-
version = "0.4.2"
3+
version = "0.5.0"
44
description = "Add your description here"
55
readme = "README.md"
66
requires-python = ">=3.12"
77
dependencies = [
88
"llama-stack",
9-
# Pinned to 35.0.0a1 as required by LLS 0.4.x; monitor for stable release
10-
"kubernetes==35.0.0a1",
9+
"kubernetes==35.0.0",
1110
"fastapi",
1211
"opentelemetry-api",
1312
"opentelemetry-exporter-otlp",
@@ -17,7 +16,7 @@ dependencies = [
1716
]
1817

1918
[project.optional-dependencies]
20-
dev = ["pytest", "pytest-cov", "black", "isort", "ruff", "llama-stack==0.3.5"]
19+
dev = ["pytest", "pytest-cov", "black", "isort", "ruff", "llama-stack==0.5.0"]
2120

2221
[dependency-groups]
2322
dev = ["pytest", "pytest-cov", "black", "isort", "pre-commit", "ruff", "mypy", "types-PyYAML", "types-requests"]

src/llama_stack_provider_lmeval/compat.py

Lines changed: 39 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,29 @@
1414
Eval,
1515
EvalCandidate,
1616
EvaluateResponse,
17+
EvaluateRowsRequest,
1718
Job,
19+
JobCancelRequest,
20+
JobResultRequest,
1821
JobStatus,
22+
JobStatusRequest,
1923
ListBenchmarksResponse,
2024
ProviderSpec,
2125
RemoteProviderSpec,
26+
RunEvalRequest,
2227
ScoringResult,
2328
json_schema_type,
2429
)
25-
except ModuleNotFoundError: # Legacy llama_stack layout
30+
from llama_stack_api.eval.compat import (
31+
resolve_evaluate_rows_request,
32+
resolve_job_cancel_request,
33+
resolve_job_result_request,
34+
resolve_job_status_request,
35+
resolve_run_eval_request,
36+
)
37+
except ModuleNotFoundError: # Legacy llama_stack layout (pre-0.5.x)
38+
# Note: Request objects (RunEvalRequest, etc.) were introduced in 0.5.x
39+
# Legacy versions only support individual parameter style
2640
from llama_stack.apis.benchmarks import Benchmark, ListBenchmarksResponse
2741
from llama_stack.apis.common.job_types import Job, JobStatus
2842
from llama_stack.apis.datatypes import Api
@@ -40,6 +54,20 @@
4054
)
4155
from llama_stack.schema_utils import json_schema_type
4256

57+
# Request objects don't exist in pre-0.5.x, set to None
58+
RunEvalRequest = None # type: ignore
59+
EvaluateRowsRequest = None # type: ignore
60+
JobStatusRequest = None # type: ignore
61+
JobCancelRequest = None # type: ignore
62+
JobResultRequest = None # type: ignore
63+
64+
# Compat resolve functions don't exist in pre-0.5.x, set to None
65+
resolve_run_eval_request = None # type: ignore
66+
resolve_evaluate_rows_request = None # type: ignore
67+
resolve_job_status_request = None # type: ignore
68+
resolve_job_cancel_request = None # type: ignore
69+
resolve_job_result_request = None # type: ignore
70+
4371
__all__ = [
4472
"Api",
4573
"Benchmark",
@@ -48,11 +76,21 @@
4876
"Eval",
4977
"EvalCandidate",
5078
"EvaluateResponse",
79+
"EvaluateRowsRequest",
5180
"Job",
81+
"JobCancelRequest",
82+
"JobResultRequest",
5283
"JobStatus",
84+
"JobStatusRequest",
5385
"ListBenchmarksResponse",
5486
"ProviderSpec",
5587
"RemoteProviderSpec",
88+
"RunEvalRequest",
5689
"ScoringResult",
5790
"json_schema_type",
91+
"resolve_evaluate_rows_request",
92+
"resolve_job_cancel_request",
93+
"resolve_job_result_request",
94+
"resolve_job_status_request",
95+
"resolve_run_eval_request",
5896
]

0 commit comments

Comments
 (0)