Sök ett ord (böjda former fungerar: springer hittar springa) eller slumpa ett med tärningen. Byt klipp med pilknapparna, spela om eller loopa meningen, och öva med Lucktext. Byt klipp med pilknapparna eller vänster/höger piltangent, spela om eller loopa meningen, och öva med Lucktext. Allt finns i spelarvyn: sökrutan sitter uppe till vänster (tryck på den för att söka ett nytt ord), bok-knappen visar ordkortet (grundform, böjning, nivå, uttal, översättning och exempel från Lexin) och reglage-knappen filtrerar klippen (dialekt, långsamt tal). När du öppnat ordkortet, filtret eller lucktexten dyker en tillbaka-pil upp som tar dig ett steg bakåt.
Rösterna är riktig svenska: olika dialekter, olika tempo och ibland brytning — precis som svenskan låter utanför klassrummet, och bra att träna örat på. Vill du härma ett tydligt modelluttal, använd 🔊-uttalet från Lexin i ordkortet. Texten görs av en dator och kan höra fel: knappen Rapportera fel på klippet skickar felet till mig, så rättar jag.
Ett ord kan vara lätt att känna igen när det sägs ensamt, och ändå försvinna i en mening. Här hör du orden mitt i meningen, sagda av hundratals olika röster. Idén kommer från två håll: YouGlish, en sajt där man kan höra ord från YouTube-klipp, och sommarpratarna. Sedan 1959 berättar nya röster varje sommar om sina liv, för hela Sverige. De har skrivit sitt manus i förväg och pratar för att bli förstådda: tydligt men personligt, med olika röster, tempo och dialekter. För någon som lär sig svenska är det en riktigt bra resurs för att lyssna på ord i sammanhang.
För att kunna söka i ljud behövs text, och exakt när varje ord sägs. Det mesta av det jobbet gjorde KB-Whisper, en AI-modell som Kungliga biblioteket har tränat på mer än 50 000 timmar svenskt tal. Nu finns det snabbare verktyg: en timmes radio, som i somras tog en halvtimme att skriva ner, tar nu minuter med Pianissimo, lokalt på min dator. Ovanpå sökningen finns det som gör lyssnande till träning: nivå, böjning, uttal, dialekter, långsamt tal och lucktext. Inget ljud sparas här. Klippen spelas direkt från Sveriges Radio, från början av meningen där ordet finns.
Jag heter Ale och arbetar som lärare. Jag har byggt det här med hjälp av Claude. Datorn hör fel ibland, precis som vi. Hör du något konstigt, tryck på Rapportera fel eller skriv till ale.wendt@proton.me.
Den här tjänsten går att göra själv, även utan att kunna programmera. Du beskriver idén för ett AI-verktyg som Claude Code och provar dig fram, en mening i taget. Det fina är att du inte behöver veta i förväg vilka program som krävs: fråga "vad behöver jag för det här?" så får du både tips och hjälp att installera det på din dator (Python-miljöer, AI-modeller, extra förmågor via skills och MCP-servrar).
Här är en startprompt att klistra in. Byt ut det som står i [hakparenteser]:
Jag vill bygga en gratis webbtjänst där man söker på ett ord och får höra riktiga inspelningar där ordet sägs, mitt i meningen det står i. Tänk YouGlish, fast för [din källa, t.ex. en öppen radiokanal eller egna inspelningar] på [språk].
Bygg det i tre separerade lager, ett i taget, och verifiera i webbläsaren innan du går vidare:
1. Pipeline (Python, lokalt): hämta ljudet från källan (lagra inget i onödan). Transkribera lokalt med en Whisper-modell (word timestamps + VAD mot musik/tystnad) — för svenska: KB-Whisper från Kungliga biblioteket. Slå ihop fragmenten till hela meningar. Bygg ett statiskt index: ord → förekomster {avsnitt, ordets starttid, meningens start/slut, meningstext, ytform}. Låt uppspelningen börja vid meningens början. Cacha råtranskripten så indexet kan byggas om utan att transkribera om.
2. Index: statiska JSON-filer, shardade per begynnelsebokstav, plus en liten meta.json.
3. Webbkomponent (vanilla JS, Shadow DOM, inga API-nycklar): sökruta → spela klippet från meningens början, med pilar mellan träffar, hastighet och fetstilt sökord. Ljudet streamas live från källan; ladda inte ner det.
Extra lager när grunden funkar: böjningsexpansion (för svenska: SALDO/Karp), CEFR-nivå (Kelly-listan) och översättning + uttal (Lexin), ordklasstaggning med spaCy för att skilja homografer, och en lucktext-övning där sökordet blankas ut i meningen.
Krav: inga betaltjänster, inga API-nycklar i klienten, hosta statiskt (t.ex. Cloudflare Pages). Bygg litet först med några få avsnitt och skala upp.
Innan du sprider den brett: att transkribera och länka andras ljud rör upphovsrätt och källans villkor. För Sommar i P1 gäller Sveriges Radios villkor. Läs källans villkor och hör av dig till dem innan tjänsten blir publik. Kör lokalt eller i klassrummet under tiden.
Verktyg som användes här: Claude Code, KB-Whisper (faster-whisper) + ffmpeg, spaCy, SALDO/Karp och Kelly-listan (Språkbanken), Lexin, Sveriges Radios öppna API, Wikidata/Wikipedia, MapLibre och Cloudflare Pages.