== Advanced Phase = Опис Имплементација на систем за препораки базиран на AI embeddings користејќи pgvector екстензија за PostgreSQL. Секоја активност, услуга и опрема добива своја векторска репрезентација (embedding) на нејзиниот опис, а системот наоѓа математички слични записи преку cosine similarity. = Како функционира? Основната идеја е дека текстот (опис на активност, услуга или опрема) се претвора во вектор — листа од броеви каде секој број го претставува значењето на зборот во тој текст. Колку се векторите поблиску математички, толку се посличните записи. {{{ Опис на запис → AI модел → Vector [0.23, 0.89, ...] → Слични записи }}} = Чекори * '''Чекор 1''' Инсталација на pgvector во Docker контејнерот и активирање на екстензијата во PostgreSQL {{{ docker exec -it camping-postgres bash -c \ "apt-get update && apt-get install -y postgresql-16-pgvector" }}} {{{ CREATE EXTENSION IF NOT EXISTS vector; }}} * '''Чекор 2''' На табелите Activity, Service и Equipment се додава нова колона од тип vector(384). Димензијата 384 одговара на моделот all-MiniLM-L6-v2 кој се користи за генерирање на embeddings.. * '''Чекор 3''' Embeddings се генерираат преку Python скрипта која користи sentence-transformers библиотека. * '''Чекор 4''' За брзо пребарување по сличност се креираат ivfflat индекси. Со ivfflat индекс векторите се групираат во кластери и се пребарува само во најблиските — многу побрзо. * '''Чекор 5''' Се креираат PostgreSQL функции кои примаат вектор и враќаат N најслични записи сортирани по cosine similarity.