🎉 Wersja 2.1.0 dostępna! 🎤 Audio Notes AI 🤖 Enterprise działa na Windows, macOS i Linux oraz oferuje intuicyjne zarządzanie kluczami API. Wszystkie funkcjonalności działają na każdym systemie operacyjnym.
🌐 Przetestuj aplikację na żywo! - Działająca wersja demo na Streamlit Cloud
Zaawansowany system notatek głosowych z AI-powered wyszukiwaniem semantycznym. Nagrywaj, transkrybuj (Whisper), twórz wektory (embeddings) i wyszukuj notatki głosowe z pomocą sztucznej inteligencji. Funkcje: automatyczna kategoryzacja, tagowanie, eksport do TXT/PDF/DOCX, synchronizacja w chmurze. Nowoczesny, multiplatformowy interfejs (Windows, macOS, Linux). Rewolucja w organizacji wiedzy osobistej i biznesowej.
git clone https://github.com/AlanSteinbarth/Audio-Notes-AI.git
cd Audio-Notes-AI-
Zainstaluj zależności
pip install -r requirements.txt
-
Skonfiguruj zmienne środowiskowe
cp .env.example .env
Edytuj plik
.envi uzupełnij (klucz OpenAI jest opcjonalny):# Opcjonalnie - można też podać w sidebarze aplikacji OPENAI_API_KEY=sk-twój-klucz-openai # Wymagane QDRANT_URL=https://twoja-instancja-qdrant.com QDRANT_API_KEY=twój-klucz-qdrant
-
Uruchom aplikację
streamlit run app.py # lub python -m streamlit run app.py -
Podaj klucz OpenAI
- Jeśli nie masz klucza w
.env, wprowadź go w sidebarze aplikacji - Klucz jest automatycznie weryfikowany przed użyciem
- Jeśli nie masz klucza w
Wypróbuj wszystkie funkcjonalności aplikacji bez instalacji:
- 🎤 Nagrywanie i transkrypcja notatek głosowych
- 🔍 Semantyczne wyszukiwanie z AI
- 📤 Eksport do PDF, DOCX, TXT
- 🏷️ Automatyczne kategoryzowanie
Uwaga: Demo używa zewnętrznych API (OpenAI, Qdrant) - niektóre funkcje mogą wymagać konfiguracji kluczy.
Aby aplikacja działała poprawnie na każdym systemie operacyjnym, wymagane są dodatkowe narzędzia systemowe:
- ffmpeg (do obsługi audio)
- git (do pobierania repozytorium i ewentualnych aktualizacji)
brew install ffmpeg gitsudo apt update
sudo apt install ffmpeg gitchoco install ffmpeg gitJeśli nie masz Chocolatey, zobacz: https://chocolatey.org/install
Niektóre funkcje wymagają dodatkowych bibliotek Python:
- Nagrywanie audio w przeglądarce:
pip install streamlit-audiorecorder
- Eksport PDF:
pip install fpdf
Aplikacja działa również bez tych bibliotek, ale niektóre funkcje będą niedostępne.
Zalecamy korzystanie ze środowiska wirtualnego (venv lub conda):
python -m venv venv
source venv/bin/activate # macOS/Linux
venv\Scripts\activate # Windows
pip install -r requirements.txtconda create -n notatki python=3.11
conda activate notatki
pip install -r requirements.txtAplikacja została przetestowana na Windows, macOS i Linux. Wszystkie ścieżki plików oraz zależności są obsługiwane automatycznie. W przypadku brakujących zależności systemowych lub bibliotek Python, aplikacja wyświetli odpowiedni komunikat i instrukcję instalacji.
- Python 3.11+ - Język programowania
- Streamlit - Framework dla interfejsu webowego
- OpenAI API - Transkrypcja (Whisper) i embeddingi (text-embedding-3-large)
- Qdrant - Baza danych wektorowych
- Whisper - Transkrypcja audio na tekst
- text-embedding-3-large - Generowanie wektorów semantycznych
- GPT-3.5 - Automatyczne generowanie tytułów
- FPDF - Generowanie dokumentów PDF
- python-docx - Tworzenie plików DOCX
- Built-in - Eksport do formatu TXT
- Kliknij "Nagraj notatkę" w zakładce "Dodaj notatkę"
- Nagraj swoją notatkę głosową
- Kliknij "Transkrybuj audio"
- Sprawdź i edytuj transkrypcję w razie potrzeby
- Kliknij "Zapisz notatkę"
- Przejdź do zakładki "Wyszukaj notatkę"
- Wpisz zapytanie (może być ogólne, np. "spotkanie z klientem")
- System znajdzie semantycznie podobne notatki
- W zakładce "Lista notatek" zobaczysz wszystkie zapisane notatki
- Możesz edytować, usuwać lub eksportować każdą notatkę
- Dostępne formaty eksportu: TXT, PDF, DOCX
| Zmienna | Opis | Przykład |
|---|---|---|
OPENAI_API_KEY |
Klucz API OpenAI | sk-proj-... |
QDRANT_URL |
URL instancji Qdrant | https://xyz.qdrant.cloud:6333 |
QDRANT_API_KEY |
Klucz API Qdrant | abc123... |
- Transkrypcja:
whisper-1 - Embeddingi:
text-embedding-3-large(3072 wymiary) - Tytuły:
gpt-3.5-turbo
graph TB
subgraph "Frontend Layer"
A[Streamlit Web UI]
A1[Audio Recorder]
A2[File Upload]
A3[Search Interface]
A4[Export Options]
end
subgraph "Application Layer"
B[Audio Notes AI Core]
B1[Audio Processing]
B2[Text Processing]
B3[Search Engine]
B4[Export Engine]
end
subgraph "AI Services Layer"
C[OpenAI API]
C1[Whisper STT]
C2[Text Embeddings]
C3[GPT Title Generation]
end
subgraph "Data Layer"
D[Qdrant Vector DB]
D1[Vector Storage]
D2[Metadata Storage]
D3[Similarity Search]
end
subgraph "Storage Layer"
E[Local File System]
E1[Audio Files]
E2[Export Files]
E3[Configuration]
end
A --> B
A1 --> B1
A2 --> B1
A3 --> B3
A4 --> B4
B1 --> C1
B2 --> C2
B2 --> C3
B3 --> D3
C --> D
B --> E
style A fill:#e1f5fe
style B fill:#f3e5f5
style C fill:#fff3e0
style D fill:#e8f5e8
style E fill:#fce4ec
- Nagrywanie → Audio → Streamlit UI
- Transkrypcja → Audio → OpenAI Whisper → Tekst
- Embedding → Tekst → OpenAI Embeddings → Wektor
- Zapis → Wektor + Metadata → Qdrant DB
- Wyszukiwanie → Query → Embedding → Similarity Search → Wyniki
- Eksport → Dane → Generator → PDF/DOCX/TXT
Projekt zawiera zestaw narzędzi diagnostycznych dla deweloperów i administratorów:
python quick_start.py- Sprawdza konfigurację środowiska
- Testuje połączenia API
- Uruchamia aplikację z przewodnikiem
python diagnose_app.py- Analiza struktury projektu
- Weryfikacja importów i zależności
- Test połączeń zewnętrznych
- Sprawdzenie konfiguracji
python test_app_simple.py- Testy importów modułów
- Weryfikacja funkcji kluczowych
- Kontrola błędów składni
Chcesz przyczynić się do rozwoju projektu? Świetnie! Zobacz CONTRIBUTING.md dla szczegółów.
Jeśli znalazłeś błąd, utwórz issue z:
- Opisem problemu
- Krokami do reprodukcji
- Informacjami o systemie
Masz pomysł na nową funkcję? Otwórz dyskusję!
- Obsługa wielu języków transkrypcji
- Kategorie i tagi notatek
- API REST dla integracji
- Aplikacja mobilna
- Backup i synchronizacja
Szczegółowy przewodnik rozwiązywania problemów znajduje się w pliku TROUBLESHOOTING.md.
# Błąd: No such component directory
pip uninstall streamlit-audiorecorder
pip install streamlit-audiorecorder --no-cache-dir --force-reinstallAplikacja automatycznie wykrywa dostępność bibliotek i:
- ✅ Pokazuje nagrywanie jeśli audiorecorder działa
- ✅ Pokazuje tylko upload plików jeśli audiorecorder nie działa
- ✅ Wszystkie funkcje działają niezależnie od nagrywania
Zobacz CHANGELOG.md dla pełnej historii zmian.
- ✅ Pełna przenośność - Natywne wsparcie Windows, macOS, Linux
- ✅ Inteligentne API Key - Klucz OpenAI w sidebarze lub .env
- ✅ Automatyczna detekcja systemu - Wykrywa brakujące zależności
- ✅ Stabilny interfejs - Naprawiono czarny ekran przy starcie
- ✅ Odporne importy - Elegancka obsługa opcjonalnych bibliotek
- Pierwsza stabilna wersja Enterprise
- Pełna funkcjonalność produkcyjna
Ten projekt jest licencjonowany na licencji MIT - zobacz plik LICENSE dla szczegółów.
Alan Steinbarth
- Email: alan.steinbarth@gmail.com
- GitHub: @AlanSteinbarth
- OpenAI za API Whisper i GPT
- Qdrant za bazę danych wektorowych
- Streamlit za framework UI
- Społeczność open source za inspirację
Poniżej przykładowe ekrany aplikacji (folder Screenshots/):
- Transkrypcja audio: ~2-3x szybciej niż czas nagrania (dla plików do 10MB)
- Wyszukiwanie semantyczne: <200ms dla bazy do 10,000 notatek
- Generowanie embeddingów: ~1-2s dla tekstu do 1000 słów
- Eksport dokumentów: <1s dla notatek do 5000 słów
- Maksymalny rozmiar pliku audio: 25MB (ograniczenie OpenAI)
- Obsługiwane formaty audio: MP3, WAV, FLAC, M4A, MP4
- Maksymalna długość nagrania: 10 minut (rekomendowane)
- Jednoczesne użytkownicy: Zależy od konfiguracji Qdrant i OpenAI API
- RAM: ~200-500MB (zależnie od rozmiaru bazy notatek)
- Dysk: ~50MB aplikacja + dane użytkownika
- CPU: Niskie zużycie (głównie I/O operacje)
- Sieć: Zależy od częstotliwości używania API
# Pobierz kod
git clone https://github.com/AlanSteinbarth/Audio-Notes-AI.git
cd Audio-Notes-AI
# Skopiuj i edytuj zmienne środowiskowe
cp .env.example .env
# Edytuj .env z kluczami API
# Uruchom z Docker Compose
docker-compose up -d
# Aplikacja dostępna na http://localhost:8501# Zbuduj obraz
docker build -t audio-notes-ai:latest .
# Uruchom kontener
docker run -p 8501:8501 \
-e OPENAI_API_KEY=your_key \
-e QDRANT_URL=your_qdrant_url \
-e QDRANT_API_KEY=your_qdrant_key \
audio-notes-ai:latest- audio-notes-ai: Główna aplikacja
- qdrant: Baza danych wektorowych
- redis: Cache (opcjonalny)
# Nadaj uprawnienia
chmod +x setup.sh
# Uruchom setup
./setup.shSkrypt automatycznie:
- ✅ Sprawdza Python i zależności systemowe
- ✅ Tworzy środowisko wirtualne
- ✅ Instaluje biblioteki Python
- ✅ Konfiguruje plik .env
- ✅ Tworzy niezbędne foldery
- ✅ Uruchamia podstawowe testy
- ✅ Opcjonalnie konfiguruje Docker
# Uruchom PowerShell jako Administrator
.\setup.ps1Szczegółowa dokumentacja API znajduje się w pliku API.md.
- 🎤 Audio Management: Upload, transcribe, manage audio files
- 📝 Notes CRUD: Create, read, update, delete notes
- 🔍 Semantic Search: Advanced search with similarity scoring
- 📤 Export: PDF, DOCX, TXT export endpoints
- 🔐 Authentication: API keys, JWT tokens, OAuth 2.0
Aplikacja jest dostępna na żywo pod adresem: https://audio-notes-ai.streamlit.app/
Szczegółowe instrukcje deployment w DEPLOYMENT.md.
Kroki deployment:
- Fork/clone repozytorium na GitHub
- Idź na share.streamlit.io
- Połącz repozytorium
- W "Advanced settings" → "Secrets" dodaj:
QDRANT_URL = "https://your-qdrant-instance.com" QDRANT_API_KEY = "your-qdrant-api-key" OPENAI_API_KEY = "sk-your-openai-key" # opcjonalne
- Railway: Ustaw env variables w dashboard
- Render: Dodaj env vars w service settings
- Heroku: Użyj
heroku config:set - Docker: Zobacz
docker-compose.yml
⭐ Podobał Ci się projekt? Zostaw gwiazdkę! ⭐






