Siirry sisältöön

Näin rakensin AI-markkinointibotin, joka luo viikon somepostaukset 5 minuutissa

Miksi automatisoin somepostaukset?

Yhden asiakkaan (Luigi's, Helsinki-Vantaan lentoasema) somepostaukset veivät manuaalisesti noin 2 tuntia viikossa:

  • Selata kuvapankkia ja valita kuvat (15 min)
  • Kirjoittaa englanninkieliset postaukset (30 min)
  • Muokata kuvat Instagram-kokoon (15 min)
  • Kirjautua Bufferiin ja luoda draftit (20 min)
  • Tarkistaa hashtagit, ajat, molemmat sijainnit (10 min)

Tämä toistui joka viikko. Päätin automatisoida koko ketjun.

Arkkitehtuuri

Tässä on putki, jonka rakensin:

Nextcloud (kuvat) → Ollama/qwen3-vl (GPU-visio) → DeepSeek V4 Pro (teksti) → Buffer (julkaisu)

1. Kuvat Nextcloudissa

Asiakkaiden kuvat synkronoituvat automaattisesti Nextcloudiin. Hermes-agentti lukee kansion sisällön WebDAV:n kautta.

2. Paikallinen GPU-visio

Qwen3-VL-malli (8,8 mrd parametria, Q8_0-kvantisointi) analysoi kuvat paikallisesti RTX 4070 Ti SUPER -näytönohjaimella. Yksi kuva vie ~15 sekuntia. Malli tunnistaa ruoat, tunnelman, värit ja yksityiskohdat suomenkielisistäkin kuvista.

3. Tekstin generointi

DeepSeek V4 Pro kirjoittaa visiotuloksesta valmiin somepostauksen. Teksti noudattaa brändin tyyliä (Luigi'sin tapauksessa rento, energinen, englanninkielinen). Pituus on noin 100-130 sanaa, sisältää molemmat toimipisteet, aukioloajat ja hashtagit.

4. Buffer-draftit

Hermes luo Nextcloudista julkisen jakolinkin kuvalle ja lähettää sen tekstin kanssa Bufferin GraphQL-APIin. Sekä Facebook-draftti (teksti) että Instagram-draftti (teksti + kuva) syntyvät automaattisesti. Postaukset ajastetaan maanantaista perjantaihin eri kellonaikoihin.

5. Raportointi

Valmistuttuaan Hermes lähettää Discordiin raportin: montako postausta luotu, mille päiville, linkki Bufferiin. Jos jokin epäonnistuu, siitä tulee välittömästi ilmoitus.

Koko putki ajetaan cron-työnä joka maanantai klo 9:00.

Kustannusvertailu

Yksi somepostauksen luonnin todellinen hinta eri menetelmillä:

MenetelmäVisioTekstiYht. per postausViikko (5 kpl)
Paikallinen AI0 € (oma GPU)DeepSeek API ~0,001 €~0,001 €~0,005 €
Gemini API~0,002 € (Gemini 2.5 Flash)DeepSeek API ~0,001 €~0,003 €~0,015 €
Täysin manuaali0 €0 €~24 min työtä~2 h työtä

Paikallisen mallin kuvantulkinnasta ei tule API-maksua. Gemini Flash on varavaihtoehto, jos omaa GPU:ta ei ole. Taulukon arviolla sen käyttö maksaa 0,015 € viikossa eli 0,78 € vuodessa.

DeepSeek V4 Pro:n API on niin halpa (0,14 € / miljoona tokenia), että arvioin viiden postauksen tekstikustannukseksi noin 0,005 €.

Näin rakennat oman

Tarvitset:

  • Hermes-agentin asennettuna palvelimelle (Linux, 24/7 päällä)
  • Ollaman + kvantisoidun vision mallin (qwen3-vl:8b)
  • Näytönohjaimen jossa on vähintään 10 GB VRAM, tai Gemini API-avaimen
  • Buffer-tilin (ilmainen riittää 3 kanavalle)
  • Nextcloudin tai muun kuvapankin

Vaihtoehto 1: Paikallisella GPU:lla

## 1. Asenna Ollama
curl -fsSL https://ollama.com/install.sh | sh

## 2. Lataa visiomalli (9,8 GB)
ollama pull qwen3-vl:8b-instruct-q8_0

## 3. Avaa Ollama verkolle (jos Hermes eri koneella)
## /etc/systemd/system/ollama.service:
Environment="OLLAMA_HOST=0.0.0.0:11434"

Vaihtoehto 2: Gemini API:lla (ei omaa GPU:ta)

## Hermeksen config.yaml
auxiliary:
  vision:
    provider: google
    model: google/gemini-2.5-flash

Gemini 2.5 Flash maksaa 0,02 $ / kuva (1500 px). Viisi kuvaa viikossa maksaa tällä hinnalla 0,10 $.

Cron-työn luominen Hermekseen:

Hermeksen cron käynnistää automaation joka maanantai klo 9. Promptissa määritellään koko työnkulku: mistä kuvat haetaan, miten visioanalyysi tehdään, millä tyylillä postaukset kirjoitetaan ja mihin ne lähetetään. Lopputuloksena on viisi somejulkaisuluonnosta Facebookiin ja Instagramiin. Tarkistus jää ihmiselle.

Mitä opin

Putken rakentaminen vei noin tunnin. Paikallisen AI:n hinta-laatusuhde yllätti. Mun kokeiluissa Qwen3-VL:n 8,8 mrd parametrin malli analysoi ruokakuvia käytännössä yhtä hyvin kuin kaupalliset API:t. Kuvantulkinnasta ei tule erillistä API-maksua.

Moni pienyrittäjä maksaa some-työkaluista 20-50 € kuussa, vaikka saman työn voi rakentaa avoimen lähdekoodin työkaluilla ja yhdellä API-avaimella. Arvioin tämän järjestelmän API-kuluiksi alle 1 € vuodessa ja ajansäästöksi 100 tuntia. Tämä arvio ei ole koko ylläpidon kustannuslaskelma.

Qwen3-VL luki mainoskuvista suomenkieliset tarjoustekstit ilman ongelmia.

Seuraavaksi videoita ja useampia kieliä

Kuvien läpikäynnin, tekstien muotoilun ja aikataulutuksen automatisointi jättää enemmän aikaa markkinoinnin suunnitteluun, asiakassuhteisiin ja sisällön tarkistamiseen.

Tämä sama arkkitehtuuri skaalautuu useammalle asiakkaalle. Jokaiselle brändille tehdään oma kansio Nextcloudiin ja oma cron-työ sekä vaihdetaan Bufferin kanava-ID:t. Muuten putki pysyy samana.

Seuraavaksi testaan videosisällön automaattista tuotantoa ja monikielisiä postauksia.

← Blogi