“Skills” on Open WebUI-s taaskasutatavad juhendiplokid – sisuliselt **püsivad süsteemipromtid** konkreetsete ülesannete jaoks. Sinna ei pea panema koodi, vaid selged tekstilised juhised, kuidas mudel peaks mingit tööd tegema.[openwebui+1](https://docs.openwebui.com/features/workspace/skills/) Arvestades sinu eesmärki (teadusartiklite analüüs ja kirjutamine), soovitan alustada selliste _skills_-idega: * * * ## 1. “Teadusartikli analüüs” skill * Name: `Teadusartikli analüüs` * Description: `Juhised, kuidas samm-sammult analüüsida teadusartiklit (eesmärk, meetod, tulemused, piirangud).` * Content (Markdown): ```text # Teadusartikli analüüsi juhend Kui analüüsid artiklit, toimi alati nii: 1. Võta lühike kokkuvõte (2–3 lauset): valdkond, uurimisküsimus, peamine panus. 2. Kirjelda metoodikat: andmestik, mudelid/metoodika, katseseaded, võrdlusbaasid. 3. Too välja peamised tulemused ja mõõdikud. 4. Analüüsi tugevusi: mis on uudsus, mis probleemi see lahendab, kus seda rakendada. 5. Analüüsi piiranguid: andmed, üldistatavus, reprodutseeritavus, arvutusressursside vajadus 6. Lõpuks anna praktiline soovitus: - kas seda lähenemist tasub meie projektis katsetada, - mis eeltöö oleks vaja teha (andmed, tööriistad, kood). Vasta alati struktureeritult alampealkirjadega: **Kokkuvõte**, **Metoodika**, **Tulemused**, **Tugevused**, **Piirangud**, **Soovitused**. ``` * * * ## 2. “Artikli kirjutamise stiil (eesti/inglise)” skill * Name: `Teadusartikli kirjutamise stiil` * Description: `Stiilireeglid uute teadusartiklite ja kokkuvõtete kirjutamiseks.` * Content: ```text # Teadusartikli kirjutamise stiili juhend 1. Kasuta selget, akadeemilist stiili, väldi liigset slängi ja liialdusi. 2. Hoia laused pigem lühemad (1 idee lause kohta), üle 3 rea pikkuseid lauseid väldi. 3. Struktureeri tekst peatükkideks: Sissejuhatus, Seotud tööd, Meetod, Tulemused, Arutelu, Kokkuvõte. 4. Kui kirjutad eesti keeles: - kasuta termineid, mida kasutatakse Eesti teadusartiklites (võimalusel tõlgi ingliskeelne termin sulgudes), - säilita korrektsed kääned ja pöörded, väldi otseseid tõlkeid inglise sõnajärjest. 5. Kui kirjutad inglise keeles: - kasuta neutraalset “academic English” stiili, - väldi „very“, „really“ jne, eelista täpseid omadussõnu. 6. Kui kasutaja ei täpsusta, hoia tekst kompaktne (nt 200–400 sõna kokkuvõtte jaoks). ``` * * * ## 3. “Eksperimentide planeerimine (LLM/RAG server)” skill * Name: `Eksperimentide planeerimine AI serveril` * Description: `Juhised, kuidas planeerida ja dokumenteerida katseid AMD/ROCm AI serveril.` * Content: ```text # Eksperimentide planeerimise juhend (AI server) Kui kasutaja tahab uut katset või mudelit võrrelda, toimi nii: 1. Küsi selgelt: - mis on eesmärk (nt täpsem kokkuvõte, kiirem inferents, väiksem mälukasutus), - mis andmestikku ja mõõdikuid ta saab kasutada. 2. Paku välja minimaalne, reprodutseeritav katseplaan: - millised mudelid / versioonid, - millised hüperparameetrid (batch size, context window, temperatuur), - millised masinad / GPU seadistus (ROCm, mälu, threadid). 3. Lisa alati, kuidas tulemusi logida ja võrrelda (tabel, mõõdikud, graafikud). 4. Kui midagi jääb ebaselgeks, ära eelda – esita täpsustavad küsimused enne plaani kinnitamist. ``` * * * ## Kuidas neid kasutada * Skills → **New Skill** → täida `Name`, `Description`, `Content` (Markdown) ja salvesta.[[docs.openwebui](https://docs.openwebui.com/features/workspace/skills/)] * Chatis: kirjuta `$` ja vali sobiv skill (nt “Teadusartikli analüüs”), siis anna PDFi tekst või kokkuvõte. * Võid samad skills ka **siduda konkreetsete mudelitega** (Workspace → Models → vali mudel → Skills).[openwebui+1](https://docs.openwebui.com/features/plugin/tools/) Seega “Skills” väljale kirjuta **pikemad, korduskasutatavad juhendid** tüüptööde jaoks (artikli analüüs, kirjutamise stiil, eksperimendi planeerimine, koodi review jne) – mitte ühekordset küsimust, vaid üldist juhendit, mille järgi mudel peaks alati sellist ülesannet lahendama. * * * ## Parandused Selleks, et **Skills List** töötaks on vajalik veeru tüübi muuta: Viimane parandus ```bash PGPASSWORD="ai_secure_pass_2026" docker exec -u postgres -it postgres_postgis psql -d openwebui_db -c " SELECT id, name, meta FROM skill; UPDATE skill SET meta = meta::jsonb WHERE meta IS NOT NULL AND meta != '' AND meta::text LIKE '{%'; ALTER TABLE skill ALTER COLUMN meta TYPE JSONB USING meta::jsonb; SELECT id, name, meta FROM skill;" ``` Siin on vana parandus: ```sql ALTER TABLE public.skill ALTER COLUMN meta TYPE text USING meta::text; ```