Skip to content

Commit 50a44b9

Browse files
authored
Add stepfun/step-3.5-flash:free (#2342)
1 parent 931d5c1 commit 50a44b9

5 files changed

Lines changed: 72 additions & 0 deletions

File tree

apps/web/src/lib/models.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ import { KIMI_CURRENT_MODEL_ID } from '@/lib/providers/moonshotai';
2020
import { morph_warp_grep_free_model } from '@/lib/providers/morph';
2121
import { gpt_oss_20b_free_model } from '@/lib/providers/openai';
2222
import { qwen36_plus_model } from '@/lib/providers/qwen';
23+
import { stepfun_35_flash_free_model } from '@/lib/providers/stepfun';
2324
import { grok_code_fast_1_optimized_free_model } from '@/lib/providers/xai';
2425

2526
export const PRIMARY_DEFAULT_MODEL = CLAUDE_SONNET_CURRENT_MODEL_ID;
@@ -69,6 +70,7 @@ export const kiloExclusiveModels = [
6970
qwen36_plus_model,
7071
trinity_large_thinking_free_model,
7172
claude_sonnet_clawsetup_model,
73+
stepfun_35_flash_free_model,
7274
] as KiloExclusiveModel[];
7375

7476
export function isKiloStealthModel(model: string): boolean {

apps/web/src/lib/providers/index.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ import {
4242
addCacheBreakpoints,
4343
injectReasoningIntoContent,
4444
} from '@/lib/providers/openrouter/request-helpers';
45+
import { isStepFunModel } from '@/lib/providers/stepfun';
4546

4647
function inferSupportedChatApis(
4748
aiSdkProvider: CustomLlmProvider | undefined,
@@ -257,6 +258,9 @@ function getPreferredProviderOrder(requestedModel: string): string[] {
257258
if (isMoonshotModel(requestedModel)) {
258259
return [OpenRouterInferenceProviderIdSchema.enum.moonshotai];
259260
}
261+
if (isStepFunModel(requestedModel)) {
262+
return [OpenRouterInferenceProviderIdSchema.enum.stepfun];
263+
}
260264
if (isZaiModel(requestedModel)) {
261265
return [OpenRouterInferenceProviderIdSchema.enum['z-ai']];
262266
}

apps/web/src/lib/providers/openrouter/inference-provider-id.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ export const OpenRouterInferenceProviderIdSchema = z.enum([
1717
'mistral',
1818
'novita',
1919
'seed',
20+
'stepfun',
2021
'streamlake',
2122
'stealth',
2223
'z-ai',
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
import type { KiloExclusiveModel } from '@/lib/providers/kilo-exclusive-model';
2+
3+
export function isStepFunModel(requestedModel: string) {
4+
return requestedModel.startsWith('stepfun/');
5+
}
6+
7+
export const stepfun_35_flash_free_model: KiloExclusiveModel = {
8+
public_id: 'stepfun/step-3.5-flash:free',
9+
display_name: 'StepFun: Step 3.5 Flash (free)',
10+
description:
11+
"Step 3.5 Flash is StepFun's most capable open-source foundation model. Built on a sparse Mixture of Experts (MoE) architecture, it selectively activates only 11B of its 196B parameters per token. It is a reasoning model that is incredibly speed efficient even at long contexts.",
12+
context_length: 262_144,
13+
max_completion_tokens: 262_144,
14+
status: 'public',
15+
flags: ['reasoning'],
16+
gateway: 'openrouter',
17+
internal_id: 'stepfun/step-3.5-flash',
18+
inference_provider: null,
19+
pricing: null,
20+
};

apps/web/src/tests/openrouter-models-sorting.approved.json

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -702,6 +702,51 @@
702702
"isFree": true,
703703
"opencode": {}
704704
},
705+
{
706+
"id": "stepfun/step-3.5-flash:free",
707+
"canonical_slug": "stepfun/step-3.5-flash:free",
708+
"hugging_face_id": "",
709+
"name": "StepFun: Step 3.5 Flash (free)",
710+
"created": 1756238927,
711+
"description": "Step 3.5 Flash is StepFun's most capable open-source foundation model. Built on a sparse Mixture of Experts (MoE) architecture, it selectively activates only 11B of its 196B parameters per token. It is a reasoning model that is incredibly speed efficient even at long contexts.",
712+
"context_length": 262144,
713+
"architecture": {
714+
"modality": "text->text",
715+
"input_modalities": [
716+
"text"
717+
],
718+
"output_modalities": [
719+
"text"
720+
],
721+
"tokenizer": "Other",
722+
"instruct_type": null
723+
},
724+
"pricing": {
725+
"prompt": "0.000000000000",
726+
"completion": "0.000000000000",
727+
"request": "0",
728+
"image": "0",
729+
"web_search": "0",
730+
"internal_reasoning": "0",
731+
"input_cache_read": "0.000000000000"
732+
},
733+
"top_provider": {
734+
"context_length": 262144,
735+
"max_completion_tokens": 262144,
736+
"is_moderated": false
737+
},
738+
"per_request_limits": null,
739+
"supported_parameters": [
740+
"max_tokens",
741+
"temperature",
742+
"tools",
743+
"reasoning",
744+
"include_reasoning"
745+
],
746+
"default_parameters": {},
747+
"isFree": true,
748+
"opencode": {}
749+
},
705750
{
706751
"id": "kilo-auto/small",
707752
"name": "Kilo Auto Small",

0 commit comments

Comments
 (0)