mirror of
https://github.com/hwchase17/langchain.git
synced 2026-06-09 10:17:00 +00:00
standard-tests: add benchmarks (#31302)
Co-authored-by: Sydney Runkle <sydneymarierunkle@gmail.com>
This commit is contained in:
@@ -0,0 +1 @@
|
||||
H4sIAGx1OGgC/+1dW2/bNhR+968Q9GLAiAKnWXbRWxtnwNZhKZoA3dAWAU0dW1woUuUliRv4v4+ynSZt5thhB6GpvjzEtnxoUt85h5dzk1CODONOaGXzXpYY+uDJuryXhL+xLmZ50r9OK7KWTcmm+dvrlOvQRrk0T98Y4ShhiXXazBI21t6FT5y53XQnNVpSoPGWTDp/v5NWuiCZ5spLuZNaZ4hVae6Mp5tPZ7peDCPNr1OhuPQFnfmm2yXZfN5fDKokVpCxyxEmCeOcanfzKUv6g8Hro9Hzw9Oj0WDQ/4woI8V1IdR0E3UtsnOabaLyrtRGfGTNoDfQBsgU8e0IG2wzSWrqyi2J3aymDaSltpswahiVBbTVJsKrzDomlAwykTHDy8eQ25nij6CXbCOz7pJr+wjimvHzcLvZRRCmzYy529KQM7OMa/8oqEwgFxU9vsVWI6woSGORJ6+OT04XF7wR+X1CQ7YOKkZ39Hv1q0EHG81I+gVzLE+Cmpda8IXKB+XlQUEdFWk+3ElFeEnTTwrdvNXjf4J4L9/XRle1O5sIGWaWs9Chl245cay+Eaqgq8UvrQT4Hu11WobemtflN03HEyZtM1VQQEO4WejLsgml8+aSnJyVzFTbN7jyTG5LfSHCRKb4lsOZz9/Pe70VpklyH8zr9XcdOguIOtb0dDvJ3k6lzFoRpCNcDZQToYQtQ2tmtbqZVm+hlXoa4B7b5Tfzuyzc++mHnw/2hwf7v6x4yQPavKpl9oL/ffVqbzqkF7W9fDmq6M24dKfPRkfq+e9/3eH4NMyl+7sHmfNmrLPh3rODuzLQ/NwuD6yW1Mx4u7z06jwQ2Jl1VIXbVlMydZC2hnhSnw33fjzYPxhOxuNAtJrwF4P+f3E8bngI4B4PXOLDlAHkYpBjgC0GtmbVA3IRyO0AtSh5K8OiDuhioLtkFsBhaWgNtnBMYTNAFwMdZzg4RAGnWBVuH9BFQPeHV5jo4hbWUgO4GOAMcIvBDXPcV5weAFzkXo7I4fwQBZ6ASS5O6KjxWQG7GOz0BLjF4DbRGmtrnJVEAbi4aa6khhDgRYC3C9RiRO4E++A44EqGSQ429BbXBkl0DuhioBtLxgFdnPtBw/+ATXC72mrEtITQRWE3NUQwMUVBRzOCUfNh5J5wgO9/8vwTCq7EKhdrsQBuEbhphVM3HChwd377wFUaYfRRyEns4mHJRtQawsFhygZsXxwavLkQFxp+TmQLtaeq8pLNMM3FRcIEdELfAA9rRIt7EiQMxZ30EUkfd9Bn5zCRxNnkcMyPtMkZ7acwoMe56xjiweOQK7Cyxpnl3ql3MAV3y0N8DD9dbNyYRPhT3MFHKKQAxOb8w+cEqyJ8Tk8jjdhXY4nsdRT3gzn2KahrxaQEdHGeJ0k4ccdABx9AbAoFlQLpJ1gg2hQ5b6GscaWvyDrmDSqEI1qyRak7RUB45E6YEzQVlYha9diRFFxoj/C1juYnohRVfBgZcIvAbYIVLgY2mLMRCYXUzidj6RFws8NX3J6eUlU7pFHElttDTEwkcF5NDUyzkUEKukKccdeO3bAod9TMglq4nWU9Z941FlaJlbKrEoCHSXaM9TWMnF3VdaktzpMd4z7MVh3V9hqF87vGe5hZO1zLGb5EBD+3nO1s8IARFHSG1/9JJCpAVWPDUDVKdiJFoT15+01ZUWCWQ4hOm89fBXBRwLFLAIcDV2uwnSO9OTYHC3W5YuvD4qQaBVxtqGYGFtnOWmSxxnWU8RUx1AzqbMoqbEUdZX0pqma4YH+3ouZRHrtzPP8V5rJuMZwkznGdXdfHsB3BG4Pi2k/BVol1OQY3fYkCLnECJ7UvkDqHxaHFsga6xlYUj4hsN8w33CUCyxGuCrfztw9cv49qqXERSa55J/B8GYT6tliNHDsSVEVrNWDVN71abEpQAwD87kJMAjS9o5zXNSmYdbtbDQCK31HWI121wyHnSA/qKuuRighbQttZw8AtAjfR6DVcuCibAz/kU/B9I/gTHqEW5e2NcKX2qNAcuZWzwjE4cRGSh7UVMT7f87O4ETcQFehewyMCI0mrwPkauOGg36KiCsR/fmseAGf858QVFcJXX+UCuM/jL+44/e75/XZ0/OfR+zuX+71lyAsryNh8dfmQ8ZKyw4CN0TJP+oPB66PR88PTo9Fg0L+hWSKXnc5qWkMyCmit+erEGcFDY8OUrbVx2Qlx3/BtDf2CcEImO1JcF+H+19AxHmTZZnw59IxJqS8zbcRUqHUtalFlhj54si4TxTqqj95QJbMF/zIb+gh8WUN7lTWjkNnYTyYLs/VaupX0ZS5gmOm64bVdS1yF25KiId842gVxQbXUs6ppoFhFD5EaJjKhLvQ5PfiLhqYP3bUJ7JaiEi5b/l8N027dwIUBqG3IAytYUGQ1fUwft4029fMwvNYx5z+pSpDGAO2z4bB3U8fKNvqXJ8cve2EmWorJXu9fkd/OsYbtAAA=
|
||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
48
libs/partners/openai/tests/conftest.py
Normal file
48
libs/partners/openai/tests/conftest.py
Normal file
@@ -0,0 +1,48 @@
|
||||
from typing import Any
|
||||
|
||||
import pytest
|
||||
from langchain_tests.conftest import YamlGzipSerializer
|
||||
from langchain_tests.conftest import _base_vcr_config as _base_vcr_config
|
||||
from vcr import VCR # type: ignore[import-untyped]
|
||||
|
||||
_EXTRA_HEADERS = [
|
||||
("openai-organization", "PLACEHOLDER"),
|
||||
("user-agent", "PLACEHOLDER"),
|
||||
("x-openai-client-user-agent", "PLACEHOLDER"),
|
||||
]
|
||||
|
||||
|
||||
def remove_request_headers(request: Any) -> Any:
|
||||
for k in request.headers:
|
||||
request.headers[k] = "**REDACTED**"
|
||||
request.uri = "**REDACTED**"
|
||||
return request
|
||||
|
||||
|
||||
def remove_response_headers(response: dict) -> dict:
|
||||
for k in response["headers"]:
|
||||
response["headers"][k] = "**REDACTED**"
|
||||
return response
|
||||
|
||||
|
||||
@pytest.fixture(scope="session")
|
||||
def vcr_config(_base_vcr_config: dict) -> dict: # noqa: F811
|
||||
"""
|
||||
Extend the default configuration coming from langchain_tests.
|
||||
"""
|
||||
config = _base_vcr_config.copy()
|
||||
config.setdefault("filter_headers", []).extend(_EXTRA_HEADERS)
|
||||
config["before_record_request"] = remove_request_headers
|
||||
config["before_record_response"] = remove_response_headers
|
||||
config["serializer"] = "yaml.gz"
|
||||
config["path_transformer"] = VCR.ensure_suffix(".yaml.gz")
|
||||
|
||||
return config
|
||||
|
||||
|
||||
@pytest.fixture
|
||||
def vcr(vcr_config: dict) -> VCR:
|
||||
"""Override the default vcr fixture to include custom serializers"""
|
||||
my_vcr = VCR(**vcr_config)
|
||||
my_vcr.register_serializer("yaml.gz", YamlGzipSerializer)
|
||||
return my_vcr
|
||||
@@ -38,6 +38,10 @@ class TestAzureOpenAIStandard(ChatModelIntegrationTests):
|
||||
def supports_json_mode(self) -> bool:
|
||||
return True
|
||||
|
||||
@property
|
||||
def enable_vcr_tests(self) -> bool:
|
||||
return True
|
||||
|
||||
|
||||
class TestAzureOpenAIStandardLegacy(ChatModelIntegrationTests):
|
||||
"""Test a legacy model."""
|
||||
@@ -58,3 +62,7 @@ class TestAzureOpenAIStandardLegacy(ChatModelIntegrationTests):
|
||||
@property
|
||||
def structured_output_kwargs(self) -> dict:
|
||||
return {"method": "function_calling"}
|
||||
|
||||
@property
|
||||
def enable_vcr_tests(self) -> bool:
|
||||
return True
|
||||
|
||||
@@ -57,6 +57,10 @@ class TestOpenAIStandard(ChatModelIntegrationTests):
|
||||
]:
|
||||
return {"invoke": ["reasoning_output", "cache_read_input"], "stream": []}
|
||||
|
||||
@property
|
||||
def enable_vcr_tests(self) -> bool:
|
||||
return True
|
||||
|
||||
def invoke_with_cache_read_input(self, *, stream: bool = False) -> AIMessage:
|
||||
with open(REPO_ROOT_DIR / "README.md") as f:
|
||||
readme = f.read()
|
||||
|
||||
Reference in New Issue
Block a user