mirror of
https://github.com/andrewyng/openworker.git
synced 2026-09-03 13:00:37 +00:00
fix: omit reasoning summaries for BytePlus Ark
This commit is contained in:
@@ -211,7 +211,11 @@ def _openai_compat(vendor: str, default_base_url: str, env_key: Optional[str] =
|
||||
|
||||
|
||||
def _openai_responses_compat(
|
||||
vendor: str, default_base_url: str, env_key: Optional[str] = None
|
||||
vendor: str,
|
||||
default_base_url: str,
|
||||
env_key: Optional[str] = None,
|
||||
*,
|
||||
reasoning_summary: bool = True,
|
||||
):
|
||||
"""Builder factory for vendors that explicitly implement the OpenAI Responses API.
|
||||
|
||||
@@ -228,7 +232,11 @@ def _openai_responses_compat(
|
||||
raise RuntimeError(
|
||||
f"No {vendor} API key configured — add it in Settings ▸ Models."
|
||||
)
|
||||
return OpenAIResponsesProvider(api_key=api_key, base_url=base_url)
|
||||
return OpenAIResponsesProvider(
|
||||
api_key=api_key,
|
||||
base_url=base_url,
|
||||
reasoning_summary=reasoning_summary,
|
||||
)
|
||||
|
||||
return build
|
||||
|
||||
@@ -279,6 +287,7 @@ def _responses_compat(
|
||||
recommended_model: str,
|
||||
env_key: str,
|
||||
endpoint_help: str = "",
|
||||
reasoning_summary: bool = True,
|
||||
) -> ProviderDescriptor:
|
||||
"""Descriptor for a vendor exposing the OpenAI Responses API."""
|
||||
return ProviderDescriptor(
|
||||
@@ -301,7 +310,12 @@ def _responses_compat(
|
||||
or f"Prefilled with {title}'s official Responses endpoint.",
|
||||
),
|
||||
],
|
||||
build=_openai_responses_compat(title, base_url, env_key),
|
||||
build=_openai_responses_compat(
|
||||
title,
|
||||
base_url,
|
||||
env_key,
|
||||
reasoning_summary=reasoning_summary,
|
||||
),
|
||||
recommended_model=recommended_model,
|
||||
env_key=env_key,
|
||||
blurb=f"Uses {title}'s OpenAI-compatible Responses API — the endpoint is prefilled, just add your key.",
|
||||
@@ -532,6 +546,7 @@ DESCRIPTORS: list[ProviderDescriptor] = [
|
||||
recommended_model="dola-seed-evolving-latest-version",
|
||||
env_key="ARK_API_KEY",
|
||||
endpoint_help="BytePlus Ark's Asia Pacific endpoint. This provider is separate from Volcengine Ark Agent Plan.",
|
||||
reasoning_summary=False,
|
||||
),
|
||||
_responses_compat(
|
||||
"ark-agent-plan-cn",
|
||||
|
||||
@@ -343,11 +343,13 @@ ARK_RESPONSES_VENDORS = {
|
||||
"base_url": "https://ark.ap-southeast.bytepluses.com/api/v3",
|
||||
"env_key": "ARK_API_KEY",
|
||||
"recommended_model": "dola-seed-evolving-latest-version",
|
||||
"reasoning_summary": False,
|
||||
},
|
||||
"ark-agent-plan-cn": {
|
||||
"base_url": "https://ark.cn-beijing.volces.com/api/plan/v3",
|
||||
"env_key": "ARK_AGENT_PLAN_CN_API_KEY",
|
||||
"recommended_model": "doubao-seed-evolving",
|
||||
"reasoning_summary": True,
|
||||
},
|
||||
}
|
||||
|
||||
@@ -366,7 +368,7 @@ def test_ark_responses_descriptors_are_separate():
|
||||
assert not base.required
|
||||
|
||||
|
||||
def test_ark_responses_builders_use_their_own_keys_and_endpoints(monkeypatch):
|
||||
def test_ark_responses_builder_capabilities_PathsUnchanged(monkeypatch):
|
||||
from coworker.providers.openai_responses import OpenAIResponsesProvider
|
||||
from coworker.providers.registry import build_provider_client
|
||||
|
||||
@@ -384,6 +386,10 @@ def test_ark_responses_builders_use_their_own_keys_and_endpoints(monkeypatch):
|
||||
"plan-key",
|
||||
ARK_RESPONSES_VENDORS["ark-agent-plan-cn"]["base_url"],
|
||||
)
|
||||
assert bp._reasoning_summary is ARK_RESPONSES_VENDORS["ark"]["reasoning_summary"]
|
||||
assert plan._reasoning_summary is ARK_RESPONSES_VENDORS["ark-agent-plan-cn"][
|
||||
"reasoning_summary"
|
||||
]
|
||||
|
||||
|
||||
def test_ark_responses_never_leak_the_openai_key(monkeypatch):
|
||||
|
||||
Reference in New Issue
Block a user