Budowa chatbota CLI
9. Przejście do własnego projektu
Lokalne chatboty, agenci i systemy RAG z własną bazą wiedzy
Instrukcja krok po kroku · materiał uzupełniający
Budujemy chatbota w konsoli
Własna baza i odtwarzalne uruchomienie
Po sprawdzeniu przykładu DocAssist zmień temat bazy, zachowując ten sam sposób pracy: najpierw dane, następnie indeks, testy i odpowiedzi.
Zapisz mały zakres
Wybierz jeden temat, np. instrukcję korzystania z pracowni albo dokumentację niewielkiej aplikacji. Zacznij od kilku dokumentów. Zapisz odbiorcę, rodzaje pytań, źródła i granice wiedzy. Baza mieszająca wiele niespójnych tematów utrudnia ocenę.
- Utwórz nową kopię projektu. Zachowaj wyniki DocAssist jako ukończony przykład.
- Przygotuj dane przez
baza.py --folderalbo import z M2. Wykonaj ręczny przegląd tekstów i metadanych. - Zbuduj nowy indeks i sprawdź trzy pytania poleceniem
indeks.py search. - Przygotuj nowe oczekiwania w
testy.json, z właściwymi chunk_id. - Uruchom chatbota i pełny pomiar. Jeśli wynik jest słaby, wróć do tabeli diagnozy błędów.
Kiedy co powtórzyć
| Zmiana | Wymagane działanie |
|---|---|
| Tekst, metadane, podział lub zestaw dokumentów | Nowe fragmenty i nowy indeks, potem testy. |
| Model embeddingowy lub jego digest | Nowy indeks i testy wyszukiwania oraz odpowiedzi. |
| Model generujący, prompt, top-k, próg, limity | Ponowne uruchomienie programu i testów; bez ponownego liczenia embeddingów, jeśli reszta nie zmieniła się. |
| Samo formatowanie wyniku | Kontrola interfejsu i przypisania źródeł. |
Co zachować razem
- Kod i config.json.
- Baza fragmentów, dokumenty źródłowe i indeks.
- Zestaw pytań z oczekiwaniami.
- Wybrany przebieg, konfiguracja, ręczne oceny i krótki raport.
- Wersja Python, Ollama, tagi i digests modeli oraz instrukcja uruchomienia.
Modele nie są dołączone do ZIP. Na innym komputerze trzeba je pobrać; do zgodności embeddingów potrzebna jest ta sama wersja modelu. Jeśli digest jest inny, zbuduj indeks od nowa. Nie wyłączaj kontroli zgodności, aby ukryć komunikat. Środowisko .venv utwórz ponownie w nowej lokalizacji zamiast przenosić jego folder.
Punkt kontrolny
- Projekt daje się uruchomić po zamknięciu terminala i ponownym otwarciu.
- Wyniki własnej bazy są oddzielone od wyników DocAssist.
Instrukcja uczestnika · Python i Ollama · wydanie 29.09.2026