hotfix(fireworks): replace unavailable integration test model (#40890)

The [Fireworks release
job](https://github.com/langchain-ai/langchain/actions/runs/36479033898/job/109120052547)
failed 55 tests because `kimi-k2p6` returned `404 NOT_FOUND`; the
`gpt-oss-120b` chat tests passed in that same job.

- Use `accounts/fireworks/models/gpt-oss-120b` across the affected chat,
completions, and standard integration tests, reusing the existing
chat-model constant.
- Preserve all assertions and coverage; leave production defaults and
release workflows unchanged.
- Fireworks [advertises GPT-OSS-120B as
serverless](https://fireworks.ai/models/fireworks/gpt-oss-120b). Live
completions and expanded chat coverage still need confirmation with CI
credentials: no Fireworks API key is available locally. This is not
evidence that Kimi was retired.

Made by [Open SWE](https://github.com/langchain-ai/open-swe) · [view
thread](https://openswe.langchain.dev/agents/b8a0feec-8262-501b-8d6f-204f467461e3)
· openai:gpt-6-astra (medium)

Co-authored-by: Mason Daugherty <mdrxy@users.noreply.github.com>
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
This commit is contained in:
authored and GitHub committed 2026-09-28 16:41:02 -04:00
1 parent 316c045803
commit 78a3cbcc6b
3 files changed
+7 -15

No files matched your search

@@ -22,9 +22,7 @@ _MODEL = "accounts/fireworks/models/gpt-oss-120b"
@pytest.mark.parametrize("strict", [None, True, False])
def test_tool_choice_bool(strict: bool | None) -> None: # noqa: FBT001
"""Test that tool choice is respected with different strict values."""
llm = ChatFireworks(
model="accounts/fireworks/models/kimi-k2p6", rate_limiter=rate_limiter
)
llm = ChatFireworks(model=_MODEL, rate_limiter=rate_limiter)
class MyTool(BaseModel):
name: str
@@ -62,9 +60,7 @@ def test_tool_choice_bool(strict: bool | None) -> None: # noqa: FBT001
async def test_astream() -> None:
"""Test streaming tokens from ChatFireworks."""
llm = ChatFireworks(
model="accounts/fireworks/models/kimi-k2p6", rate_limiter=rate_limiter
)
llm = ChatFireworks(model=_MODEL, rate_limiter=rate_limiter)
full: BaseMessageChunk | None = None
chunks_with_token_counts = 0
@@ -162,9 +158,7 @@ def _get_joke_class(
@pytest.mark.parametrize("schema_type", ["pydantic", "typeddict", "json_schema"])
def test_structured_output_json_schema(schema_type: str) -> None:
llm = ChatFireworks(
model="accounts/fireworks/models/kimi-k2p6", rate_limiter=rate_limiter
)
llm = ChatFireworks(model=_MODEL, rate_limiter=rate_limiter)
schema, validation_function = _get_joke_class(schema_type) # type: ignore[arg-type]
chat = llm.with_structured_output(schema, method="json_schema")
@@ -183,7 +177,7 @@ def test_structured_output_json_schema(schema_type: str) -> None:
def test_reasoning_effort_parameter() -> None:
"""Test that the standard `reasoning_effort` parameter is accepted by the API."""
llm = ChatFireworks(
model="accounts/fireworks/models/kimi-k2p6",
model=_MODEL,
reasoning_effort="high",
rate_limiter=rate_limiter,
)
@@ -199,9 +193,7 @@ def test_reasoning_effort_parameter() -> None:
def test_reasoning_effort_call_time_kwarg() -> None:
"""Test that `reasoning_effort` is accepted as a call-time kwarg."""
llm = ChatFireworks(
model="accounts/fireworks/models/kimi-k2p6", rate_limiter=rate_limiter
)
llm = ChatFireworks(model=_MODEL, rate_limiter=rate_limiter)
result = llm.invoke("Say hello in one sentence", reasoning_effort="high")
@@ -13,7 +13,7 @@ import pytest as pytest
from langchain_fireworks import Fireworks
_MODEL = "accounts/fireworks/models/kimi-k2p6"
_MODEL = "accounts/fireworks/models/gpt-oss-120b"
def test_fireworks_call() -> None:
@@ -19,7 +19,7 @@ class TestFireworksStandard(ChatModelIntegrationTests):
@property
def chat_model_params(self) -> dict:
return {
"model": "accounts/fireworks/models/kimi-k2p6",
"model": "accounts/fireworks/models/gpt-oss-120b",
"temperature": 0,
"rate_limiter": rate_limiter,
}