heypoul: skift model med stemmen

beta

Sådan vælger du oprydningsmodel i heypoul: valget på fire, stemmekommandoerne, og hvorfor listen er pks' katalog på tværs af alle registrerede providere.

Author: Poul Kjeldager
Category: agents

heypoul renser dit udkast med en chatmodel efter hvert hold på tasten: fyldord ud, selvrettelser anvendt, »to, nej tre« bliver »tre«. Hvilken model der gør det, vælger du i HUD'en med stemmen, ikke i en konfigurationsfil. Denne side viser flowet, kommandoerne og hvor listen kommer fra.

Billederne er renderet af den rigtige HUD-kode (hud-preview -scenario switch) og ligger i repoet: docs/mockups/switch.

Flowet i syv billeder

  1. Et renset udkast. Panelet er åbent. Headeren viser altid modellen i brug (gpt-5.5), så du aldrig behøver spørge.
  2. »hey poul skift model«. Kommandoen må slutte et hold. Den lander ikke i udkastet; den åbner et spørgsmål.
  3. Side 1 af kataloget. Tre modeller og Flere…. Den model, der er i brug, er udeladt. Underlinjen siger, hvem der serverer modellen (gemini, anthropic); ingen underlinje betyder Foundry. Headeren siger »1–3 af 42«, så du ved, hvor på listen du er.
  4. »gemini« med tasten nede. Grammatikken læser de levende ord. »gemini« passer kun på række 2, så valget tages, før tasten slippes, og holdets landing sluges i stedet for at blive diktat.
  5. Skiftet. Én probe-forespørgsel beviste, at modellen svarer. Noten siger »model: gemini-2.5-pro · gemini«, og valget er gemt i config.json som gemini/gemini-2.5-pro.
  6. Udkastet renses igen af den nye model.
  7. »ikke forstået · sig et tal«. Det, grammatikken ikke kan læse, går til Decision-1, som dømmer med en sikkerhed. Under 0,85 bliver spørgsmålet stående; et sikkert »ingen« lukker det og beholder dine ord.

Kommandoer og svar

SigGør
hey poul skift model / vælg modelSpørger med et valg på fire: tre modeller og Flere…. Den aktive model er udeladt.
to · nummer 3 · den anden · sidsteVælger efter rækkens tal, som vist. Tælles fra 1 på hver side.
gemini · opus · gpt fem toVælger efter navnet eller nok af det til, at kun én række passer. Et talord matcher et ciffer.
flereNæste side med tre. Sidste side ruller om til den første.
den nyeste · ikke luna, den andenAlt andet går til Decision-1. Under 0,85 i sikkerhed: »ikke forstået · sig et tal«.
annuller · luk · hey poul skjulLukker spørgsmålet uden at vælge.
hey poul modellerHele listen, nummereret, med provider på det, der ikke er Foundry.
hey poul model 2 · brug lunaSkifter direkte fra hele listen, efter nummer eller navn.

Svar på et spørgsmål siges uden vækkeord: det næste hold på tasten er svaret. Fire nummererede muligheder er en vane, der bærer uændret til en bil eller en telefon.

Hvor listen kommer fra

heypoul holder ingen nøgle og kender intet modelnavn. Ved start læser den kataloget, pks serverer på exec-proxyen, GET {endpoint}/pks/v1/models:

  • pks ≥ 7.10.0: kataloget er foreningen af alle providere, du har registreret i pks (pks foundry init, GEMINI_API_KEY, Anthropic, OpenAI, Moonshot, en OpenAI-kompatibel endpoint). Hver model bærer pks.provider, og heypoul viser provideren under navnet, når den ikke er Foundry. Oprydningen sendes til POST {endpoint}/pks/v1/chat/completions med modellen som provider/id, og pks finder selv provideren og nøglen.
  • Ældre pks: kataloget er Foundry-ressourcens deployments alene, og oprydningen går direkte til deployment-ruten. heypoul opdager det selv: svarer chat-ruten 404, falder den tilbage og husker det for resten af processen.

Standardmodellen er pks' valg fra pks foundry select, når den kan chatte, ellers den nyeste rene GPT. Et talt skift gemmes i config.json (textModel); HEYPOUL_TEXT_MODEL og --text-model vinder over det og tager både gpt-5.5 og gemini/gemini-2.5-pro.

Prøv en model fra skallen, før du stoler på den i udkastet:

pks exec heypoul -- models                       # nummereret, * = i brug, [provider], [pks default], [judges answers]
pks exec heypoul -- clean --model gemini/gemini-2.5-pro "øhm vi sender det mandag, nej tirsdag"
pks exec heypoul -- decide --option gpt-5.2 --option gemini-2.5-pro --option claude-opus-4-7 --option Flere "den nyeste"

Dommeren

Svar, grammatikken ikke kan læse, dømmes af Decision-1 gennem proxyens systemone-rute. Det kræver pks ≥ 7.10.0 på Windows (ældre pks sendte kroppen uden Content-Length, som ruten afviser). Uden en Decision-model på ressourcen skal svar være et tal eller et navn. Vælg Decision-1 som Voice classifier model i pks foundry select, så bruger heypoul den. Typesafe-modeller (jev) står i kataloget som text->choice og kan hverken rense eller dømme i heypoul.

Det, der ikke virker

  • Foundrys Claude-deployments svarer 404 på chat-ruten og kan ikke bruges til oprydning. Proben fanger det: HUD'en siger »svarer ikke« og beholder den gamle model.
  • Samme navn hos to providere (gpt-5.2 på både Foundry og OpenAI) er to rækker i listen. Sig navnet, og der er uafgjort; sig tallet, eller brug provider/id fra skallen.
  • En provider uden kredit (Google svarer 402) er stadig på listen; proben afviser skiftet med fejlen i loggen.