Skip to content

Commit 035fda5

Browse files
feat(api): api update
1 parent 8e7ae2b commit 035fda5

16 files changed

+179
-120
lines changed

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 24
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lemma%2Flemma-b2821b31483edc05c92932e74b3bc0c2bac91c377136645b9df94adc6aa8a9d1.yml
3-
openapi_spec_hash: 14e609ef6b1e22905d6586fb257a83c0
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/lemma%2Flemma-8cd151afe45f9f40ddf5285bd840af3451896e7b9a53b06093dfbefcdc968bc0.yml
3+
openapi_spec_hash: 21ff168e4da2129dc4cdc2f4e4e91ec1
44
config_hash: 017a31b2ac0856f4d4152a5173e6fa18

api.md

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,14 +95,16 @@ from lemma.types import (
9595
Evaluator,
9696
RubricCriterion,
9797
RubricExample,
98+
EvaluatorRetrieveResponse,
99+
EvaluatorUpdateResponse,
98100
EvaluatorListResponse,
99101
EvaluatorCreateRubricResponse,
100102
)
101103
```
102104

103105
Methods:
104106

105-
- <code title="get /evaluators/{evaluator_id}">client.evaluators.<a href="./src/lemma/resources/evaluators.py">retrieve</a>(evaluator_id) -> <a href="./src/lemma/types/evaluator.py">Evaluator</a></code>
106-
- <code title="put /evaluators/{evaluator_id}">client.evaluators.<a href="./src/lemma/resources/evaluators.py">update</a>(evaluator_id, \*\*<a href="src/lemma/types/evaluator_update_params.py">params</a>) -> <a href="./src/lemma/types/evaluator.py">Evaluator</a></code>
107+
- <code title="get /evaluators/{evaluator_id}">client.evaluators.<a href="./src/lemma/resources/evaluators.py">retrieve</a>(evaluator_id) -> <a href="./src/lemma/types/evaluator_retrieve_response.py">EvaluatorRetrieveResponse</a></code>
108+
- <code title="put /evaluators/{evaluator_id}">client.evaluators.<a href="./src/lemma/resources/evaluators.py">update</a>(evaluator_id, \*\*<a href="src/lemma/types/evaluator_update_params.py">params</a>) -> <a href="./src/lemma/types/evaluator_update_response.py">EvaluatorUpdateResponse</a></code>
107109
- <code title="get /evaluators">client.evaluators.<a href="./src/lemma/resources/evaluators.py">list</a>() -> <a href="./src/lemma/types/evaluator_list_response.py">EvaluatorListResponse</a></code>
108110
- <code title="post /evaluators/rubric">client.evaluators.<a href="./src/lemma/resources/evaluators.py">create_rubric</a>(\*\*<a href="src/lemma/types/evaluator_create_rubric_params.py">params</a>) -> <a href="./src/lemma/types/evaluator_create_rubric_response.py">EvaluatorCreateRubricResponse</a></code>

src/lemma/resources/evaluators.py

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,11 @@
1919
async_to_streamed_response_wrapper,
2020
)
2121
from .._base_client import make_request_options
22-
from ..types.evaluator import Evaluator
2322
from ..types.rubric_example_param import RubricExampleParam
2423
from ..types.rubric_criterion_param import RubricCriterionParam
2524
from ..types.evaluator_list_response import EvaluatorListResponse
25+
from ..types.evaluator_update_response import EvaluatorUpdateResponse
26+
from ..types.evaluator_retrieve_response import EvaluatorRetrieveResponse
2627
from ..types.evaluator_create_rubric_response import EvaluatorCreateRubricResponse
2728

2829
__all__ = ["EvaluatorsResource", "AsyncEvaluatorsResource"]
@@ -58,7 +59,7 @@ def retrieve(
5859
extra_query: Query | None = None,
5960
extra_body: Body | None = None,
6061
timeout: float | httpx.Timeout | None | NotGiven = not_given,
61-
) -> Evaluator:
62+
) -> EvaluatorRetrieveResponse:
6263
"""
6364
Get a specific evaluator by ID.
6465
@@ -81,7 +82,7 @@ def retrieve(
8182
options=make_request_options(
8283
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
8384
),
84-
cast_to=Evaluator,
85+
cast_to=EvaluatorRetrieveResponse,
8586
)
8687

8788
def update(
@@ -98,7 +99,7 @@ def update(
9899
extra_query: Query | None = None,
99100
extra_body: Body | None = None,
100101
timeout: float | httpx.Timeout | None | NotGiven = not_given,
101-
) -> Evaluator:
102+
) -> EvaluatorUpdateResponse:
102103
"""
103104
Update an existing evaluator.
104105
@@ -132,7 +133,7 @@ def update(
132133
options=make_request_options(
133134
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
134135
),
135-
cast_to=Evaluator,
136+
cast_to=EvaluatorUpdateResponse,
136137
)
137138

138139
def list(
@@ -236,7 +237,7 @@ async def retrieve(
236237
extra_query: Query | None = None,
237238
extra_body: Body | None = None,
238239
timeout: float | httpx.Timeout | None | NotGiven = not_given,
239-
) -> Evaluator:
240+
) -> EvaluatorRetrieveResponse:
240241
"""
241242
Get a specific evaluator by ID.
242243
@@ -259,7 +260,7 @@ async def retrieve(
259260
options=make_request_options(
260261
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
261262
),
262-
cast_to=Evaluator,
263+
cast_to=EvaluatorRetrieveResponse,
263264
)
264265

265266
async def update(
@@ -276,7 +277,7 @@ async def update(
276277
extra_query: Query | None = None,
277278
extra_body: Body | None = None,
278279
timeout: float | httpx.Timeout | None | NotGiven = not_given,
279-
) -> Evaluator:
280+
) -> EvaluatorUpdateResponse:
280281
"""
281282
Update an existing evaluator.
282283
@@ -310,7 +311,7 @@ async def update(
310311
options=make_request_options(
311312
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
312313
),
313-
cast_to=Evaluator,
314+
cast_to=EvaluatorUpdateResponse,
314315
)
315316

316317
async def list(

src/lemma/resources/playground.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
from __future__ import annotations
44

5-
from typing import Optional
5+
from typing import Dict, Optional
66

77
import httpx
88

@@ -48,6 +48,7 @@ def run(
4848
model: str,
4949
prompt_id: str,
5050
evaluator_id: Optional[str] | Omit = omit,
51+
input_variables: Dict[str, object] | Omit = omit,
5152
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
5253
# The extra values given here take precedence over values defined on the client or passed to this method.
5354
extra_headers: Headers | None = None,
@@ -65,6 +66,8 @@ def run(
6566
6667
evaluator_id: Optional ID of the evaluator to use
6768
69+
input_variables: Input variables for Jinja template substitution
70+
6871
extra_headers: Send extra headers
6972
7073
extra_query: Add additional query parameters to the request
@@ -80,6 +83,7 @@ def run(
8083
"model": model,
8184
"prompt_id": prompt_id,
8285
"evaluator_id": evaluator_id,
86+
"input_variables": input_variables,
8387
},
8488
playground_run_params.PlaygroundRunParams,
8589
),
@@ -116,6 +120,7 @@ async def run(
116120
model: str,
117121
prompt_id: str,
118122
evaluator_id: Optional[str] | Omit = omit,
123+
input_variables: Dict[str, object] | Omit = omit,
119124
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
120125
# The extra values given here take precedence over values defined on the client or passed to this method.
121126
extra_headers: Headers | None = None,
@@ -133,6 +138,8 @@ async def run(
133138
134139
evaluator_id: Optional ID of the evaluator to use
135140
141+
input_variables: Input variables for Jinja template substitution
142+
136143
extra_headers: Send extra headers
137144
138145
extra_query: Add additional query parameters to the request
@@ -148,6 +155,7 @@ async def run(
148155
"model": model,
149156
"prompt_id": prompt_id,
150157
"evaluator_id": evaluator_id,
158+
"input_variables": input_variables,
151159
},
152160
playground_run_params.PlaygroundRunParams,
153161
),

src/lemma/types/__init__.py

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,7 @@
55
from .log import Log as Log
66
from .prompt import Prompt as Prompt
77
from .dataset import Dataset as Dataset
8-
from .evaluator import Evaluator as Evaluator
9-
from .rubric_example import RubricExample as RubricExample
108
from .log_list_params import LogListParams as LogListParams
11-
from .rubric_criterion import RubricCriterion as RubricCriterion
129
from .log_create_params import LogCreateParams as LogCreateParams
1310
from .log_list_response import LogListResponse as LogListResponse
1411
from .prompt_create_params import PromptCreateParams as PromptCreateParams
@@ -23,6 +20,8 @@
2320
from .dataset_delete_response import DatasetDeleteResponse as DatasetDeleteResponse
2421
from .evaluator_list_response import EvaluatorListResponse as EvaluatorListResponse
2522
from .evaluator_update_params import EvaluatorUpdateParams as EvaluatorUpdateParams
23+
from .evaluator_update_response import EvaluatorUpdateResponse as EvaluatorUpdateResponse
24+
from .evaluator_retrieve_response import EvaluatorRetrieveResponse as EvaluatorRetrieveResponse
2625
from .dataset_generate_schema_params import DatasetGenerateSchemaParams as DatasetGenerateSchemaParams
2726
from .evaluator_create_rubric_params import EvaluatorCreateRubricParams as EvaluatorCreateRubricParams
2827
from .dataset_generate_dataset_params import DatasetGenerateDatasetParams as DatasetGenerateDatasetParams

src/lemma/types/evaluator.py

Lines changed: 0 additions & 19 deletions
This file was deleted.
Lines changed: 20 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,32 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

3-
from typing import List
3+
from typing import Dict, Optional
4+
from datetime import datetime
5+
from typing_extensions import Literal
6+
7+
from pydantic import Field as FieldInfo
48

59
from .._models import BaseModel
6-
from .rubric_example import RubricExample
7-
from .rubric_criterion import RubricCriterion
810

911
__all__ = ["EvaluatorCreateRubricResponse"]
1012

1113

1214
class EvaluatorCreateRubricResponse(BaseModel):
13-
criteria: List[RubricCriterion]
15+
config: Dict[str, object]
16+
"""Variables used in the prompt template"""
17+
18+
name: str
1419

15-
description: str
20+
tenant_id: str = FieldInfo(alias="tenantId")
1621

17-
examples: List[RubricExample]
22+
id: Optional[str] = None
1823

19-
name: str
24+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
25+
"""Timestamp when the record was created"""
26+
27+
description: Optional[str] = None
28+
29+
type: Optional[Literal["RUBRIC", "WEBHOOK", "CUSTOM"]] = None
30+
31+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
32+
"""Timestamp when the record was last updated"""
Lines changed: 30 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,35 @@
11
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
22

3-
from typing import List
4-
from typing_extensions import TypeAlias
3+
from typing import Dict, List, Optional
4+
from datetime import datetime
5+
from typing_extensions import Literal, TypeAlias
56

6-
from .evaluator import Evaluator
7+
from pydantic import Field as FieldInfo
78

8-
__all__ = ["EvaluatorListResponse"]
9+
from .._models import BaseModel
910

10-
EvaluatorListResponse: TypeAlias = List[Evaluator]
11+
__all__ = ["EvaluatorListResponse", "EvaluatorListResponseItem"]
12+
13+
14+
class EvaluatorListResponseItem(BaseModel):
15+
config: Dict[str, object]
16+
"""Variables used in the prompt template"""
17+
18+
name: str
19+
20+
tenant_id: str = FieldInfo(alias="tenantId")
21+
22+
id: Optional[str] = None
23+
24+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
25+
"""Timestamp when the record was created"""
26+
27+
description: Optional[str] = None
28+
29+
type: Optional[Literal["RUBRIC", "WEBHOOK", "CUSTOM"]] = None
30+
31+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
32+
"""Timestamp when the record was last updated"""
33+
34+
35+
EvaluatorListResponse: TypeAlias = List[EvaluatorListResponseItem]
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from typing import Dict, Optional
4+
from datetime import datetime
5+
from typing_extensions import Literal
6+
7+
from pydantic import Field as FieldInfo
8+
9+
from .._models import BaseModel
10+
11+
__all__ = ["EvaluatorRetrieveResponse"]
12+
13+
14+
class EvaluatorRetrieveResponse(BaseModel):
15+
config: Dict[str, object]
16+
"""Variables used in the prompt template"""
17+
18+
name: str
19+
20+
tenant_id: str = FieldInfo(alias="tenantId")
21+
22+
id: Optional[str] = None
23+
24+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
25+
"""Timestamp when the record was created"""
26+
27+
description: Optional[str] = None
28+
29+
type: Optional[Literal["RUBRIC", "WEBHOOK", "CUSTOM"]] = None
30+
31+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
32+
"""Timestamp when the record was last updated"""
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2+
3+
from typing import Dict, Optional
4+
from datetime import datetime
5+
from typing_extensions import Literal
6+
7+
from pydantic import Field as FieldInfo
8+
9+
from .._models import BaseModel
10+
11+
__all__ = ["EvaluatorUpdateResponse"]
12+
13+
14+
class EvaluatorUpdateResponse(BaseModel):
15+
config: Dict[str, object]
16+
"""Variables used in the prompt template"""
17+
18+
name: str
19+
20+
tenant_id: str = FieldInfo(alias="tenantId")
21+
22+
id: Optional[str] = None
23+
24+
created_at: Optional[datetime] = FieldInfo(alias="createdAt", default=None)
25+
"""Timestamp when the record was created"""
26+
27+
description: Optional[str] = None
28+
29+
type: Optional[Literal["RUBRIC", "WEBHOOK", "CUSTOM"]] = None
30+
31+
updated_at: Optional[datetime] = FieldInfo(alias="updatedAt", default=None)
32+
"""Timestamp when the record was last updated"""

0 commit comments

Comments
 (0)