{"id":6285,"date":"2026-05-14T13:41:30","date_gmt":"2026-05-14T13:41:30","guid":{"rendered":"https:\/\/smultron.software\/?post_type=project&#038;p=6285"},"modified":"2026-05-14T13:51:47","modified_gmt":"2026-05-14T13:51:47","slug":"asystent-ai-z-rag-na-prywatnej-infrastrukturze","status":"publish","type":"project","link":"https:\/\/smultron.software\/pl\/projekty\/asystent-ai-z-rag-na-prywatnej-infrastrukturze","title":{"rendered":"Asystent AI z RAG na prywatnej infrastrukturze"},"content":{"rendered":"\n<div class=\"headline full-width container-grid section-scrollspy  pb-[30px] desktop:pb-[60px] pb-![16px] desktop:!pb-[36px] !pt-[30px] desktop:!pt-[40px]\" >\n\t\t\t<h1 class=\"hm1 tablet:d3 desktop:d2 desktop-xl:h1\">Asystent AI z RAG na prywatnej infrastrukturze<\/h1><\/div>\n\n<div class=\"sticky z-[100] top-0 bg-white full-width mb-[16px] desktop:mb-[36px]\">\n\t<div class=\" submenu submenu-scrollspy container-grid\"\n\t\tdata-aos=\"animate__fadeInUp\"\n\t\tdata-aos-delay=\"150\">\n\t\t<div class=\"overflow-hidden py-[16px] desktop:py-[24px]\">\n\t\t\t<div class=\"min-w-0\">\n\t\t\t\t<div class=\"submenu__swiper swiper overflow-visible\">\n\t\t\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#overview\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--outlined\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>O projekcie<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#challenge\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--outlined\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>Wyzwanie<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#solution\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--outlined\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>Rozwi\u0105zanie<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#challenges\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--outlined\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>Wymagania techniczne<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#stack\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--outlined\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>Technologie<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t\t\t<a href=\"#contact-us\"\n\t\t\t\t\t\t\t\t\tclass=\"button button--small button--gradient-red\"\n\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t<span>Napisz do nas<\/span>\n\t\t\t\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<div class=\"swiper-navigation\">\n\t\t\t\t\t\t<div class=\"swiper-navigation-prev\">\n\t\t\t\t\t\t\t<button class=\"swiper-navigation-button\">\n\t\t\t\t\t\t\t\t<span class=\"icon-angel-left\"><\/span>\n\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t\t<div class=\"swiper-navigation-next\">\n\t\t\t\t\t\t\t<button class=\"swiper-navigation-button\">\n\t\t\t\t\t\t\t\t<span class=\"icon-angel-right\"><\/span>\n\t\t\t\t\t\t\t<\/button>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-navy-1-color has-light-grey-gradient-gradient-background has-transparent-background-color has-text-color has-background has-link-color wp-elements-ddd1c9b7a29bbac540b603bb1c77b4ae\" id=\"overview\"><div class=\"container-grid pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"><div class=\"\"><div class=\"\">\n<div style=\"background-color:transparent\" class=\"wp-block-smultron-grid\"><div><div class=\"wp-block-smultron-grid grid gap-[24px] tablet:grid-cols-1 desktop:grid-cols-2 items-center gap-y-[60px]\">\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"text-left body-lg wp-block-smultron-section-content--padding-right wp-block-smultron-section-content--padding-none wp-block-smultron-section-content\">\n\t<div class=\"wp-block-smultron-section-content__body\" data-aos=\"animate__fadeInUp\">\n\t\t\t\t\t<div class=\"grid gap-[16px]\">\n\t\t\t\t\t\t\t\t\t<div class=\"\n\t\t\t\t\thm2 desktop:h2 title\t\t\t\t\t\">\n\t\t\t\t\t\tO projekcie\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n\n<p>Wieloj\u0119zyczny chatbot AI dzia\u0142aj\u0105cy w ca\u0142o\u015bci na serwerze klienta. Zewn\u0119trzne API AI nie s\u0105 u\u017cywane, a dane nie opuszczaj\u0105 infrastruktury.<br><\/p>\n\n\n\n<p>Instytucja dzia\u0142aj\u0105ca w EU potrzebowa\u0142a <strong>asystenta konwersacyjnego<\/strong> na swoj\u0105 platform\u0119 webow\u0105. Asystent mia\u0142 odpowiada\u0107 na pytania u\u017cytkownik\u00f3w w <strong>wielu j\u0119zykach<\/strong> na podstawie <strong>dw\u00f3ch \u017ar\u00f3de\u0142 danych<\/strong>: codziennego feedu ustrukturyzowanych rekord\u00f3w z zewn\u0119trznego API oraz biblioteki dokument\u00f3w polityk i procedur.<\/p>\n\n\n\n<p>G\u0142\u00f3wnym ograniczeniem by\u0142a <strong>prywatno\u015b\u0107 danych<\/strong> &#8211; przetwarzanie musia\u0142o odbywa\u0107 si\u0119 on-site, a system musia\u0142 funkcjonowa\u0107 w ramach ograniczonych zasob\u00f3w sprz\u0119towych. Rozwi\u0105zanie zosta\u0142o zbudowane w architekturze <strong>RAG (Retrieval-Augmented Generation)<\/strong>.<\/p>\n\n\n\n<div class=\"wp-block-smultron-project-tags label-xs project-tags\">Symfony \/ Ollama \/ PostgreSQL \/ JavaScript \/ PHP <\/div>\n\n\t<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"text-left body-lg wp-block-smultron-section-content--padding-left wp-block-smultron-section-content--padding-none wp-block-smultron-section-content\">\n\t<div class=\"wp-block-smultron-section-content__body\" data-aos=\"animate__fadeInUp\">\n\t\t\t\t\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1280\" height=\"1037\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot.png\" alt=\"\" class=\"wp-image-6275 lazyload\" data-srcset=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot.png 1280w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-300x243.png 300w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-1024x830.png 1024w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-768x622.png 768w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-46x37.png 46w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-56x45.png 56w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-464x376.png 464w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-1080x875.png 1080w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-67x54.png 67w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-444x360.png 444w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/mockup-laptop-chatbot-528x428.png 528w\" data-sizes=\"(max-width: 1280px) 100vw, 1280px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1280px; --smush-placeholder-aspect-ratio: 1280\/1037;\" \/><\/figure>\n\n\t<\/div>\n<\/div>\n<\/div><\/div>\n<\/div><\/div><\/div>\n<\/div><\/div><\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-transparent-background-color has-background\" id=\"challenge\"><div class=\"container-grid pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"><div class=\"\"><div class=\"\">\n<div style=\"background-color:transparent\" class=\"wp-block-smultron-grid\"><div><div class=\"wp-block-smultron-grid grid gap-[24px] tablet:grid-cols-1 desktop:grid-cols-2 items-none \">\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"text-left body-lg wp-block-smultron-section-content--padding-right wp-block-smultron-section-content--padding-none wp-block-smultron-section-content\">\n\t<div class=\"wp-block-smultron-section-content__body\" data-aos=\"animate__fadeInUp\">\n\t\t\t\t\t<div class=\"grid gap-[16px]\">\n\t\t\t\t\t\t\t\t\t<div class=\"\n\t\t\t\t\thm2 desktop:h2 title\t\t\t\t\t\">\n\t\t\t\t\t\tWyzwanie\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n\n<p>Wi\u0119kszo\u015b\u0107 dzisiejszych projekt\u00f3w z asystentami AI dzia\u0142a wed\u0142ug tego samego schematu: wys\u0142anie zapytania u\u017cytkownika do hostowanego API modelu j\u0119zykowego i odebranie odpowiedzi.<br>Wymagania klienta wyklucza\u0142y takie podej\u015bcie. Musieli\u015bmy zbudowa\u0107 i uruchomi\u0107 ca\u0142y stos AI &#8211; model j\u0119zykowy, embeddingi, wyszukiwanie wektorowe, sk\u0142adanie kontekstu &#8211; na serwerach klienta, przy ograniczonych zasobach GPU.<br>Cztery ograniczenia wp\u0142yn\u0119\u0142y na nasze decyzje techniczne.<\/p>\n\n\t<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tPrywatno\u015b\u0107 danych\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tProfile u\u017cytkownik\u00f3w, historia konwersacji i dokumenty \u017ar\u00f3d\u0142owe nie mog\u0142y opuszcza\u0107 serwer\u00f3w klienta. To wykluczy\u0142o hostowane API AI.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tBud\u017cet sprz\u0119towy\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tSystem musia\u0142 dzia\u0142a\u0107 na ograniczonych zasobach GPU, co ogranicza\u0142o rozmiar wykorzystywanych modeli.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tWieloj\u0119zyczno\u015b\u0107\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tAsystent musia\u0142 obs\u0142ugiwa\u0107 wiele j\u0119zyk\u00f3w &#8211; prze\u0142\u0105czaj\u0105c si\u0119 naturalnie w zale\u017cno\u015bci od danych wej\u015bciowych u\u017cytkownika.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tDane na \u017cywo\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tAsystent musia\u0142 pracowa\u0107 z codziennie aktualizowanymi rekordami, a nie ze statycznymi informacjami.\t<\/div>\n<\/div>\n<\/div><\/div>\n<\/div><\/div><\/div>\n<\/div><\/div><\/div><\/div>\n\n\n<div class=\"\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"cta cta--dark\">\n\t\t<div class=\"cta__body\">\n\t\t\t<div class=\"cta__text\">\n\t\t\t\tSzukasz do\u015bwiadczonego zespo\u0142u programistycznego? Porozmawiajmy o&nbsp;konkretach.\t\t\t<\/div>\n\t\t\t<div>\n\t\t\t\t\n<div class=\"person-contact flex gap-[16px] items-center\">\n\t<div class=\"person-contact__image\">\n\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n\n<rect x=\"16\" y=\"16\" width=\"24\" height=\"24\" fill=\"#D9D9D9\" \/>\n\n<g>\n<path d=\"M24 27C24.2833 27 24.5208 26.9042 24.7125 26.7125C24.9042 26.5208 25 26.2833 25 26C25 25.7167 24.9042 25.4792 24.7125 25.2875C24.5208 25.0958 24.2833 25 24 25C23.7167 25 23.4792 25.0958 23.2875 25.2875C23.0958 25.4792 23 25.7167 23 26C23 26.2833 23.0958 26.5208 23.2875 26.7125C23.4792 26.9042 23.7167 27 24 27ZM28 27C28.2833 27 28.5208 26.9042 28.7125 26.7125C28.9042 26.5208 29 26.2833 29 26C29 25.7167 28.9042 25.4792 28.7125 25.2875C28.5208 25.0958 28.2833 25 28 25C27.7167 25 27.4792 25.0958 27.2875 25.2875C27.0958 25.4792 27 25.7167 27 26C27 26.2833 27.0958 26.5208 27.2875 26.7125C27.4792 26.9042 27.7167 27 28 27ZM32 27C32.2833 27 32.5208 26.9042 32.7125 26.7125C32.9042 26.5208 33 26.2833 33 26C33 25.7167 32.9042 25.4792 32.7125 25.2875C32.5208 25.0958 32.2833 25 32 25C31.7167 25 31.4792 25.0958 31.2875 25.2875C31.0958 25.4792 31 25.7167 31 26C31 26.2833 31.0958 26.5208 31.2875 26.7125C31.4792 26.9042 31.7167 27 32 27ZM18 38V20C18 19.45 18.1958 18.9792 18.5875 18.5875C18.9792 18.1958 19.45 18 20 18H36C36.55 18 37.0208 18.1958 37.4125 18.5875C37.8042 18.9792 38 19.45 38 20V32C38 32.55 37.8042 33.0208 37.4125 33.4125C37.0208 33.8042 36.55 34 36 34H22L18 38ZM21.15 32H36V20H20V33.125L21.15 32Z\" fill=\"#F24B88\" \/>\n<\/g>\n<\/svg>\n\t\t\t<\/div>\n\t<div class=\"person-contact__details label-md\">\n\t\t<div class=\"person-contact__email\">\n\t\t\t<a href=\"mailto:hello@smultron.pl\">\n\t\t\t\thello@smultron.pl\t\t\t<\/a>\n\t\t<\/div>\n\t\t<div class=\"person-contact__phone\">\n\t\t\t<a href=\"tel:+48 533 097 111\">\n\t\t\t\t+48 533 097 111\t\t\t<\/a>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"cta__button\">\n\t\t\t<a href=\"#skontaktuj-sie\"\n\t\t\t\tclass=\"button button--gradient-red button--with-icon\">\n\t\t\t<span>\n\t\t\tWyce\u0144 projekt\t\t\t<\/span>\n\t\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t\t<\/a>\n\t\t<\/div>\n\t\t<div class=\"cta__image\">\n\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/jakub-kozak-cta.png\"\n\t\t\t\twidth=\"570\"\n\t\t\t\theight=\"463\"\n\t\t\t\talt=\"\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 570px; --smush-placeholder-aspect-ratio: 570\/463;\">\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-transparent-background-color has-background\" id=\"solution\"><div class=\"container-grid pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"><div class=\"\"><div class=\"\">\n<div class=\"wp-block-smultron-project-functionalities project-functionalities\"><div class=\"project-functionalities__title text-center hm2 desktop:h2 mb-[60px]\">Rozwi\u0105zanie<\/div><div class=\"grid gap-[45px] tablet:gap-[60px]\">\n<div class=\"wp-block-smultron-functionality project-functionalities__item\"><div class=\"project-functionalities__item-text hm3 desktop:h3\"  data-aos=\"animate__fadeInUp\" ><div class=\"project-functionalities__item-title hm3 desktop:h3 mb-[32px]\"><strong>Architektura<\/strong>:\u00a0<strong>cztery warstwy<\/strong><\/div><p class=\"project-functionalities__item-content body-md\"><strong>Warstwa aplikacji<\/strong><br>Obs\u0142uguje routing, uwierzytelnianie i zarz\u0105dzanie sesjami<br><br><strong>Platforma AI<\/strong><br>Uruchamia modele j\u0119zykowe lokalnie, bez zewn\u0119trznych wywo\u0142a\u0144 sieciowych<br><br><strong>Baza wektorowa<\/strong><br>Przechowuje reprezentacje dokument\u00f3w i wyszukuje podobie\u0144stwa w celu pobrania kontekstu<br><br><strong>Transport czasu rzeczywistego<\/strong><br>Strumieniuje odpowiedzi AI na frontend, zapewniaj\u0105c responsywno\u015b\u0107 interfejsu<\/p><\/div><div class=\"project-functionalities__item-image\"  data-aos=\"animate__fadeInUp\"  data-aos-delay=\"100\" >\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1000\" height=\"1000\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment.png\" alt=\"\" class=\"wp-image-6281 lazyload\" data-srcset=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment.png 1000w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-300x300.png 300w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-150x150.png 150w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-768x768.png 768w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-46x46.png 46w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-56x56.png 56w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-376x376.png 376w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-54x54.png 54w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-360x360.png 360w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/chatbot-fragment-528x528.png 528w\" data-sizes=\"(max-width: 1000px) 100vw, 1000px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1000px; --smush-placeholder-aspect-ratio: 1000\/1000;\" \/><\/figure>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-functionality project-functionalities__item\"><div class=\"project-functionalities__item-text hm3 desktop:h3\"  data-aos=\"animate__fadeInUp\" ><div class=\"project-functionalities__item-title hm3 desktop:h3 mb-[32px]\"><strong>Pipeline RAG<\/strong><\/div><p class=\"project-functionalities__item-content body-md\">Gdy u\u017cytkownik wysy\u0142a wiadomo\u015b\u0107, najpierw przechodzi ona przez warstw\u0119 zabezpiecze\u0144 (guardrail), kt\u00f3ra sprawdza zagro\u017cenia bezpiecze\u0144stwa. <br><br>Po walidacji wiadomo\u015b\u0107 trafia do modelu j\u0119zykowego, kt\u00f3ry decyduje, jakich informacji potrzebuje do udzielenia odpowiedzi. W zale\u017cno\u015bci od zapytania model wywo\u0142uje konkretne narz\u0119dzia retrieval &#8211; przeszukuj\u0105c dokumenty polityk, rekordy pracownicze lub jedno i drugie.<br><br>Wyszukiwanie dzia\u0142a na zasadzie podobie\u0144stwa wektorowego. Zapytanie jest embeddowane za pomoc\u0105 wieloj\u0119zycznego modelu, a nast\u0119pnie dopasowywane do zapisanych wektor\u00f3w w PostgreSQL przez podobie\u0144stwo cosinus. Wyniki mo\u017cna filtrowa\u0107 po metadanych (np. region).<br><br>Pobrany kontekst jest nast\u0119pnie sk\u0142adany w prompt razem z danymi profilu u\u017cytkownika i ostatni\u0105 histori\u0105 konwersacji &#8211; wszystko skompresowane tak, by zmie\u015bci\u0107 si\u0119 w bud\u017cecie token\u00f3w modelu. Model generuje odpowied\u017a na podstawie tego po\u0142\u0105czonego kontekstu. Output jest streamowany do frontendu w czasie rzeczywistym przez Mercure\/SSE &#8211; u\u017cytkownik widzi odpowied\u017a w trakcie jej pisania, zamiast czeka\u0107 na pe\u0142ny rezultat.<br><br><\/p><\/div><div class=\"project-functionalities__item-image\"  data-aos=\"animate__fadeInUp\"  data-aos-delay=\"100\" >\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1000\" height=\"1000\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1.png\" alt=\"\" class=\"wp-image-6288 lazyload\" data-srcset=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1.png 1000w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-300x300.png 300w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-150x150.png 150w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-768x768.png 768w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-46x46.png 46w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-56x56.png 56w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-376x376.png 376w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-54x54.png 54w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-360x360.png 360w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/RAG-pipeline-flow-pl-1-528x528.png 528w\" data-sizes=\"(max-width: 1000px) 100vw, 1000px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1000px; --smush-placeholder-aspect-ratio: 1000\/1000;\" \/><\/figure>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-functionality project-functionalities__item\"><div class=\"project-functionalities__item-text hm3 desktop:h3\"  data-aos=\"animate__fadeInUp\" ><div class=\"project-functionalities__item-title hm3 desktop:h3 mb-[32px]\">Co zbudowali\u015bmy<\/div><p class=\"project-functionalities__item-content body-md\"><strong>Indeksowanie dokument\u00f3w<\/strong><br>Zautomatyzowane narz\u0119dzia do \u0142adowania i wektoryzacji plik\u00f3w z politykami.<br><br><strong>Pipeline synchronizacji rekord\u00f3w<\/strong><br>Codzienny import i czyszczenie danych z zewn\u0119trznego API.<br><br><strong>Narz\u0119dzia retrieval<\/strong><br>Wyspecjalizowane funkcje wyszukiwania dost\u0119pne dla agenta AI.<br><br><strong>Zarz\u0105dzanie sesjami<\/strong><br>Systemy obs\u0142ugi profili u\u017cytkownik\u00f3w i historii czat\u00f3w w ramach \u015bcis\u0142ych ogranicze\u0144.<\/p><\/div><div class=\"project-functionalities__item-image\"  data-aos=\"animate__fadeInUp\"  data-aos-delay=\"100\" >\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1000\" height=\"1000\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy.png\" alt=\"\" class=\"wp-image-6297 lazyload\" data-srcset=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy.png 1000w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-300x300.png 300w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-150x150.png 150w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-768x768.png 768w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-46x46.png 46w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-56x56.png 56w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-376x376.png 376w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-54x54.png 54w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-360x360.png 360w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Co-zbudowalismy-528x528.png 528w\" data-sizes=\"(max-width: 1000px) 100vw, 1000px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 1000px; --smush-placeholder-aspect-ratio: 1000\/1000;\" \/><\/figure>\n<\/div><\/div>\n<\/div><\/div>\n<\/div><\/div><\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-transparent-background-color has-background\" id=\"challenges\"><div class=\"container-grid pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"><div class=\"\"><div class=\"\">\n<div style=\"background-color:transparent\" class=\"wp-block-smultron-grid\"><div><div class=\"wp-block-smultron-grid grid gap-[24px] tablet:grid-cols-1 desktop:grid-cols-2 items-none \">\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"text-left body-lg wp-block-smultron-section-content--padding-right wp-block-smultron-section-content--padding-none wp-block-smultron-section-content\">\n\t<div class=\"wp-block-smultron-section-content__body\" data-aos=\"animate__fadeInUp\">\n\t\t\t\t\t<div class=\"grid gap-[16px]\">\n\t\t\t\t\t\t\t\t\t<div class=\"\n\t\t\t\t\thm2 desktop:h2 title\t\t\t\t\t\">\n\t\t\t\t\t\tWyzwania techniczne i ich rozwi\u0105zania\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n\n<p>Self-hosting asystenta AI na ograniczonym sprz\u0119cie oznacza rozwi\u0105zywanie problem\u00f3w, kt\u00f3re hostowane API rozwi\u0105zuj\u0105 za Ciebie &#8211; lub ca\u0142kowicie ignoruj\u0105.<\/p>\n\n\n\n<p>Bezpiecze\u0144stwo modelu, bud\u017cetowanie kontekstu, jako\u015b\u0107 embedding\u00f3w i przetwarzanie danych &#8211; wszystko to wymaga\u0142o opracowania. <\/p>\n\n\n\n<p>Ka\u017cde ograniczenie kierowa\u0142o nas w stron\u0119 rozwi\u0105za\u0144 trudniejszych w budowie, ale daj\u0105cych klientowi pe\u0142n\u0105 kontrol\u0119 nad kosztami, prywatno\u015bci\u0105 i zachowaniem systemu.<\/p>\n\n\t<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tProdukcyjne AI na ograniczonych zasobach\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tWi\u0119kszo\u015b\u0107 zaawansowanych modeli wymaga znacznych zasob\u00f3w sprz\u0119towych. Wybrali\u015bmy kompaktowy model z silnym wsparciem wieloj\u0119zycznym i wydajnym dzia\u0142aniem na ograniczonym sprz\u0119cie. Architektura RAG kompensuje mniejszy rozmiar modelu, wstrzykuj\u0105c konkretny kontekst w momencie zapytania.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tObrona przed prompt injection\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tMniejsze modele mog\u0105 by\u0107 bardziej podatne na manipulacj\u0119 ze strony u\u017cytkownik\u00f3w. Wdro\u017cyli\u015bmy wielowarstwow\u0105 obron\u0119, w tym guardrails oparte na wektorach, kt\u00f3re sprawdzaj\u0105 zapytania na podstawie list dozwolonych\/zabronionych zanim trafi\u0105 do modelu, oraz specjalistyczne techniki zabezpieczania prompt\u00f3w.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tZarz\u0105dzanie oknem kontekstu\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tAby zmie\u015bci\u0107 si\u0119 w limitach danych, ka\u017cdy komponent zosta\u0142 skompresowany. Obejmowa\u0142o to ograniczenie historii konwersacji, wst\u0119pne streszczanie dokument\u00f3w na etapie indeksowania oraz usuwanie zb\u0119dnych p\u00f3l z wynik\u00f3w narz\u0119dzi.\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tJako\u015b\u0107 embedding\u00f3w i przetwarzanie danych\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tRekordy \u017ar\u00f3d\u0142owe r\u00f3\u017cni\u0142y si\u0119 jako\u015bci\u0105 i d\u0142ugo\u015bci\u0105. Wdro\u017cyli\u015bmy automatyczne parsowanie i filtrowanie w celu oczyszczania danych, zastosowali\u015bmy ustrukturyzowane streszczanie przed wektoryzacj\u0105 oraz r\u0119czn\u0105 segmentacj\u0119 du\u017cych dokument\u00f3w wed\u0142ug temat\u00f3w, aby zapewni\u0107 lepsz\u0105 trafno\u015b\u0107 wyszukiwania.\t<\/div>\n<\/div>\n<\/div><\/div>\n<\/div><\/div><\/div>\n<\/div><\/div><\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-transparent-background-color has-background\" id=\"the-scope-of-our-actions\"><div class=\"\"><div class=\"\"><div class=\"\"><div class=\"full-width timeline text-white bg-navy-1 py-[60px]\ndesktop:py-[120px]\">\n\t<div class=\"container-grid\">\n\t\t<div class=\"timeline__headline text-center mb-[32px] desktop:mb-[60px]\">\n\t\t\t<div class=\"hm2 desktop:h2\"\n\t\t\t\tdata-aos=\"animate__fadeInUp\">\n\t\t\t\tThe scope of our actions\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<div class=\"timeline__tabs mb-[60px] desktop:mb-[120px]\"\n\t\t\tdata-aos=\"animate__fadeInUp\">\n\t\t\t<div class=\"grid\">\n\t<div class=\"min-w-0\">\n\t\t<div class=\"swiper timeline-slider-thumbs\">\n\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 38C27.45 38 26.9792 37.8042 26.5875 37.4125C26.1958 37.0208 26 36.55 26 36H30C30 36.55 29.8042 37.0208 29.4125 37.4125C29.0208 37.8042 28.55 38 28 38ZM24 35V33H32V35H24ZM24.25 32C23.1 31.3167 22.1875 30.4 21.5125 29.25C20.8375 28.1 20.5 26.85 20.5 25.5C20.5 23.4167 21.2292 21.6458 22.6875 20.1875C24.1458 18.7292 25.9167 18 28 18C30.0833 18 31.8542 18.7292 33.3125 20.1875C34.7708 21.6458 35.5 23.4167 35.5 25.5C35.5 26.85 35.1625 28.1 34.4875 29.25C33.8125 30.4 32.9 31.3167 31.75 32H24.25ZM24.85 30H31.15C31.9 29.4667 32.4792 28.8083 32.8875 28.025C33.2958 27.2417 33.5 26.4 33.5 25.5C33.5 23.9667 32.9667 22.6667 31.9 21.6C30.8333 20.5333 29.5333 20 28 20C26.4667 20 25.1667 20.5333 24.1 21.6C23.0333 22.6667 22.5 23.9667 22.5 25.5C22.5 26.4 22.7042 27.2417 23.1125 28.025C23.5208 28.8083 24.1 29.4667 24.85 30Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 37C25.4833 37 23.3542 36.6125 21.6125 35.8375C19.8708 35.0625 19 34.1167 19 33V23C19 21.9 19.8792 20.9583 21.6375 20.175C23.3958 19.3917 25.5167 19 28 19C30.4833 19 32.6042 19.3917 34.3625 20.175C36.1208 20.9583 37 21.9 37 23V33C37 34.1167 36.1292 35.0625 34.3875 35.8375C32.6458 36.6125 30.5167 37 28 37ZM28 25.025C29.4833 25.025 30.975 24.8125 32.475 24.3875C33.975 23.9625 34.8167 23.5083 35 23.025C34.8167 22.5417 33.9792 22.0833 32.4875 21.65C30.9958 21.2167 29.5 21 28 21C26.4833 21 24.9958 21.2125 23.5375 21.6375C22.0792 22.0625 21.2333 22.525 21 23.025C21.2333 23.525 22.0792 23.9833 23.5375 24.4C24.9958 24.8167 26.4833 25.025 28 25.025ZM28 30C28.7 30 29.375 29.9667 30.025 29.9C30.675 29.8333 31.2958 29.7375 31.8875 29.6125C32.4792 29.4875 33.0375 29.3333 33.5625 29.15C34.0875 28.9667 34.5667 28.7583 35 28.525V25.525C34.5667 25.7583 34.0875 25.9667 33.5625 26.15C33.0375 26.3333 32.4792 26.4875 31.8875 26.6125C31.2958 26.7375 30.675 26.8333 30.025 26.9C29.375 26.9667 28.7 27 28 27C27.3 27 26.6167 26.9667 25.95 26.9C25.2833 26.8333 24.6542 26.7375 24.0625 26.6125C23.4708 26.4875 22.9167 26.3333 22.4 26.15C21.8833 25.9667 21.4167 25.7583 21 25.525V28.525C21.4167 28.7583 21.8833 28.9667 22.4 29.15C22.9167 29.3333 23.4708 29.4875 24.0625 29.6125C24.6542 29.7375 25.2833 29.8333 25.95 29.9C26.6167 29.9667 27.3 30 28 30ZM28 35C28.7667 35 29.5458 34.9417 30.3375 34.825C31.1292 34.7083 31.8583 34.5542 32.525 34.3625C33.1917 34.1708 33.75 33.9542 34.2 33.7125C34.65 33.4708 34.9167 33.225 35 32.975V30.525C34.5667 30.7583 34.0875 30.9667 33.5625 31.15C33.0375 31.3333 32.4792 31.4875 31.8875 31.6125C31.2958 31.7375 30.675 31.8333 30.025 31.9C29.375 31.9667 28.7 32 28 32C27.3 32 26.6167 31.9667 25.95 31.9C25.2833 31.8333 24.6542 31.7375 24.0625 31.6125C23.4708 31.4875 22.9167 31.3333 22.4 31.15C21.8833 30.9667 21.4167 30.7583 21 30.525V33C21.0833 33.25 21.3458 33.4917 21.7875 33.725C22.2292 33.9583 22.7833 34.1708 23.45 34.3625C24.1167 34.5542 24.85 34.7083 25.65 34.825C26.45 34.9417 27.2333 35 28 35Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M30.75 36L32.75 38H22C21.45 38 20.9792 37.8042 20.5875 37.4125C20.1958 37.0208 20 36.55 20 36V20C20 19.45 20.1958 18.9792 20.5875 18.5875C20.9792 18.1958 21.45 18 22 18H31L36 24V36C36 36.3333 35.9292 36.6375 35.7875 36.9125C35.6458 37.1875 35.45 37.4167 35.2 37.6L30 32.45C29.7167 32.6333 29.4083 32.7708 29.075 32.8625C28.7417 32.9542 28.3833 33 28 33C26.9 33 25.9583 32.6083 25.175 31.825C24.3917 31.0417 24 30.1 24 29C24 27.9 24.3917 26.9583 25.175 26.175C25.9583 25.3917 26.9 25 28 25C29.1 25 30.0417 25.3917 30.825 26.175C31.6083 26.9583 32 27.9 32 29C32 29.3833 31.9542 29.7417 31.8625 30.075C31.7708 30.4083 31.6333 30.7167 31.45 31L34 33.6V24.7L30.05 20H22V36H30.75ZM28 31C28.55 31 29.0208 30.8042 29.4125 30.4125C29.8042 30.0208 30 29.55 30 29C30 28.45 29.8042 27.9792 29.4125 27.5875C29.0208 27.1958 28.55 27 28 27C27.45 27 26.9792 27.1958 26.5875 27.5875C26.1958 27.9792 26 28.45 26 29C26 29.55 26.1958 30.0208 26.5875 30.4125C26.9792 30.8042 27.45 31 28 31Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M33.75 29.25L35.75 31.25V36C35.75 36.55 35.5542 37.0208 35.1625 37.4125C34.7708 37.8042 34.3 38 33.75 38H19.75C19.2 38 18.7292 37.8042 18.3375 37.4125C17.9458 37.0208 17.75 36.55 17.75 36V22C17.75 21.45 17.9458 20.9792 18.3375 20.5875C18.7292 20.1958 19.2 20 19.75 20H25.25C25.1167 20.3 25.0167 20.6208 24.95 20.9625C24.8833 21.3042 24.8333 21.65 24.8 22H19.75V36H33.75V29.25ZM35.05 24.9L38.25 28.1L36.85 29.5L33.65 26.3C33.3 26.5 32.925 26.6667 32.525 26.8C32.125 26.9333 31.7 27 31.25 27C30 27 28.9375 26.5625 28.0625 25.6875C27.1875 24.8125 26.75 23.75 26.75 22.5C26.75 21.25 27.1875 20.1875 28.0625 19.3125C28.9375 18.4375 30 18 31.25 18C32.5 18 33.5625 18.4375 34.4375 19.3125C35.3125 20.1875 35.75 21.25 35.75 22.5C35.75 22.95 35.6833 23.375 35.55 23.775C35.4167 24.175 35.25 24.55 35.05 24.9ZM31.25 25C31.95 25 32.5417 24.7583 33.025 24.275C33.5083 23.7917 33.75 23.2 33.75 22.5C33.75 21.8 33.5083 21.2083 33.025 20.725C32.5417 20.2417 31.95 20 31.25 20C30.55 20 29.9583 20.2417 29.475 20.725C28.9917 21.2083 28.75 21.8 28.75 22.5C28.75 23.2 28.9917 23.7917 29.475 24.275C29.9583 24.7583 30.55 25 31.25 25ZM19.75 36V22V29V28.7V36Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M29 25V19H37V25H29ZM19 29V19H27V29H19ZM29 37V27H37V37H29ZM19 37V31H27V37H19ZM21 27H25V21H21V27ZM31 35H35V29H31V35ZM31 23H35V21H31V23ZM21 35H25V33H21V35Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M27.1375 38.5C26.6709 38.5 26.2334 38.4 25.825 38.2C25.4167 38 25.0709 37.7167 24.7875 37.35L19.3375 30.425L19.8125 29.925C20.1459 29.575 20.5459 29.3667 21.0125 29.3C21.4792 29.2333 21.9125 29.325 22.3125 29.575L24.1625 30.7V22.5C24.1625 22.2167 24.2584 21.9792 24.45 21.7875C24.6417 21.5958 24.8792 21.5 25.1625 21.5C25.4459 21.5 25.6875 21.5958 25.8875 21.7875C26.0875 21.9792 26.1875 22.2167 26.1875 22.5V34.3L23.7625 32.8L26.3625 36.125C26.4625 36.2417 26.5792 36.3333 26.7125 36.4C26.8459 36.4667 26.9875 36.5 27.1375 36.5H32.6625C33.2125 36.5 33.6834 36.3042 34.075 35.9125C34.4667 35.5208 34.6625 35.05 34.6625 34.5V30.5C34.6625 30.2167 34.5667 29.9792 34.375 29.7875C34.1834 29.5958 33.9459 29.5 33.6625 29.5H28.1875V27.5H33.6625C34.4959 27.5 35.2042 27.7917 35.7875 28.375C36.3709 28.9583 36.6625 29.6667 36.6625 30.5V34.5C36.6625 35.6 36.2709 36.5417 35.4875 37.325C34.7042 38.1083 33.7625 38.5 32.6625 38.5H27.1375ZM20.8375 25C20.6209 24.6333 20.4542 24.2375 20.3375 23.8125C20.2209 23.3875 20.1625 22.95 20.1625 22.5C20.1625 21.1167 20.65 19.9375 21.625 18.9625C22.6 17.9875 23.7792 17.5 25.1625 17.5C26.5459 17.5 27.725 17.9875 28.7 18.9625C29.675 19.9375 30.1625 21.1167 30.1625 22.5C30.1625 22.95 30.1042 23.3875 29.9875 23.8125C29.8709 24.2375 29.7042 24.6333 29.4875 25L27.7625 24C27.8959 23.7667 27.9959 23.5292 28.0625 23.2875C28.1292 23.0458 28.1625 22.7833 28.1625 22.5C28.1625 21.6667 27.8709 20.9583 27.2875 20.375C26.7042 19.7917 25.9959 19.5 25.1625 19.5C24.3292 19.5 23.6209 19.7917 23.0375 20.375C22.4542 20.9583 22.1625 21.6667 22.1625 22.5C22.1625 22.7833 22.1959 23.0458 22.2625 23.2875C22.3292 23.5292 22.4292 23.7667 22.5625 24L20.8375 25Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M21.5767 25.9602L23.5267 26.7852C23.76 26.3185 24.0017 25.8685 24.2517 25.4352C24.5017 25.0018 24.7767 24.5685 25.0767 24.1352L23.6767 23.8602L21.5767 25.9602ZM25.1267 28.0352L27.9767 30.8602C28.6767 30.5935 29.4267 30.1852 30.2267 29.6352C31.0267 29.0852 31.7767 28.4602 32.4767 27.7602C33.6434 26.5935 34.5559 25.2977 35.2142 23.8727C35.8725 22.4477 36.16 21.1352 36.0767 19.9352C34.8767 19.8518 33.56 20.1393 32.1267 20.7977C30.6934 21.456 29.3934 22.3685 28.2267 23.5352C27.5267 24.2352 26.9017 24.9852 26.3517 25.7852C25.8017 26.5852 25.3934 27.3352 25.1267 28.0352ZM29.5767 26.4102C29.1934 26.0268 29.0017 25.556 29.0017 24.9977C29.0017 24.4393 29.1934 23.9685 29.5767 23.5852C29.96 23.2018 30.435 23.0102 31.0017 23.0102C31.5684 23.0102 32.0434 23.2018 32.4267 23.5852C32.81 23.9685 33.0017 24.4393 33.0017 24.9977C33.0017 25.556 32.81 26.0268 32.4267 26.4102C32.0434 26.7935 31.5684 26.9852 31.0017 26.9852C30.435 26.9852 29.96 26.7935 29.5767 26.4102ZM30.0517 34.4352L32.1517 32.3352L31.8767 30.9352C31.4434 31.2352 31.01 31.506 30.5767 31.7477C30.1434 31.9893 29.6934 32.2268 29.2267 32.4602L30.0517 34.4352ZM37.8767 18.1102C38.1934 20.1268 37.9975 22.0893 37.2892 23.9977C36.5809 25.906 35.36 27.7268 33.6267 29.4602L34.1267 31.9352C34.1934 32.2685 34.1767 32.5935 34.0767 32.9102C33.9767 33.2268 33.81 33.5018 33.5767 33.7352L29.3767 37.9352L27.2767 33.0102L23.0017 28.7352L18.0767 26.6352L22.2517 22.4352C22.485 22.2018 22.7642 22.0352 23.0892 21.9352C23.4142 21.8352 23.7434 21.8185 24.0767 21.8852L26.5517 22.3852C28.285 20.6518 30.1017 19.4268 32.0017 18.7102C33.9017 17.9935 35.86 17.7935 37.8767 18.1102ZM19.8517 31.9102C20.435 31.3268 21.1475 31.031 21.9892 31.0227C22.8309 31.0143 23.5434 31.3018 24.1267 31.8852C24.71 32.4685 24.9975 33.181 24.9892 34.0227C24.9809 34.8643 24.685 35.5768 24.1017 36.1602C23.685 36.5768 22.9892 36.9352 22.0142 37.2352C21.0392 37.5352 19.6934 37.8018 17.9767 38.0352C18.21 36.3185 18.4767 34.9727 18.7767 33.9977C19.0767 33.0227 19.435 32.3268 19.8517 31.9102ZM21.2767 33.3102C21.11 33.4768 20.9434 33.781 20.7767 34.2227C20.61 34.6643 20.4934 35.1102 20.4267 35.5602C20.8767 35.4935 21.3225 35.381 21.7642 35.2227C22.2059 35.0643 22.51 34.9018 22.6767 34.7352C22.8767 34.5352 22.985 34.2935 23.0017 34.0102C23.0184 33.7268 22.9267 33.4852 22.7267 33.2852C22.5267 33.0852 22.285 32.9893 22.0017 32.9977C21.7184 33.006 21.4767 33.1102 21.2767 33.3102Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t<div class=\"swiper-slide !w-auto\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 38C25.6833 37.4167 23.7708 36.0875 22.2625 34.0125C20.7542 31.9375 20 29.6333 20 27.1V21L28 18L36 21V27.1C36 29.6333 35.2458 31.9375 33.7375 34.0125C32.2292 36.0875 30.3167 37.4167 28 38ZM28 35.9C29.7333 35.35 31.1667 34.25 32.3 32.6C33.4333 30.95 34 29.1167 34 27.1V22.375L28 20.125L22 22.375V27.1C22 29.1167 22.5667 30.95 23.7 32.6C24.8333 34.25 26.2667 35.35 28 35.9Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t<\/div>\n\t\t<div class=\"timeline__panel grid tablet:grid-cols-8\n\t\tdesktop:grid-cols-12 gap-[24px]\"\n\t\t\tdata-aos=\"animate__fadeInUp\">\n\t\t\t\n<div class=\"tablet:col-start-2 tablet:col-end-[-2] grid\">\n\t<div class=\"min-w-0\">\n\t\t<div class=\"swiper timeline-slider\">\n\t\t\t<div class=\"swiper-wrapper\">\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 38C27.45 38 26.9792 37.8042 26.5875 37.4125C26.1958 37.0208 26 36.55 26 36H30C30 36.55 29.8042 37.0208 29.4125 37.4125C29.0208 37.8042 28.55 38 28 38ZM24 35V33H32V35H24ZM24.25 32C23.1 31.3167 22.1875 30.4 21.5125 29.25C20.8375 28.1 20.5 26.85 20.5 25.5C20.5 23.4167 21.2292 21.6458 22.6875 20.1875C24.1458 18.7292 25.9167 18 28 18C30.0833 18 31.8542 18.7292 33.3125 20.1875C34.7708 21.6458 35.5 23.4167 35.5 25.5C35.5 26.85 35.1625 28.1 34.4875 29.25C33.8125 30.4 32.9 31.3167 31.75 32H24.25ZM24.85 30H31.15C31.9 29.4667 32.4792 28.8083 32.8875 28.025C33.2958 27.2417 33.5 26.4 33.5 25.5C33.5 23.9667 32.9667 22.6667 31.9 21.6C30.8333 20.5333 29.5333 20 28 20C26.4667 20 25.1667 20.5333 24.1 21.6C23.0333 22.6667 22.5 23.9667 22.5 25.5C22.5 26.4 22.7042 27.2417 23.1125 28.025C23.5208 28.8083 24.1 29.4667 24.85 30Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tWarsztaty\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tWsp\u00f3lnie z klientem uczestniczymy w warsztatach, aby lepiej pozna\u0107 jego wizj\u0119 i zapewni\u0107 idealne dopasowanie do oczekiwa\u0144.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/warsztaty-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Warsztaty\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 37C25.4833 37 23.3542 36.6125 21.6125 35.8375C19.8708 35.0625 19 34.1167 19 33V23C19 21.9 19.8792 20.9583 21.6375 20.175C23.3958 19.3917 25.5167 19 28 19C30.4833 19 32.6042 19.3917 34.3625 20.175C36.1208 20.9583 37 21.9 37 23V33C37 34.1167 36.1292 35.0625 34.3875 35.8375C32.6458 36.6125 30.5167 37 28 37ZM28 25.025C29.4833 25.025 30.975 24.8125 32.475 24.3875C33.975 23.9625 34.8167 23.5083 35 23.025C34.8167 22.5417 33.9792 22.0833 32.4875 21.65C30.9958 21.2167 29.5 21 28 21C26.4833 21 24.9958 21.2125 23.5375 21.6375C22.0792 22.0625 21.2333 22.525 21 23.025C21.2333 23.525 22.0792 23.9833 23.5375 24.4C24.9958 24.8167 26.4833 25.025 28 25.025ZM28 30C28.7 30 29.375 29.9667 30.025 29.9C30.675 29.8333 31.2958 29.7375 31.8875 29.6125C32.4792 29.4875 33.0375 29.3333 33.5625 29.15C34.0875 28.9667 34.5667 28.7583 35 28.525V25.525C34.5667 25.7583 34.0875 25.9667 33.5625 26.15C33.0375 26.3333 32.4792 26.4875 31.8875 26.6125C31.2958 26.7375 30.675 26.8333 30.025 26.9C29.375 26.9667 28.7 27 28 27C27.3 27 26.6167 26.9667 25.95 26.9C25.2833 26.8333 24.6542 26.7375 24.0625 26.6125C23.4708 26.4875 22.9167 26.3333 22.4 26.15C21.8833 25.9667 21.4167 25.7583 21 25.525V28.525C21.4167 28.7583 21.8833 28.9667 22.4 29.15C22.9167 29.3333 23.4708 29.4875 24.0625 29.6125C24.6542 29.7375 25.2833 29.8333 25.95 29.9C26.6167 29.9667 27.3 30 28 30ZM28 35C28.7667 35 29.5458 34.9417 30.3375 34.825C31.1292 34.7083 31.8583 34.5542 32.525 34.3625C33.1917 34.1708 33.75 33.9542 34.2 33.7125C34.65 33.4708 34.9167 33.225 35 32.975V30.525C34.5667 30.7583 34.0875 30.9667 33.5625 31.15C33.0375 31.3333 32.4792 31.4875 31.8875 31.6125C31.2958 31.7375 30.675 31.8333 30.025 31.9C29.375 31.9667 28.7 32 28 32C27.3 32 26.6167 31.9667 25.95 31.9C25.2833 31.8333 24.6542 31.7375 24.0625 31.6125C23.4708 31.4875 22.9167 31.3333 22.4 31.15C21.8833 30.9667 21.4167 30.7583 21 30.525V33C21.0833 33.25 21.3458 33.4917 21.7875 33.725C22.2292 33.9583 22.7833 34.1708 23.45 34.3625C24.1167 34.5542 24.85 34.7083 25.65 34.825C26.45 34.9417 27.2333 35 28 35Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tBaza danych\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tProjektujemy i implementujemy wydajne oraz skalowalne bazy danych, zapewniaj\u0105c solidne fundamenty dla strony internetowej.\r\n\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/baza-danych-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Baza danych\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M30.75 36L32.75 38H22C21.45 38 20.9792 37.8042 20.5875 37.4125C20.1958 37.0208 20 36.55 20 36V20C20 19.45 20.1958 18.9792 20.5875 18.5875C20.9792 18.1958 21.45 18 22 18H31L36 24V36C36 36.3333 35.9292 36.6375 35.7875 36.9125C35.6458 37.1875 35.45 37.4167 35.2 37.6L30 32.45C29.7167 32.6333 29.4083 32.7708 29.075 32.8625C28.7417 32.9542 28.3833 33 28 33C26.9 33 25.9583 32.6083 25.175 31.825C24.3917 31.0417 24 30.1 24 29C24 27.9 24.3917 26.9583 25.175 26.175C25.9583 25.3917 26.9 25 28 25C29.1 25 30.0417 25.3917 30.825 26.175C31.6083 26.9583 32 27.9 32 29C32 29.3833 31.9542 29.7417 31.8625 30.075C31.7708 30.4083 31.6333 30.7167 31.45 31L34 33.6V24.7L30.05 20H22V36H30.75ZM28 31C28.55 31 29.0208 30.8042 29.4125 30.4125C29.8042 30.0208 30 29.55 30 29C30 28.45 29.8042 27.9792 29.4125 27.5875C29.0208 27.1958 28.55 27 28 27C27.45 27 26.9792 27.1958 26.5875 27.5875C26.1958 27.9792 26 28.45 26 29C26 29.55 26.1958 30.0208 26.5875 30.4125C26.9792 30.8042 27.45 31 28 31Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tAnaliza i\u00a0konsultacje\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tRozpoczynamy od g\u0142\u0119bokiego zrozumienia potrzeb klienta oraz cel\u00f3w projektu, aby zapewni\u0107 spersonalizowane rozwi\u0105zania.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/analiza-konsultacje-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Analiza i\u00a0konsultacje\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M33.75 29.25L35.75 31.25V36C35.75 36.55 35.5542 37.0208 35.1625 37.4125C34.7708 37.8042 34.3 38 33.75 38H19.75C19.2 38 18.7292 37.8042 18.3375 37.4125C17.9458 37.0208 17.75 36.55 17.75 36V22C17.75 21.45 17.9458 20.9792 18.3375 20.5875C18.7292 20.1958 19.2 20 19.75 20H25.25C25.1167 20.3 25.0167 20.6208 24.95 20.9625C24.8833 21.3042 24.8333 21.65 24.8 22H19.75V36H33.75V29.25ZM35.05 24.9L38.25 28.1L36.85 29.5L33.65 26.3C33.3 26.5 32.925 26.6667 32.525 26.8C32.125 26.9333 31.7 27 31.25 27C30 27 28.9375 26.5625 28.0625 25.6875C27.1875 24.8125 26.75 23.75 26.75 22.5C26.75 21.25 27.1875 20.1875 28.0625 19.3125C28.9375 18.4375 30 18 31.25 18C32.5 18 33.5625 18.4375 34.4375 19.3125C35.3125 20.1875 35.75 21.25 35.75 22.5C35.75 22.95 35.6833 23.375 35.55 23.775C35.4167 24.175 35.25 24.55 35.05 24.9ZM31.25 25C31.95 25 32.5417 24.7583 33.025 24.275C33.5083 23.7917 33.75 23.2 33.75 22.5C33.75 21.8 33.5083 21.2083 33.025 20.725C32.5417 20.2417 31.95 20 31.25 20C30.55 20 29.9583 20.2417 29.475 20.725C28.9917 21.2083 28.75 21.8 28.75 22.5C28.75 23.2 28.9917 23.7917 29.475 24.275C29.9583 24.7583 30.55 25 31.25 25ZM19.75 36V22V29V28.7V36Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tAudyt technologii\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tPrzeprowadzamy szczeg\u00f3\u0142owy audyt technologiczny, identyfikuj\u0105c najlepsze narz\u0119dzia i rozwi\u0105zania dostosowane do potrzeb projektu.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/audyt-technologii-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Audyt technologii\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M29 25V19H37V25H29ZM19 29V19H27V29H19ZM29 37V27H37V37H29ZM19 37V31H27V37H19ZM21 27H25V21H21V27ZM31 35H35V29H31V35ZM31 23H35V21H31V23ZM21 35H25V33H21V35Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tKodowanie front-end (interface)\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tTworzymy responsywne i dynamiczne interfejsy u\u017cytkownika, wykorzystuj\u0105c najnowsze technologie front-endowe.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/frontend-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Kodowanie front-end (interface)\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M27.1375 38.5C26.6709 38.5 26.2334 38.4 25.825 38.2C25.4167 38 25.0709 37.7167 24.7875 37.35L19.3375 30.425L19.8125 29.925C20.1459 29.575 20.5459 29.3667 21.0125 29.3C21.4792 29.2333 21.9125 29.325 22.3125 29.575L24.1625 30.7V22.5C24.1625 22.2167 24.2584 21.9792 24.45 21.7875C24.6417 21.5958 24.8792 21.5 25.1625 21.5C25.4459 21.5 25.6875 21.5958 25.8875 21.7875C26.0875 21.9792 26.1875 22.2167 26.1875 22.5V34.3L23.7625 32.8L26.3625 36.125C26.4625 36.2417 26.5792 36.3333 26.7125 36.4C26.8459 36.4667 26.9875 36.5 27.1375 36.5H32.6625C33.2125 36.5 33.6834 36.3042 34.075 35.9125C34.4667 35.5208 34.6625 35.05 34.6625 34.5V30.5C34.6625 30.2167 34.5667 29.9792 34.375 29.7875C34.1834 29.5958 33.9459 29.5 33.6625 29.5H28.1875V27.5H33.6625C34.4959 27.5 35.2042 27.7917 35.7875 28.375C36.3709 28.9583 36.6625 29.6667 36.6625 30.5V34.5C36.6625 35.6 36.2709 36.5417 35.4875 37.325C34.7042 38.1083 33.7625 38.5 32.6625 38.5H27.1375ZM20.8375 25C20.6209 24.6333 20.4542 24.2375 20.3375 23.8125C20.2209 23.3875 20.1625 22.95 20.1625 22.5C20.1625 21.1167 20.65 19.9375 21.625 18.9625C22.6 17.9875 23.7792 17.5 25.1625 17.5C26.5459 17.5 27.725 17.9875 28.7 18.9625C29.675 19.9375 30.1625 21.1167 30.1625 22.5C30.1625 22.95 30.1042 23.3875 29.9875 23.8125C29.8709 24.2375 29.7042 24.6333 29.4875 25L27.7625 24C27.8959 23.7667 27.9959 23.5292 28.0625 23.2875C28.1292 23.0458 28.1625 22.7833 28.1625 22.5C28.1625 21.6667 27.8709 20.9583 27.2875 20.375C26.7042 19.7917 25.9959 19.5 25.1625 19.5C24.3292 19.5 23.6209 19.7917 23.0375 20.375C22.4542 20.9583 22.1625 21.6667 22.1625 22.5C22.1625 22.7833 22.1959 23.0458 22.2625 23.2875C22.3292 23.5292 22.4292 23.7667 22.5625 24L20.8375 25Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tTesty manualne\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tPrzeprowadzamy kompleksowe testy manualne, weryfikuj\u0105c dzia\u0142anie ka\u017cdej funkcjonalno\u015bci na r\u00f3\u017cnych, dost\u0119pnych na rynku urz\u0105dzeniach, zapewniaj\u0105c bezb\u0142\u0119dne dzia\u0142anie i wysok\u0105 jako\u015b\u0107 produktu.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/testy-manualne-1.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Testy manualne\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M21.5767 25.9602L23.5267 26.7852C23.76 26.3185 24.0017 25.8685 24.2517 25.4352C24.5017 25.0018 24.7767 24.5685 25.0767 24.1352L23.6767 23.8602L21.5767 25.9602ZM25.1267 28.0352L27.9767 30.8602C28.6767 30.5935 29.4267 30.1852 30.2267 29.6352C31.0267 29.0852 31.7767 28.4602 32.4767 27.7602C33.6434 26.5935 34.5559 25.2977 35.2142 23.8727C35.8725 22.4477 36.16 21.1352 36.0767 19.9352C34.8767 19.8518 33.56 20.1393 32.1267 20.7977C30.6934 21.456 29.3934 22.3685 28.2267 23.5352C27.5267 24.2352 26.9017 24.9852 26.3517 25.7852C25.8017 26.5852 25.3934 27.3352 25.1267 28.0352ZM29.5767 26.4102C29.1934 26.0268 29.0017 25.556 29.0017 24.9977C29.0017 24.4393 29.1934 23.9685 29.5767 23.5852C29.96 23.2018 30.435 23.0102 31.0017 23.0102C31.5684 23.0102 32.0434 23.2018 32.4267 23.5852C32.81 23.9685 33.0017 24.4393 33.0017 24.9977C33.0017 25.556 32.81 26.0268 32.4267 26.4102C32.0434 26.7935 31.5684 26.9852 31.0017 26.9852C30.435 26.9852 29.96 26.7935 29.5767 26.4102ZM30.0517 34.4352L32.1517 32.3352L31.8767 30.9352C31.4434 31.2352 31.01 31.506 30.5767 31.7477C30.1434 31.9893 29.6934 32.2268 29.2267 32.4602L30.0517 34.4352ZM37.8767 18.1102C38.1934 20.1268 37.9975 22.0893 37.2892 23.9977C36.5809 25.906 35.36 27.7268 33.6267 29.4602L34.1267 31.9352C34.1934 32.2685 34.1767 32.5935 34.0767 32.9102C33.9767 33.2268 33.81 33.5018 33.5767 33.7352L29.3767 37.9352L27.2767 33.0102L23.0017 28.7352L18.0767 26.6352L22.2517 22.4352C22.485 22.2018 22.7642 22.0352 23.0892 21.9352C23.4142 21.8352 23.7434 21.8185 24.0767 21.8852L26.5517 22.3852C28.285 20.6518 30.1017 19.4268 32.0017 18.7102C33.9017 17.9935 35.86 17.7935 37.8767 18.1102ZM19.8517 31.9102C20.435 31.3268 21.1475 31.031 21.9892 31.0227C22.8309 31.0143 23.5434 31.3018 24.1267 31.8852C24.71 32.4685 24.9975 33.181 24.9892 34.0227C24.9809 34.8643 24.685 35.5768 24.1017 36.1602C23.685 36.5768 22.9892 36.9352 22.0142 37.2352C21.0392 37.5352 19.6934 37.8018 17.9767 38.0352C18.21 36.3185 18.4767 34.9727 18.7767 33.9977C19.0767 33.0227 19.435 32.3268 19.8517 31.9102ZM21.2767 33.3102C21.11 33.4768 20.9434 33.781 20.7767 34.2227C20.61 34.6643 20.4934 35.1102 20.4267 35.5602C20.8767 35.4935 21.3225 35.381 21.7642 35.2227C22.2059 35.0643 22.51 34.9018 22.6767 34.7352C22.8767 34.5352 22.985 34.2935 23.0017 34.0102C23.0184 33.7268 22.9267 33.4852 22.7267 33.2852C22.5267 33.0852 22.285 32.9893 22.0017 32.9977C21.7184 33.006 21.4767 33.1102 21.2767 33.3102Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tWdro\u017cenie \/ Release\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tWdra\u017camy stron\u0119 internetow\u0105 na serwerze produkcyjnym, zapewniaj\u0105c p\u0142ynny przebieg procesu oraz minimalizuj\u0105c ewentualne zak\u0142\u00f3cenia.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/02\/wdrozenie4.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Wdro\u017cenie \/ Release\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t\t\t\n<div class=\"swiper-slide\">\n\t<div class=\"grid desktop:grid-cols-2 gap-[24px] items-center\">\n\t\t<div class=\"grid desktop:grid-cols-5 gap-[24px]\">\n\t\t\t<div class=\"desktop:col-span-4 grid gap-[16px]\">\n\t\t\t\t<div class=\"flex\">\n\t\t\t\t\t<div class=\"bg-navy-2 rounded-full\">\n\t\t\t\t\t\t<svg width=\"56\" height=\"56\" viewBox=\"0 0 56 56\" fill=\"none\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\">\n<path d=\"M28 38C25.6833 37.4167 23.7708 36.0875 22.2625 34.0125C20.7542 31.9375 20 29.6333 20 27.1V21L28 18L36 21V27.1C36 29.6333 35.2458 31.9375 33.7375 34.0125C32.2292 36.0875 30.3167 37.4167 28 38ZM28 35.9C29.7333 35.35 31.1667 34.25 32.3 32.6C33.4333 30.95 34 29.1167 34 27.1V22.375L28 20.125L22 22.375V27.1C22 29.1167 22.5667 30.95 23.7 32.6C24.8333 34.25 26.2667 35.35 28 35.9Z\" fill=\"#F24B88\"\/>\n<\/svg>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"hm3 desktop:h3\">\n\t\t\t\t\tOpieka gwarancyjna\t\t\t\t<\/div>\n\t\t\t\t<div class=\"body-lg\">\n\t\t\t\t\t<p>\n\t\t\t\t\t\tUdzielamy 12-miesi\u0119cznej gwarancji na wykonane prace, zapewniaj\u0105c klientowi pe\u0142ne bezpiecze\u0144stwo i pewno\u015b\u0107 dzia\u0142ania strony internetowej po jej uruchomieniu.\t\t\t\t\t<\/p>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\t\t\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/05\/warranty-service.png\"\n\t\t\t\t\twidth=\"768\"\n\t\t\t\t\theight=\"432\"\n\t\t\t\t\talt=\"Opieka gwarancyjna\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" class=\"lazyload\" style=\"--smush-placeholder-width: 768px; --smush-placeholder-aspect-ratio: 768\/432;\" \/>\n\t\t\t\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t<\/div>\n\t<\/div>\n<\/div>\n<\/div><\/div><\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width section-scrollspy has-transparent-background-color has-background\" id=\"stack\"><div class=\"container-grid pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"><div class=\"\"><div class=\"\">\n<div style=\"background-color:transparent\" class=\"wp-block-smultron-grid\"><div><div class=\"wp-block-smultron-grid grid gap-[24px] tablet:grid-cols-1 desktop:grid-cols-2 items-none \">\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"text-left body-lg wp-block-smultron-section-content--padding-right wp-block-smultron-section-content--padding-none wp-block-smultron-section-content\">\n\t<div class=\"wp-block-smultron-section-content__body\" data-aos=\"animate__fadeInUp\">\n\t\t\t\t\t<div class=\"grid gap-[16px]\">\n\t\t\t\t\t\t\t\t\t<div class=\"\n\t\t\t\t\thm2 desktop:h2 title\t\t\t\t\t\">\n\t\t\t\t\t\tStack technologiczny\t\t\t\t\t<\/div>\n\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\n\n<p>Produkcyjny asystent RAG dzia\u0142aj\u0105cy na ograniczonym prywatnym sprz\u0119cie, przetwarzaj\u0105cy dziennie dziesi\u0105tki tysi\u0119cy rekord\u00f3w, obs\u0142uguj\u0105cy wieloj\u0119zyczne zapytania ze wsp\u00f3\u0142dzielonej przestrzeni wektorowej &#8211; przy zerowym wyp\u0142ywie danych poza infrastruktur\u0119 i zerowych kosztach per token.<\/p>\n\n\t<\/div>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-grid-item grid\"><div>\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tFramework backendowy\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tNowoczesny framework enterprise Symfony 8\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tPlatforma AI\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tOllama \u2013 lokalne \u015brodowisko hostingu modeli (alternatywnie Bedrock)\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tModele\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tWieloj\u0119zyczne modele j\u0119zykowe i embeddingowe\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tBaza danych\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tPostgreSQL z pgvector \u2013 rozwi\u0105zanie bazodanowe z obs\u0142ug\u0105 wektor\u00f3w\t<\/div>\n<\/div>\n\n\n\n<div class=\"section-list-item mb-[24px]\"\n\tdata-aos=\"animate__fadeInUp\"\n>\n\t<div class=\"section-list-item__icon\">\n\t\t<div>\n\t\t\t<span class=\"icon-arrow-right\"><\/span>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"section-list-item__title\">\n\t\tKomunikacja\t<\/div>\n\t<div class=\"section-list-item__description\">\n\t\tServer-Sent Events \u2013 strumieniowanie w czasie rzeczywistym i asynchroniczna obs\u0142uga wiadomo\u015bci\t<\/div>\n<\/div>\n<\/div><\/div>\n<\/div><\/div><\/div>\n<\/div><\/div><\/div><\/div>\n\n\n\n<div class=\"wp-block-smultron-section full-width  section--overflow-content has-light-grey-gradient-gradient-background has-transparent-background-color has-background\"><div class=\"\"><div class=\"\"><div class=\"\">\n<div data-aos=\"animate__fadeInUp\" class=\"wp-block-smultron-mockup mockup mockup--full-width\">\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1920\" height=\"900\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job.png\" alt=\"\" class=\"wp-image-6287 lazyload\" style=\"--smush-placeholder-width: 1920px; --smush-placeholder-aspect-ratio: 1920\/900;object-fit:cover\" data-srcset=\"https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job.png 1920w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-300x141.png 300w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-1024x480.png 1024w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-768x360.png 768w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-1536x720.png 1536w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-46x22.png 46w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-56x26.png 56w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-528x248.png 528w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-1080x506.png 1080w, https:\/\/smultron.software\/content\/uploads\/2026\/05\/Mockup-big-size-chatbot-job-115x54.png 115w\" data-sizes=\"(max-width: 1920px) 100vw, 1920px\" src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" \/><\/figure>\n<\/div>\n<\/div><\/div><\/div><\/div>\n<div class=\"full-width container-grid gap-y-[32px] section-scrollspy  bg-gray-1 pt-[60px] desktop:pt-[120px] pb-[60px] desktop:pb-[120px]\"\n\tid=\"skontaktuj-sie\">\n\t<div class=\"hm2 desktop:h2\"\n\t\tdata-aos=\"animate__fadeInUp\"\n\t>\n\t\tSkontaktuj si\u0119 z nami\t<\/div>\n\t<div class=\"grid desktop:grid-cols-12 gap-y-[60px] items-start\">\n\t\t\n<div class=\"desktop:col-span-6 grid tablet:grid-cols-2\n\t\ttablet:gap-x-[24px] tablet:gap-y-[32px]\">\n\t<div class=\"\">\n\t\t<div class=\"\">\n\t\t\t<img decoding=\"async\" data-src=\"https:\/\/smultron.software\/content\/uploads\/2024\/01\/681c046dafbd67a84a6a2820a207caa9-e1706629988730-768x515.jpeg\"\n\t\t\t\twidth=\"327\"\n\t\t\t\theight=\"204\"\n\t\t\t\tclass=\"w-full aspect-[390\/243] object-cover rounded-t-[10px] lazyload\"\n\t\t\t\talt=\"Marcin Stawowiak\"\n\t\t\t\tdata-aos=\"animate__fadeInUp\"\n\t\t\t src=\"data:image\/svg+xml;base64,PHN2ZyB3aWR0aD0iMSIgaGVpZ2h0PSIxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciPjwvc3ZnPg==\" style=\"--smush-placeholder-width: 327px; --smush-placeholder-aspect-ratio: 327\/204;\" \/>\n\t\t\t<div class=\"p-[24px] tablet:border-l-[1px] tablet:border-b-[1px]\n\t\t\tborder-gray-2 tablet:rounded-bl-[10px] max-tablet:border-x-[1px]\n\t\t\tgrid gap-[16px]\">\n\t\t\t\t<div class=\"h6\"\n\t\t\t\t\tdata-aos=\"animate__fadeInUp\"\n\t\t\t\t>Marcin Stawowiak<\/div>\n\t\t\t\t<div class=\"label-xs font-bold\"\n\t\t\t\t\tdata-aos=\"animate__fadeInUp\"\n\t\t\t\t>\n\t\t\t\t\tCo-founder, Executive Manager\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"pl-[24px] pb-[24px] pr-[24px] tablet:ml-[-24px]\n\t\t\ttablet:pt-[24px] grid gap-[16px] tablet:self-end tablet:border-[1px] tablet:border-l-0\n\t\t\tborder-gray-2 tablet:rounded-r-[10px] max-tablet:border-x-[1px]\n\t\t\tmax-tablet:border-b-[1px] max-tablet:rounded-b-[10px]\n\t\t\tgap-y-[60px]\">\n\t\t<div class=\"label-md max-tablet:hidden\" data-aos=\"animate__fadeInUp\">\n\t\t\tSzukasz do\u015bwiadczonego zespo\u0142u programistycznego? <br \/>Porozmawiajmy o konkretach.\t\t<\/div>\n\t\t<div class=\"grid body-md\" data-aos=\"animate__fadeInUp\">\n\t\t\t<a href=\"mailto:hello@smultron.pl\">hello@smultron.pl<\/a>\n\t\t\t<a href=\"tel:+48 791 991 797\">+48 791 991 797<\/a>\n\t\t<\/div>\n\t<\/div>\n\t<div class=\"tablet:col-span-2 body-md grid gap-[16px] mt-[32px]\n\ttablet:mt-0\" data-aos=\"animate__fadeInUp\">\n\t\t<div class=\"label-md\">\n\t\t\tSmultron Web Development\t\t<\/div>\n\t\t<div class=\"\">\n\t\t\tul. S\u0142awkowska 12\t\t\t<br\/>\n\t\t\t31-014 Krak\u00f3w\t\t<\/div>\n\t\t<div>\n\t\t\tNIP:&nbsp;6762482785\t\t<\/div>\n\t<\/div>\n<\/div>\n\t\t\n<div class=\"desktop:col-start-8 desktop:col-span-5 contact-form-footer\">\n\t\n<div class=\"wpcf7 no-js\" id=\"wpcf7-f224-o1\" lang=\"en-US\" dir=\"ltr\" data-wpcf7-id=\"224\">\n<div class=\"screen-reader-response\"><p role=\"status\" aria-live=\"polite\" aria-atomic=\"true\"><\/p> <ul><\/ul><\/div>\n<form action=\"\/pl\/wp-json\/wp\/v2\/project\/6285#wpcf7-f224-o1\" method=\"post\" class=\"wpcf7-form init wpcf7-acceptance-as-validation\" aria-label=\"Contact form\" novalidate=\"novalidate\" data-status=\"init\">\n<fieldset class=\"hidden-fields-container\"><input type=\"hidden\" name=\"_wpcf7\" value=\"224\" \/><input type=\"hidden\" name=\"_wpcf7_version\" value=\"6.1.5\" \/><input type=\"hidden\" name=\"_wpcf7_locale\" value=\"en_US\" \/><input type=\"hidden\" name=\"_wpcf7_unit_tag\" value=\"wpcf7-f224-o1\" \/><input type=\"hidden\" name=\"_wpcf7_container_post\" value=\"0\" \/><input type=\"hidden\" name=\"_wpcf7_posted_data_hash\" value=\"\" \/>\n<\/fieldset>\n<div class=\"desktop:col-start-8 desktop:col-span-5\">\n  <div class=\"grid gap-[32px]\">\n    <div class=\"label-md\">\n\t\t\tWype\u0142nij poni\u017cszy formularz\n    <\/div>\n    <div class=\"grid gap-[24px]\">\n      <div class=\"form-row\">\n        <label class=\"label-xs\" for=\"msg-email\">Tw\u00f3j e-mail*<\/label>\n        <span class=\"wpcf7-form-control-wrap\" data-name=\"email\"><input size=\"40\" maxlength=\"400\" class=\"wpcf7-form-control wpcf7-email wpcf7-validates-as-required wpcf7-text wpcf7-validates-as-email form-control\" id=\"msg-email\" aria-required=\"true\" aria-invalid=\"false\" value=\"\" type=\"email\" name=\"email\" \/><\/span>\n      <\/div>\n      <div class=\"form-row\">\n        <label class=\"label-xs\" for=\"msg-content\">Twoja wiadomo\u015b\u0107*<\/label>\n        <span class=\"wpcf7-form-control-wrap\" data-name=\"message\"><textarea cols=\"40\" rows=\"10\" maxlength=\"2500\" class=\"wpcf7-form-control wpcf7-textarea wpcf7-validates-as-required form-control form-control-textarea\" id=\"msg-content\" aria-required=\"true\" aria-invalid=\"false\" placeholder=\"Podziel si\u0119 szczeg\u00f3\u0142ami swojego projektu\" name=\"message\"><\/textarea><\/span>\n        <div class=\"form-text\">\n          Max. 2500 znak\u00f3w\n        <\/div>\n      <\/div>\n      <div class=\"form-row label-sm\">\n<span class=\"wpcf7-form-control-wrap\" data-name=\"acceptance-69\"><span class=\"wpcf7-form-control wpcf7-acceptance\"><span class=\"wpcf7-list-item\"><label><input type=\"checkbox\" name=\"acceptance-69\" value=\"1\" aria-invalid=\"false\" \/><span class=\"wpcf7-list-item-label\"><span><\/span><span>Zapozna\u0142em si\u0119 i akceptuj\u0119 <a href=\"\/pl\/polityka-prywatnosci\/\" class=\"underline\" target=\"_blank\" rel=\"nofollow\">Regulamin i Polityk\u0119 Prywatno\u015bci Smultron<\/a>.*<\/span><\/span><\/label><\/span><\/span><\/span>\n      <\/div>\n      <div>\n        <button type=\"submit\" class=\"button button--gradient-red\n                button--with-icon\">\n                    <span>Wy\u015blij<\/span>\n                    <span class=\"icon-arrow-right\"><\/span>\n                <\/button>\n      <\/div>\n    <\/div>\n  <\/div>\n<\/div><div class=\"wpcf7-response-output\" aria-hidden=\"true\"><\/div>\n<\/form>\n<\/div>\n\t<div class=\"contact-form-footer__success flex bg-green-2\n\t\t\t\t\t\tborder-green-3 p-[16px] gap-[16px] rounded-[8px]\n\t\t\t\t\t\tmt-[30px]\">\n\t\t<svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"24\" height=\"24\"\n\t\t\tviewBox=\"0 0 24 24\" fill=\"none\">\n\t\t\t<path d=\"M12 2C17.51 2 22 6.49 22 12C22 17.51 17.51 22 12 22C6.49 22 2 17.51 2 12C2 6.49 6.49 2 12 2ZM12 0C5.37 0 0 5.37 0 12C0 18.63 5.37 24 12 24C18.63 24 24 18.63 24 12C24 5.37 18.63 0 12 0ZM18.25 8.89L16.83 7.48L10.73 13.7L7.65 10.76L6.25 12.2L10.75 16.52L18.25 8.89Z\"\n\t\t\t\t\tfill=\"#104121\"><\/path>\n\t\t<\/svg>\n\t\t<div class=\"body-md text-green-4\">\n\t\t\t<strong>Dzi\u0119kujemy za przes\u0142anie formularza!<\/strong> Odpowiemy w ci\u0105gu 24 godzin.\t\t<\/div>\n\t<\/div>\n<\/div>\n\n\t<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Wieloj\u0119zyczny chatbot AI dzia\u0142aj\u0105cy w ca\u0142o\u015bci na serwerze klienta. Zewn\u0119trzne API AI nie s\u0105 u\u017cywane, a dane nie opuszczaj\u0105 infrastruktury.<\/p>\n","protected":false},"featured_media":6295,"template":"","project_category":[139,140,142],"class_list":["post-6285","project","type-project","status-publish","has-post-thumbnail","hentry","project_category-web-development-pl","project_category-web-apps-pl","project_category-biznes-pl"],"acf":[],"_links":{"self":[{"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/project\/6285","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/project"}],"about":[{"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/types\/project"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/media\/6295"}],"wp:attachment":[{"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/media?parent=6285"}],"wp:term":[{"taxonomy":"project_category","embeddable":true,"href":"https:\/\/smultron.software\/pl\/wp-json\/wp\/v2\/project_category?post=6285"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}