Još jedan domaći model rođen, odnos cene i performansi divlja.
U poslednje vreme sam video izjavu Luo Fulija, rukovodioca velikog modela kompanije Xiaomi, i prilično me dirnula.
Rekla je da mnogi Coding Plan-ovi velikih modela trenutno gube novac kako bi privukli korisnike.

To je dovelo do toga da se u zemlji pojavio veoma čudan fenomen — jeftini Coding Planovi se ne mogu ni naći.
Ali istovremeno, svako od nas treba da ima jedan Coding Plan, jer kada se ova stvar poveže sa Claude Code-om, to je najbolji Agent, bilo za učenje ili rad, efikasnost se drastično povećava.
Danas vam preporučujem opciju koja me je oduševila — Step 3.5 Flash 2603 koji je upravo lansirao StepRhino. Odnos cene i performansi je prilično visok.
01. Koja poboljšanja ima Step 3.5 Flash 2603
Seriju Step 3.5 Flash sam već ranije koristio, ukupan utisak je: brz, stabilan, zgodan za visokofrekventne razvojne zadatke.

Najznačajnija promena u verziji 2603 je dodavanje režima niskog rezonovanja (low think mode): nisu svi zadaci potrebni dubokog rezonovanja, omogućavanje jednostavnim pitanjima da brzo prođu, a kompleksna pitanja da se duboko razmisle — to je razumna alokacija resursa.
Cene Coding Plana su sledeće.

Na arhitektonskom nivou, Step 3.5 Flash nastavlja dizajn retkih MoE (mixture of experts), od ukupnog broja parametara aktivira se samo mali deo pri svakom rezonovanju, teorijski može da zadrži kvalitet izlaza i pritom smanji količinu izračunavanja.
Ova karakteristika je veoma naklonjena Agent scenarijima — u radnom toku često treba pokrenuti desetine ili čak stotine krugova kratkih zadataka, svaki krug malo uštedi, akumulirano je to veoma značajno.
02. Način integracije i inicijalna konfiguracija
Koristim PaiSwitch za prebacivanje modela ispod haube, to je alat koji sam sam razvio, princip je sličan CC Switch, omogućava brzo prebacivanje modela ispod haube u Claude Code-u, bez potrebe da se svaki put menja globalni konfiguracioni fajl, mnogo je zgodniji za upotrebu.
Upravljanje modelima dodajte novi prilagođeni model, popunite nekoliko ključnih parametara:
Ime modela step-3.5-flash-2603, Base URL https://api.stepfun.com, API Key idite na StepRhino otvorenu platformu i podignite jedan, ako ste Step Plan pretplatnik, Base URL možete promeniti u https://api.stepfun.com/step_plan/v1.

Na otvorenoj platformi napravite novi API Key, posao od minut, ne zaboravite da ga kopirate i sačuvate.

Nakon popunjavanja kliknite na test konekcije, konekcija je uspešna tek kada je sve spremno.

Ovde postoji detalj: ako je Base URL dodatno popunjen sa /v1, prijaviće grešku. Jer nova verzija Claude Code-a je već sama dodala v1 sufiks.

Unesite bilo koju komandu da vidite ima li odgovora, ako ima odgovora to znači da je sloj ispod haube prebačen.
Ovaj korak nemojte preskakati, jer mnogo puta konfiguracija deluje ispravno, ali stvarni zahtev i dalje ide preko starog modela, verifikujte da budete mirni.

03. Prva praksa: test Coding zadatka
Nakon završene integracije, direktno sam probao sa PaiAgent-om. PaiAgent je platforma za orkestraciju radnih tokova koju sam napravio Vibe Coding-om (GitHub adresa: https://github.com/itwanger/PaiAgent), obuhvata razdvajanje front-end/back-end, integraciju više LLM-ova, kompleksno DAG izvršenje itd., baza koda ima izvesnu razmeru, testiranje kompleksnih zadataka je relevantnije od Hello World-a.
Prvi zadatak je dodavanje novog dobavljača čvoru velikog modela, zahteva istovremenu izmenu front-end logike prikaza, back-end factory paterna i globalnog konfiguracionog API-ja. Samo iz opisa zahteva, ova izmena prelazi tri sloja arhitekture, nije jednostavno dodavanje ili brisanje polja.
Prompt: u konfiguraciji velikog modela PaiAgent-a, dodaj mi novog dobavljača, nazvanog StepRhino, padajući popis na front-end-u se sinhrono ažurira, back-end fabrika i izvršilac sinhrono podržavaju.

Step 3.5 Flash 2603 je prvo pregledao strukturu projekta, a zatim dao dve opcije: prva, dodati novi tip čvora; druga, proširiti nabrojane dobavljače u postojećem opštem LLM čvoru, uz ponovno korišćenje postojećeg factory paterna. Izabrao sam opciju dva, više u skladu sa pravcem proširenja postojeće arhitekture.
Model nije gubio reči, direktno je seo na posao. Prvo je izmenio backend enum klasu, dodao konfiguraciju dobavljača StepRhino; zatim u factory klasi dodao odgovarajuću logiku instanciranja izvršioca; konačno u front-end globalnoj konfiguracionoj komponenti dodao padajuću opciju. Front-end i back-end integracija, prošlo iz prvog pokušaja.

U padajućem okviru na front-end-u pojavila se opcija StepRhino, popunite API Key, sačuvajte, testni interfejs vraća normalno. To pokazuje da je veza od interfejsa do back-enda ispravno izmenjena, prvi pokušaj je uspeo, bez padova. Za model koji se prvi put susreće sa ovim projektom, ovaj nastup me je prilično iznenadio — on nije mehanički izvršavao instrukcije, već je zaista pročitao arhitekturu pa onda radio.
Nakon ovoga, dodao sam malo veći zahtev: omogućiti LLM čvoru da direktno na platnu prebacuje dobavljača, umesto da svaki put ulazi u globalnu konfiguraciju.
Prompt: nakon što se LLM čvor prevuče na platno, desni panel svojstava može direktno da izabere koji od LLM konfiguracija, bez potrebe za globalnom izmenom.

Ova izmena obuhvata vezu stanja čvora, logiku renderovanja panela svojstava i kako tok izvršenja radnog toka čita konfiguraciju modela na nivou čvora, malo je kompleksnija od prethodnog zadatka. Step 3.5 Flash 2603 je ovog puta trajao nešto duže, ali izlaz nije bio haotičan.
Nakon izmene, prevucite LLM čvor na platno, na desnoj strani direktno možete videti padajući okvir, iz globalne LLM konfiguracije izaberite odgovarajućeg dobavljača, nakon što sačuvate i pokrenete radni tok, čvor će izvršiti sa izabranim modelom. Interakcijsko iskustvo je zaista bolje za stepenicu.

Zatim sa promptom testirajmo da li veza od ulaza do izlaza celog radnog toka radi. Ovaj prompt je zadatak igranja uloga, koji od modela traži da originalni sadržaj prilagodi u stilu transkripta za podcast. Nakon izvršenja izlaz je normalan, format kompletan, sadržaj je ukusan.
Pokazuje da su inženjerska sposobnost i sposobnost razumevanja teksta Step 3.5 Flash 2603 na nivou, nije onaj model koji zna samo da piše CRUD.
04. Druga praksa: remedijacija bezbednosti koda
Moj PaiAgent ima sledeći problem: lozinka baze podataka, MinIO ključ, JWT secret direktno napisani u application.yml, a na front-end stranici za prijavu podrazumevano popunjeno admin / 123.
U fazi razvoja nije problem, ali ako baza koda treba da se otvori ili rasporedi u produkciju, to je stvarni bezbednosni rizik.
Zatražio sam od Step 3.5 Flash 2603 da uradi kompletnu bezbednosnu remedijaciju.
Ključni zahtevi su: back-end konfiguracija prebačena na injekciju env varijabli, ukloniti podrazumevanu lozinku na front-end-u, dodati bezbednosnu proveru pri pokretanju, dopuniti .env.example šablon, ažurirati README.



Ovakav zadatak ima jednu teškoću — nije dodavanje stvari u kod, već „izmena" i „brisanje".
Mnogo puta model prilikom zadataka brisanja i izmene okleva, ili promeni pola, ili nakon izmene nastanu problemi kompatibilnosti.
Način na koji je Step 3.5 Flash 2603 obradio mi se svideo: back-end koristi ${ENV_VAR:default} placeholder za zamenu hardkodovanih ključeva, zadržava podrazumevane vrednosti iz vremena razvoja ali dodaje upozorenje; front-end je uklonio podrazumevano popunjavanje na stranici za prijavu i podsetnik na interfejsu.
Šta je konkretno izmenjeno na back-end-u:
Uvođenje dotenv mehanizma, svi hardkodovani osetljivi podaci u application.yml zamenjeni su ${ENV_VAR:default} placeholder-ima, konfiguracija se čita iz .env fajla.
Istovremeno je dodat SecurityConfigValidator koji pri pokretanju Spring Boot-a proverava dužinu JWT secret-a (zahteva najmanje 32 karaktera), kompleksnost lozinke baze podataka, slaba konfiguracija direktno baca izuzetak i zaustavlja pokretanje.
Na nivou inženjerskih standarda dopunjen je .env.example šablon fajl, .gitignore je dobio .env ignorisanje, README je ažuriran sa koracima pokretanja.

Nakon izmene pokrenuo sam krug testova:
# back-end test
./mvnw test
# rezultat: Tests run: 47, Failures: 0, Errors: 0
# front-end build i provera
cd frontend
npm run build
npm run lintSvi testovi prolaze, što pokazuje da refaktorisanje nije razbilo postojeću funkcionalnost.
05. Efikasnost tokena je potcenjena
Vraćajući se na pitanje koje je Luo Fulija postavila na početku: zašto mnogi Coding Planovi gube novac?
Glavni razlog je potrošnja tokena nije ozbiljno shvaćena.
Kao OpenClaw, upravljanje kontekstom je veoma loše, jedan korisnički upit razbiće na više nezavisnih API zahteva, svaki zahtev nosi predug kontekst prozor (često preko 100 hiljada tokena).
Preračunato u API cene, stvarni trošak može biti i desetke puta veći od cene pretplate.
Drugim rečima, OpenClaw je uradio veliku uslugu kompanijama velikih modela, frenetično trošeći tokene.
U ovom pogledu, Claude Code je i dalje najbolji, u upravljanju kontekstom postoji „pažljiv dizajn" — šta zadržati, šta odbaciti, kada komprimirati — sve odrađeno vrlo dobro.

Alati trećih strana nemaju ove procene, mogu samo sve da ubace.
Šta onda mi kao korisnici možemo naučiti?
Prvo, upravljanje kontekstom je ključ štednje tokena. Što je kontekst duži pri svakom zahtevu, potrošnja je veća.
Ako u Claude Code-u otkriješ da kontekst neke sesije postaje sve duži, pravovremeno otvori novu sesiju.
Drugo, jednostavni zadaci ne koriste kompleksne modele. Režim niskog rezonovanja Step 3.5 Flash 2603 je baš za to — promeniti ime promenljive, dopuniti komentar, formatirati kod — ovakvi zadaci ne zahtevaju duboko razmišljanje modela.
Duboko rezonovanje ostavi za dizajn arhitekture, kompleksno pronalaženje bagova — za scenarije koji zaista to zahtevaju.
Treće, pogoci keša su nevidljivo oruđe za uštedu. Cena pogotka keša StepRhino-a je 0.14 juana/1M tokena, nepogođeno je 0.7 juana, razlika je 5 puta.
Ako često tražite sličan sadržaj (na primer kod istog projekta), stopa pogođenosti keša će biti veoma visoka. Zato je stalno menjanje istog projekta u istoj sesiji jeftinije nego svaki put otvaranje nove sesije — kontekst se ponovo koristi, a keš je lakše pogoditi.
Era Agent-a ne pripada onima koji troše najviše tokena, već onima koji najbolje znaju da uštede token.
06. Uputstvo za pisanje rezimea
Tokom svakodnevnog razvoja izmenili smo mnogo koda, ali kada zaista treba napisati rezime ili dnevni izveštaj o radu, u glavi je kaša, ne znamo kako da opišemo šta smo radili.
Dajem vam jedan prompt:
U poslednja dva dana poslao sam dosta koda, molim te organizuj prema ovom formatu: ime projekta / tehnički stek / opis projekta / 5 ključnih odgovornosti, svaka treba jasno da kaže koja je tehnologija korišćena, koji problem rešen, da li postoje kvantifikovani podaci.

Ovaj prompt je veoma zgodan. Step 3.5 Flash 2603 nije samo preveo git log, već je uradio nekoliko slojeva obrade: prvo je razdvojio izmene po funkcionalnim modulima, zatim organizovao po strukturi „postojeći problem → usvojeni plan → ostvarena korist", i konačno dodao neke implicitne kvantifikovane izraze poput „podržava dvojni režim DAG/LangGraph", „podržava osvežavanje tokena kroz instancu".
Ovakav način pisanja je mnogo ubedljiviji od prostog nabrajanja tehničkog steka, intervjuer upravo traži ovu strukturu: šta si rešio, kako si rešio, koji je efekat.
Nema potrebe za ručnim doterivanjem, direktno kopiranje i lepljenje i može da se koristi, ovaj nivo uštede vremena me prilično zadovoljava.
ending
Ma koliko jeftin model bio, ako ga ne koristiš ispravno, i dalje će trošiti novac. Ma koliko moćan alat bio, ako je upravljanje kontekstom loše, i dalje će biti na gubitku. Luo Fulija je u postu dobro rekla: patnja će se na kraju pretvoriti u inženjerske standarde — ovaj pritisak će gurnuti celu industriju ka efikasnijem, resursno štedljivijem pravcu.

Step 3.5 Flash 2603 mi ostavlja utisak: pokušava da uradi ovu stvar ispravno — ne osvaja korisnike niskom cenom, već smanjuje rasipanje izračunavanja na arhitektonskom nivou. Režim niskog rezonovanja, dizajn prijateljski prema kešu, MoE arhitektura — sve su izrazi ovog pristupa.
[Era Agent-a ne pripada onima koji troše najviše tokena, već onima koji najbolje znaju da uštede token.]
Ovu rečenicu poklanjam svakom kolegi koji trenutno koristi AI alate za razvoj, ohrabrimo se zajedno.
Vidimo se u sledećem!
