Jak stworzyłem własnego ChatGPT z pamięcią - analiza kodu i możliwości biznesowych
17 cze
Jak stworzyłem własnego ChatGPT z pamięcią – analiza kodu i możliwości biznesowych
Problem z większością chatbotów – dlaczego postanowiłem to zmienić
Pracując z różnymi narzędziami AI, zauważyłem frustrujący problem: większość chatbotów traktuje każde pytanie jako zupełnie nową konwersację. Pytasz o "ten projekt z poprzedniego tygodnia", a bot odpowiada: "O którym projekcie mówisz?".
Współczesne narzędzia, takie jak ChatGPT, radzą sobie z tym coraz lepiej, ale co jeśli chcesz zintegrować podobną funkcjonalność z własną aplikacją? Postanowiłem sprawdzić, jak trudno jest stworzyć narzędzie AI, które będzie pamiętać kontekst rozmowy.
Efekt? Działający chatbot z pamięcią... w zaledwie 50 linijkach kodu.
Architektura rozwiązania – prostota, która działa
Analizując najpopularniejsze rozwiązania AI, zauważyłem wspólny wzorzec: frontend + backend API + zarządzanie stanem. Zbudowałem więc własny system, bazując na tej logice, ale maksymalnie upraszczając całą architekturę.
Wybór technologii:
python
Kopiuj
Edytuj
import streamlit as st
from openai import OpenAI
from dotenv import dotenv_values
env = dotenv_values(".env")
openai_client = OpenAI(api_key=env["OPENAI_API_KEY"])
st.title("NaszGPT z pamięcią")
- Streamlit – prostota i szybkość prototypowania. W data science liczy się szybkie testowanie konceptów, nie perfekcyjny UI.
- OpenAI API – dostęp do zaawansowanego silnika językowego. W odróżnieniu od prostych chatbotów, tutaj potrzebna była prawdziwa „inteligencja”.
- Python dotenv – bezpieczeństwo danych: klucze API nigdy nie powinny być zapisane na sztywno w kodzie.
Kluczowa innowacja – system pamięci konwersacji
Sercem rozwiązania jest funkcja zarządzająca pamięcią rozmowy:
python
Kopiuj
Edytuj
def get_chatbot_reply(user_prompt, memory):
messages = [
{
"role": "system",
"content": """
Jesteś pomocnikiem, który odpowiada na wszystkie
pytania użytkownika.
Odpowiadaj na pytania w sposób zwięzły i zrozumiały.
"""
},
]
for message in memory:
messages.append({
"role": message["role"],
"content": message["content"]
})
messages.append({
"role": "user",
"content": user_prompt
})
response = openai_client.chat.completions.create(
model="gpt-4o",
messages=messages
)
return {
"role": "assistant",
"content": response.choices[0].message.content,
}
Kluczowy insight: OpenAI API nie ma wbudowanej pamięci – każdorazowo trzeba przesyłać pełną historię rozmowy, jeśli zależy nam na kontekście.
Dlaczego to działa lepiej?
Tradycyjny chatbot:
– "Jakie mamy plany marketingowe?"
– "Możesz doprecyzować?"
– "Te, o których rozmawialiśmy wcześniej."
– "Nie pamiętam."
Mój chatbot z pamięcią:
– "Jakie mamy plany marketingowe?"
– "Bazując na naszej wcześniejszej rozmowie..."
– "A co z budżetem?"
– "Wspomniałeś o 50 tys., przeanalizujmy to."
Zarządzanie stanem – pamięć, która przetrwa
python
Kopiuj
Edytuj
if "messages" not in st.session_state:
st.session_state["messages"] = []
for message in st.session_state["messages"]:
with st.chat_message(message["role"]):
st.markdown(message["content"])
prompt = st.chat_input("O co chcesz spytać?")
if prompt:
with st.chat_message("user"):
st.markdown(prompt)
st.session_state["messages"].append({
"role": "user",
"content": prompt
})
with st.chat_message("assistant"):
chatbot_message = get_chatbot_reply(
prompt,
memory=st.session_state["messages"][-10:]
)
st.markdown(chatbot_message["content"])
st.session_state["messages"].append(chatbot_message)
Dzięki session state, Streamlit przechowuje dane między interakcjami. W przeciwieństwie do większości chatbotów, moje rozwiązanie pamięta pełną sesję.
Optymalizacja pamięci – dlaczego akurat 10 wiadomości?
python Kopiuj Edytuj memory = st.session_state["messages"][-10:]
Problem: Przesyłanie całej historii rozmowy może przekraczać limity tokenów i podnosić koszty.
Rozwiązanie: Przechowujemy tylko ostatnie 10 wiadomości – to wystarczy, by zachować kontekst i jednocześnie kontrolować zużycie zasobów.
Praktyczne zastosowania w biznesie
- Customer Support z kontekstem:
- „Widzę, że kontaktowałeś się w sprawie faktury 12345. Czy problem został rozwiązany?”
- Asystent sprzedaży:
- „Pamiętam, że interesowałeś się pakietem Enterprise. Czy chciałbyś umówić demo?”
- Chatbot HR:
- „Ostatnio pytałeś o urlop w marcu. Sprawdźmy status Twojego wniosku.”
- Edukacyjny tutor:
- „Uczyliśmy się ostatnio funkcji w Pythonie. Dziś przejdziemy do klas – pamiętasz zmienne?”
Czego nauczyłem się, budując to narzędzie?
- Zacznij prosto, iteruj szybko.
- Prototyp 1: 20 linijek – bez pamięci
- Prototyp 2: dodany session state
- Prototyp 3: lepszy UI
- Prototyp 4: optymalizacja kontekstu
- Doświadczenie użytkownika ma znaczenie.
- – Responsywność i przejrzystość ważniejsze niż czysta wydajność.
- Optymalizacja kontekstu to klucz.
- – Testowałem różne długości historii (5, 10, 20 wiadomości) – 10 to „sweet spot”.
- System prompt engineering robi różnicę.
- – Zmiana promptu wpływa na jakość odpowiedzi.
- Standard: „Odpowiadaj na pytania”
- Ulepszony: „Bądź pomocny, zwięzły i zrozumiały”
- Biznesowy: „Dawaj praktyczne, eksperckie porady”
Analiza kosztów – realne liczby
- Średni koszt wiadomości: ~0,01 USD
- Użytkowanie miesięczne:
- Lekki użytkownik (50 wiadomości): ~0,50 USD
- Średni (200): ~2,00 USD
- Intensywny (500): ~5,00 USD
Wniosek: Rozwiązanie opłacalne nawet dla małych firm.
Pierwsze opinie użytkowników
- Freelancer graficzny: „W końcu chatbot, który pamięta moje preferencje!”
- Właściciel firmy: „Idealne do obsługi klienta – koniec z tłumaczeniem od nowa.”
- Manager HR: „Gdyby zintegrować to z systemem kadrowym – ogromna oszczędność czasu.”
Wspólny mianownik: każdy dostrzegł realną wartość płynącą z funkcji pamięci.
Porównanie z istniejącymi rozwiązaniami
- ChatGPT (web):
- Plusy: gotowe, silnik GPT-4o, łatwość użycia
- Minusy: brak integracji z aplikacją, brak pełnej kontroli
- No-code tools (Bubble, Zapier):
- Plusy: szybki start
- Minusy: ograniczona elastyczność, vendor lock-in, wysokie koszty
- Moje rozwiązanie:
- Pełna kontrola, elastyczność, niskie koszty
- Wymaga odrobiny znajomości kodu – ale to inwestycja, nie przeszkoda
Co dalej? Plan rozwoju
W krótkim terminie (1–2 miesiące):
- Lepsze zarządzanie pamięcią
- Lepszy UX (wskaźniki pisania, znaczniki czasu)
- Design mobilny
Średni termin (3–6 miesięcy):
- Integracja z CRM (HubSpot, Pipedrive)
- Możliwość przesyłania dokumentów i ich analizy
- Własna baza wiedzy
Długi termin (6+ miesięcy):
- Obsługa wielu użytkowników
- Dashboard analityczny
- Wersje branżowe (np. dla HR, sprzedaży, IT)
Dlaczego to ma znaczenie dla przyszłości AI?
Ten prosty chatbot pokazuje istotny trend: przechodzimy od narzędzi bez kontekstu do asystentów świadomych rozmowy.
Implikacje:
- Personalizacja na skalę masową
- Niższa bariera wejścia (50 linijek zamiast miesięcy developmentu)
- Kluczowa rola integracji – samodzielne aplikacje AI powoli tracą znaczenie
Co dalej?
Masz firmę i zastanawiasz się, jak wdrożyć to u siebie? Następny tekst będzie właśnie o tym – pokażę konkretne case study, analizę ROI oraz gotowy plan działania. A jeśli nie chcesz czekać, po prostu odezwij się już teraz. Pierwsza konsultacja jest bezpłatna – porozmawiamy o Twoich wyzwaniach, sprawdzimy potencjał automatyzacji i wspólnie ocenimy, co można usprawnić. Działam praktycznie, konkretnie i z nastawieniem na rezultat – jeśli szukasz partnera do wdrożenia AI w Twoim biznesie, jesteś w dobrym miejscu.
Zwiększ wydajność swojej firmy ze mną!
Odkryj oparte na doświadczeniu, innowacyjne rozwiązania. Zoptymalizuj swój biznes wdrażając agenta AI - nie czekaj...
Przeglądaj inne artykuły
16 lis
Kurs Data Science skończony - to dopiero początek. Dlaczego AI wymaga wiecznej nauki?
Październik 2025 - ukończyłem intensywny kurs Data Science i powinienem świętować sukces. Zamiast tego patrzę na listę zadań z Masterclass, kurs agentów AI do dokończenia i dziesiątki nowych narzędzi które pojawiły się w ostatnim miesiącu. Wtedy dotarło do mnie: w świecie sztucznej inteligencji nie ma linii mety. Nowe modele na rynku, Sora 2, AutoML - co chwila coś nowego. Oto brutalna prawda o pracy w AI: nauka nigdy się nie kończy. I dlaczego to wcale nie jest zła wiadomość.
12 lis
ChatGPT for work rośnie 40% w 2 miesiące: Jak 1 milion firm wykorzystuje AI w biznesie w 2025 roku.
W pierwszym tygodniu lostopada 2025 OpenAI ogłosiło przełomowy milestone: 1 milion firm na świecie płaci za ich usługi, czyniąc to najszybciej rosnącą platformą biznesową w historii. ChatGPT for Work rośnie 40% w zaledwie 2 miesiące, a 75% przedsiębiorstw raportuje pozytywny ROI. Cisco redukuje czas code review o 50%, Indeed zwiększa aplikacje o 20%. Sprawdź konkretne case studies, liczby i co ten eksplozywny wzrost oznacza dla polskich firm w erze AI 2025-2026.
8 lis
Jak wygląda analiza danych przed wdrożeniem agenta AI – od pomysłu do prototypu
Zanim w firmie pojawi się pierwszy agent AI, potrzebujesz solidnych fundamentów – a tym fundamentem są dane. Nie byle jakie, lecz odpowiednio przygotowane. To od jakości danych zależy sukces Twojej automatyzacji. Bez nich inwestycja w AI może stać się jedynie kosztownym eksperymentem bez wymiernych efektów. Poznaj krok po kroku, jak przejść od pomysłu do działającego prototypu – i przygotuj dane, które zapewnią realną wartość Twojemu agentowi AI.
2 lis
AI bez danych nie działa – od czego naprawdę zacząć w firmie?
AI może przyspieszyć rozwój firmy, ale tylko wtedy, gdy dane są kompletne, aktualne i powiązane z celami biznesowymi. Zanim zainwestujesz w automatyzację, warto wiedzieć, co należy ocenić, by technologia mogła działać skutecznie i bezpiecznie.