Skip to content

Commit 12f3c6c

Browse files
committed
update
1 parent 12e2141 commit 12f3c6c

8 files changed

Lines changed: 31 additions & 25 deletions

eval_protocol/pytest/default_agent_rollout_processor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
from openai.types import CompletionUsage
2323
from eval_protocol.pytest.rollout_processor import RolloutProcessor
2424
from eval_protocol.pytest.types import Dataset, RolloutProcessorConfig
25-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
25+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
2626
from pydantic import BaseModel
2727
from typing import Optional
2828

eval_protocol/pytest/default_klavis_sandbox_rollout_processor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
from eval_protocol.models import EvaluationRow
1212
from eval_protocol.pytest.rollout_processor import RolloutProcessor
1313
from eval_protocol.pytest.types import RolloutProcessorConfig
14-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
14+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
1515

1616
from eval_protocol.pytest.default_agent_rollout_processor import Agent
1717
from klavis import Klavis

eval_protocol/pytest/default_mcp_gym_rollout_processor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@
1414
from eval_protocol.models import EvaluationRow
1515
from eval_protocol.pytest.rollout_processor import RolloutProcessor
1616
from eval_protocol.pytest.types import RolloutProcessorConfig, ServerMode
17-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
17+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
1818

1919

2020
class MCPServerManager:

eval_protocol/pytest/default_single_turn_rollout_process.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
from openai.types import CompletionUsage
1818
from eval_protocol.pytest.rollout_processor import RolloutProcessor
1919
from eval_protocol.pytest.types import RolloutProcessorConfig
20-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
20+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
2121

2222
logger = logging.getLogger(__name__)
2323

eval_protocol/pytest/evaluation_test_utils.py

Lines changed: 0 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -619,22 +619,3 @@ def build_rollout_processor_config(
619619
server_script_path=None,
620620
kwargs=rollout_processor_kwargs,
621621
)
622-
623-
624-
def normalize_fireworks_model_for_litellm(completion_params: CompletionParams | None) -> CompletionParams | None:
625-
"""Fireworks model names like 'accounts/<org>/models/<model>' need the fireworks_ai/
626-
prefix when routing through LiteLLM. This function adds the prefix if missing.
627-
"""
628-
if completion_params is None:
629-
return None
630-
631-
model = completion_params.get("model")
632-
if (
633-
model
634-
and isinstance(model, str)
635-
and not model.startswith("fireworks_ai/")
636-
and re.match(r"^accounts/[^/]+/models/.+", model)
637-
):
638-
completion_params = completion_params.copy()
639-
completion_params["model"] = f"fireworks_ai/{model}"
640-
return completion_params

eval_protocol/pytest/openenv_rollout_processor.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424
from eval_protocol.models import EvaluationRow, Message
2525
from eval_protocol.pytest.rollout_processor import RolloutProcessor
2626
from eval_protocol.pytest.types import RolloutProcessorConfig
27-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
27+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
2828

2929
logger = logging.getLogger(__name__)
3030

eval_protocol/pytest/tracing_utils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from eval_protocol.utils.evaluation_row_utils import filter_longest_conversation
1313
from eval_protocol.types.remote_rollout_processor import DataLoaderConfig, RolloutMetadata, InitRequest
1414
from eval_protocol.pytest.types import RolloutProcessorConfig
15-
from eval_protocol.pytest.evaluation_test_utils import normalize_fireworks_model_for_litellm
15+
from eval_protocol.pytest.utils import normalize_fireworks_model_for_litellm
1616

1717

1818
def default_fireworks_output_data_loader(config: DataLoaderConfig) -> DynamicDataLoader:

eval_protocol/pytest/utils.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
"""Utility functions for model name handling."""
2+
3+
import re
4+
from typing import Optional
5+
6+
from eval_protocol.models import CompletionParams
7+
8+
9+
def normalize_fireworks_model_for_litellm(completion_params: CompletionParams | None) -> CompletionParams | None:
10+
"""Fireworks model names like 'accounts/<org>/models/<model>' or 'accounts/<org>/deployments/<model>'
11+
need the fireworks_ai/ prefix when routing through LiteLLM. This function adds the prefix if missing.
12+
"""
13+
if completion_params is None:
14+
return None
15+
16+
model = completion_params.get("model")
17+
if (
18+
model
19+
and isinstance(model, str)
20+
and not model.startswith("fireworks_ai/")
21+
and re.match(r"^accounts/[^/]+/(models|deployments)/.+", model)
22+
):
23+
completion_params = completion_params.copy()
24+
completion_params["model"] = f"fireworks_ai/{model}"
25+
return completion_params

0 commit comments

Comments
 (0)