Nepomuk
Semantisk søgning
Formålet med denne side er ikke at forklare KDE's teknologi til semantisk søgning i alle detaljer, men at give et kort overblik, nogle eksempler, visionerne bag og links til relevant information på nettet.
For those looking for 'Nepomuk' or 'Baloo' (new generation search in Applications 4.13): technical details can be found on community.kde.org. Read details on the changes for Applications 4.13 here.
Kort forklaring
Som nævnt i Ordlisten har Nepomuk at gøre med klassifikation, organisering og præsentation af data. Det er ikke en applikation men en komponent, som kan bruges af udviklere i deres programmer.
Prøv den i Dolphin
For eksempel bruger filmanageren Dolphin Nepomuk. For at kunne prøve det følgende, så skal Nepomuk og Strigi være aktiverede i . Dolphin's sidepanel Information ( eller tast F11) viser information, som Strigi henter frem om den valgte fil og lader dig også knytte mærker, vurderinger og kommentarer til filer. Denne information lagres i Nepomuk og indekseres af Strigi. Du kan søge på metadata i Dolphin's navigationslinje. Klik på i værktøjslinjen eller tast Ctrl + F, og søg efter et filnavn eller filindhold.
Funktionaliteter
Nepomuk tilbyder flere 'lag' af funktionalitet til programmer. Det første og enkleste involverer manuel tagging, bedømmelse og kommentering som i Dolphin. Det hjælper dig med at finde filer hurtigere, men kræver meget arbejde.
For at gøre det nemmere at finde tekstfiler tilbyder Nepomuk er anden funktionalitet: indeksering af filernes tekster. Det bruger en teknologi ved navn Strigi til dette. Du kan finde filer ved at søge på nogle ord, som du ved, at de indeholder, eller blot på (en del af) deres titel.
Det tredje lag er meget komplekst og grunden til, at Nepomuk blev skabt af adskillige firmaer og universiteter i EU som et forskningsprojekt. Det er her, du finder vanskelige begreber som 'semantisk skrivebord' og 'ontologier'. Det handler i bund og grund om sammenhænge og beslægtethed.
Indeksering af filer
Strigi indekserer ikke alle filerne på harddisken. Dens standardkonfiguration i de fleste Linux-distributioner udelukker nogle almindelige mønstre for backupfiler og mapper til indstillingsfiler, og indekserer kun visse mapper i din hjemmemappe. Du kan ændre på dette i .
I Systemindstillinger kan du også kontrollere om Strigi skal indeksere filer på mobile enheder så som USB-drev og CD-ROM'er.
Eksempler
Lad mig prøve at forklare, hvad Nepomuk kan ved to eksempler.
Beslægtethed
Lad os sige, at du modtog et foto fra en ven for 2 uger siden. Du gemte det et eller andet sted på din computer. Hvordan finder du nu filen? Hvis du ikke kan huske, hvor du gemte den, så har du et problem.
Her prøver Nepomuk at hjælpe dig. Du ved, at filen kom fra den der ven -- det ved computeren ikke; men Nepomuk kan huske 'slægtskabet'. Søger du på din vens navn, så findes fotoet frem!
Andre muligte slægtskaber er mellem en internetside, som du kopierede tekst fra og det dokument, som du satte teksten ind i eller mellem to billeder af den samme bil. Sådanne slægtskaber kan undertiden trækkes ud af filerne selv (du kunne se på fotos hvem eller hvad, der er på dem) eller gives af de involverede programmer (som i email-eksemplet ovenfor). Den del af Nepomuk er stadig under intens udvikling og mangler endnu at blive integreret i programmer, så du må regne med, at der kommer til at gå et par år, før det hele fungerer.
Denne del af Nepomuk handler om smart søgning. Tænk på, hvordan Google prøver at håndtere dine søgninger på en smart måde: når du søger efter et hotel og et bynavn, så får du et bykort, som viser hoteller i den nævnte by oven over de fundne websteder! Hvis du staver forkert, så får du måske et forslag til en bedre stavemåde. Google prøver også at placere de mest relevante informationer først i listen af resultater ved hjælp af komplekse beregninger af slægtskaber (links) mellem websteder. Nepomuk vil også blive i stand til at give smarte søgeresultater ordnet efter relevans ved at bruge information om beslægtethed.
Sammenhænge
Disse slægtskaber kan ikke bare være til hjælp ved søgning efter filer, de kan også have indflydelse på programmer og på hvilken information de fremviser. Bemærk, at denne måde at bruge Nepomuk på stadig er mere vision end realitet! Mange af komponenterne er klar, men de er endnu ikke integrerede i programmerne og skrivebordet som helhed.
Her er et eksempel på, hvordan bevidsthed om sammenhænge kan hjælpe dit skrivebord med at fungere mere effektivt.
Lad os sige, at du er i gang med at færdiggøre nogle noter, som du tog under et møde. Så ringer telefonen, og du bliver bedt om at finde regnearket med priser og tilpasse det til en kunde. Efter endnu et par afbrydelser er dit skrivebord fuldt af filer og vinduer...
Det ville være rart at kunne organisere alt dette lidt bedre, ikke?
Her kommer aktiviteter ind i billedet. De blev introduceret i Plasma og giver indtil videre mulighed for forskellige skriveborde. De minder lidt om virtuelle skriveborde, men her er det skrivebordet selv, som ændres og ikke de programmer som kører på det. Der kan være forskellige widgets, baggrunde og lignende. Fra KDE 4.3 er der dog sammenhæng mellem de to begreber, da de virtuelle skriveborde kan have hver sin aktivitet.
Hvis programmerne og skrivebordet var bevidste om aktiviteter, så kunne du lave en aktivitet for hver af de opgaver, som du regelmæssigt arbejder med. Hvis du for eksempel ofte skal ændre et regneark med priser, så kan du lave en aktivitet til det: læg en Mappevisning (eller flere) på skrivebordet, tilføj en regnemaskine og et gøremålsliste-widget for at holde styr på de ting, som du stadig mangler at ændre. Du vil måske også tilføje et emailmappe-widget, som indeholder mails med spørgsmål om disse regneark med priser!
Når en eller anden spørger dig om en pris, så skifter du til denne aktivitet. Start regnearket - det er bevidst om din aktivitet, så det viser de seneste regneark med priser og ikke den seneste liste over inventar, som du arbejdede på i en anden aktivitet! Chat-programmet Kopete viser dig den kolleger, som ved noget om priser, da du tit chatter med hende, når du arbejder i denne aktivitet.
Når du er færdig, går du tilbage til en anden aktivitet, og igen tilpasser programmerne deres opførsel til, hvad du arbejder med.
Fordelene ved en sådan aktivitets-baseret arbejdsgang går videre end du måske umidelbart forventer. Det hjælper dig ikke bare med at finde filer og kontakte personer, det hjælper også med selve skiftet mellem opgaver. Den menneskelige hjerne er ikke særlig god til at multitaske - de fleste skal bruge adskillige minutter på at komme op i omdrejninger efter at have skiftet til en ny opgave. For at komme hurtigere i gang er det en stor hjælp at skifte omgivelser, også selv om det kun er på skærmen. Sammenlign det med, hvordan du kommer i feriestemning, når du pakker din kuffert!
Dette er selvfølgelig mest relevant for en, der arbejder ved computeren på kontoret eller derhjemme. Hvis du mest spiller computerspil eller blot bruger computeren en gang imellem, så vil du nok ikke få meget brug for aktiviteter.
Bemærk, at scenariet, som blev beskrevet ovenfor stadig er flere år fra at være en realitet. Det meste af den grundlæggende infrastruktur for dette er på plads i KDE, med der mangler stadig meget.
Ofte stillede spørgsmål
Følgende kommer fra et indlæg på KDE's forummer. Hvis du har tid, så må du meget gerne tilføje, fjerne eller ændre detaljer!
- Hvad er Nepomuk Semantic Desktop og Strigi Desktop File Indexer?
- Nepomuk Semantic Desktop er grundlaget for alle de andre moduler i Nepomuk-infrastrukturen. Den giver dig en måde at organisere, annotere og opbygge sammenhænge imellem data (ikke blot filnavne og indhold, men for eksempel også hvilke programmer, som har brugt en given fil eller hvordan den er mærket). Mange af KDE's programmer og arbejdsflader bruger denne grundlæggende infrastruktur til at frembyde funktioner så som mærkning af emails (KMail) eller opsætning af aktiviteter (Plasma).
- Strigi Desktop File Indexer er derimod et system til at indeksere filer, sådan at de kan føjes til Nepomuks hovedlager, en bekvem måde at bruge dem i Nepomuk uden at tilføje filerne manuelt. Desuden kan programmer som Dolphin søge efter filer beseret på deres indhold, navn eller andre metadata (fx mærker) knyttet til de indekserede filer. Sådan en indekser kan også indeksere filer som ikke består af ren tekst så som PDF'er ved at tilgå metadata indeholdt i disse filer (forfatter, udgivelsesinformation osv.). Nogle KDE-komponenter leverer yderligere "analysatorer" for flere filtyper. Nepomuk er fuldt funktionsdygtig uden at bruge filindekseringen, som er en ekstra (og valgfri) komponent.
- Hvorfor har vi både brug for Akonadi og Nepomuk? Laver de ikke det samme?
- Der er ofte en del forvirring omkring Akonadi og Nepomuk. Why data from Akonadi is indexed in Nepomuk forklarer, hvorfor vi har dem begge og hvad deres roller er. Gå ikke glip af den videre information fra Will Stephenson i kommentarafsnittet.
- Hvordan kan jeg slå det semantiske skrivebord fra?
- For det meste er det lettest at deaktivere filindeksering, som i regelen er den blandt Nepomuks komponenter, der bruger flest ressourcer (selv om der blev inkluderet mange optimeringer i 4.7-udgaven, hvilket har reduceret ressourceforbruget). Dette gøres ved at fjerne markeringen ved Skrivebordssøgning i Systemindstillinger. Hvis du skulle ønske at slå alle de semantiske funktioner fra, så fjern markeringen ved . Bemærk, at dette også vil deaktivere søgning i Dolphin. i afsnittet
In versions of the KDE Applications 4.13, Semantic Search would have components running separate from applications. This functionality could be disabled by unchecking Desktop Search section of System Settings. In case you want to turn off all semantic features, uncheck . Notice that this will turn off search in Dolphin as well.
in the
- Bemærk, at med det sidste fravalg vil nogle programmer, som bruger Nepomuk til metadata få reduceret deres funktionalitet: for eksempel vil KMail ikke kunne mærke mails og Plasma-aktiviteter vil ikke give dig ekstra funktioner så som ikoner eller information om programdata.
- Hvorfor kører der nepomukservicestub-processer, selv om jeg har deaktiveret Nepomuk?
- Det kan være en fejl. Indsend en fejlrapport med en fuldstændig beskrivelse af dit problem og hvordan du fik det til at dukke op.
- Filindeksering af PDF eller en anden filtype virker ikke.
- PDF-indeksering er et kendt problem, som kan følges i bug #231936. Hvis du har problemer med andre filer, så start en fejlrapport og vedhæft helst en eksempelfil, som viser problemet.
- Programmet nepomukservicestub går ned når maskinen startes op.
- Et stort antal problemer med nedbrud er blevet løst i 4.7.2-udgaven af KDE's arbejdsflader og programmer. Hvis du støder på flere, så rapportér fejlen med detaljerede instruktioner om, hvordan problemet kan reproduceres, da udviklerne undertiden ikke kan udløse fejlene i deres egne test-udgaver.
- Processen virtuoso-t hænger med 100% CPU.
- Virtuoso-t er en central komponent i Nepomuks infrastruktur, og under nogle omstændigheder kommer kommandoer sendt af andre komponenter til at optage for meget tid (med den effekt, at vise 100% CPU-forbrug). Sebastian Trüg (Nepomuks hovedudvikler) har løst de fleste af disse problemer i 4.7.1 og nyere udgaver.
Virtuoso is no longer used by Semantic Search starting the Applications 4.13 release.
- Q. Undertiden bruger Nepomuk for meget RAM.
- Mange af disse problemer er blevet rettet; i andre tilfælde har udviklerne dog ikke kunnet reproducere problemerne korrekt. I disse tilfælde forøger du chancen for at få fejlene rettet, hvis du føjer eksempler og testcases til fejlrapporterne.
- Nepomuk bruger harddisken for meget ved opstart
- I 4.7 og nyere udgaver er dette problem blevet reduceret takket være en reguleringsmekanisme, som er blevet implementeret i filindekseren.
- Min Nepomuk-database er blevet ødelagt. Hvordan kan jeg rense den?
- I det ekstreme tilfælde, at din database er helt ødelagt og alle andre muligheder er slået fejl kan du slette mappen $KDEHOME/share/apps/nepomuk (hvor $KDEHOME som regel er .kde eller .kde4) imens Nepomuk ikke kører. Databasen vil så blive renset, men du vil også miste eksisterende information som mærker, vurderinger og kommentarer.
From KDE Applications 4.13 onwards, Semantic Search no longer uses a single, big database, but separate, specialized databases for each type of data. The search databases can be found in $KDEHOME/share/apps/baloo.
Avanceret fejlsøgning
Deling og privatliv
Der er en ting, som jeg må gå ind på, før jeg linker til kilder til yderligere information: deling af Nepomuk data. Det ville være smart, hvis dine tags, bedømmelser og kommentarer blev delt med andre, når du sender dem filer; men hvis du tagger en kontaktperson med en pinlig kommentar ('kedelig i sengen') og sender denne persons kontaktinformation til en fælles ven, så vil du nok ikke ønske, at taggen følger med...
Dette spørgsmål bliver selvfølgelig overvejet og er et vigtigt forskningsområde for Nepomuk-forskerne. Indtil videre er Nepomuk-sammenhænge private på grund af ovenstående problem og fordi der er store tekniske udfordringer. Du kan være sikker på, at Nepomuk-teamet gør alt, hvad det kan for at sikre, at dit privatliv bliver respekteret.
Eksterne links
- Sider for udviklere om Nepomuk på KDE TechBase
- NEPOMUK KDE websted
- Wikipedia - Semantic Desktop
- Wikipedia - NEPOMUK Framework
- NEPOMUK websted
- Artikel på DOT'en, som forklarer Nepomuk
- Kom i gang-brugermanual
The old Search technology: