NotebookLlama ist ein vollständig quelloffenes Tool, das auf der LlamaCloud-Technologie basiert und Benutzern bei der Verwaltung von Dokumenten und der Erstellung von podcast-ähnlichen Audioinhalten helfen soll. Es ist eine Alternative zu Google NotebookLM für Forscher, Studenten und Geschäftsanwender. Benutzer können Dokumente hochladen, Wissensdatenbanken erstellen und Schlüsselinformationen durch intelligente Analysen extrahieren. NotebookLlama unterstützt auch die Konvertierung von Dokumenteninhalten in natürlich klingende Audiodateien, was den Benutzern den Zugriff auf Informationen in mobilen Szenarien erleichtert. Das Projekt wird auf GitHub gehostet, mit transparentem Code, starker Unterstützung durch die Community und einem klaren Installationsprozess, so dass es für Technikbegeisterte und Profis geeignet ist.
Funktionsliste
- Upload und Verwaltung von DokumentenUnterstützung für das Hochladen von Dokumenten in verschiedenen Formaten (z. B. PDF) zum Aufbau einer individuellen oder Team-Wissensdatenbank.
- Wissen extrahieren und zusammenfassenLlamaCloud: Analysiert automatisch Dokumente, extrahiert Kerninhalte und erstellt Zusammenfassungen durch die LlamaCloud-Technologie.
- Audio-ErzeugungKonvertierung von Dokumenteninhalten in podcastähnliche Audiodateien mit Unterstützung für natürliche Sprachausgabe.
- Open Source und anpassbarDer Code ist vollständig quelloffen, Benutzer können die Funktion je nach Bedarf ändern oder erweitern.
- Unterstützung mehrerer PlattformenLäuft über Docker und Streamlit und unterstützt lokale oder Cloud-Bereitstellungen.
- Intelligente SucheIntelligente Suche auf der Grundlage des Dokumentinhalts zum schnellen Auffinden von Informationen.
Hilfe verwenden
Einbauverfahren
Um NotebookLlama zu benutzen, müssen die Benutzer zunächst die Installation und Konfiguration abschließen. Nachfolgend finden Sie die detaillierten Installationsschritte:
- Klonen der Codebasis
Führen Sie den folgenden Befehl im Terminal aus, um das NotebookLlama-Projekt lokal zu klonen:git clone https://github.com/run-llama/notebookllama
Rufen Sie den Projektkatalog auf:
cd notebookllama/
- Installation von Abhängigkeiten
ausnutzenuv
Tool installiert die erforderlichen Abhängigkeitspakete:uv sync
Stellen Sie sicher, dass Sie über Python und die
uv
. Wenn Sie es nicht haben, installieren Sie zuerst Python 3.8 oder höher und übergeben Sie diepip install uv
Montageuv
. - API-Schlüssel konfigurieren
Für das Projekt werden drei API-Schlüssel benötigt: OpenAI, ElevenLabs und LlamaCloud.Die Schritte sind wie folgt:- Öffnen Sie das Projektverzeichnis im
.env.example
Dokumentation. - Abrufen des API-Schlüssels:
OPENAI_API_KEY
Melden Sie sich bei der OpenAI-Plattform an und gehen Sie zu den Kontoeinstellungen, um einen Schlüssel zu generieren.ELEVENLABS_API_KEY
Auf der Seite Einstellungen auf der ElevenLabs-Website.LLAMACLOUD_API_KEY
Besuchen Sie das LlamaCloud-Dashboard, um den Schlüssel zu erhalten.
- Geben Sie den Schlüssel in das Feld
.env.example
und benennen Sie die Datei dann um:mv .env.example .env
- Öffnen Sie das Projektverzeichnis im
- Führen Sie das Initialisierungsskript aus
Führen Sie die folgenden Befehle aus, um den LlamaCloud-Indizierungs- und Extraktionsagenten zu erstellen:uv run tools/create_llama_extract_agent.py uv run tools/create_llama_cloud_index.py
- Neue Dienste
Starten Sie die Postgres- und Jaeger-Dienste mit Docker:docker compose up -d
Starten Sie den MCP-Server:
uv run src/notebookllama/server.py
- Ausführen der Streamlit-Anwendung
Startet die Streamlit-Front-End-Schnittstelle:streamlit run src/notebookllama/Home.py
Montage
ffmpeg
(falls nicht bereits installiert), um die Audiofunktionalität zu unterstützen:- Unter Ubuntu:
sudo apt-get install ffmpeg
- auf macOS:
brew install ffmpeg
- Unter Ubuntu:
- Zugang zu Anwendungen
Öffnen Sie Ihren Browser und besuchen Siehttp://localhost:8751/
Sie können NotebookLlama jetzt benutzen.
Hauptfunktionen
Hochladen von Dokumenten und Erstellung einer Wissensdatenbank
- Verfahren::
- Melden Sie sich bei der Streamlit-Oberfläche an und klicken Sie auf die Schaltfläche "Dokument hochladen".
- Wählen Sie PDF oder ein anderes unterstütztes Dokumentformat zum Hochladen in das System.
- Das System analysiert automatisch den Inhalt des Dokuments und nimmt ihn in die Wissensdatenbank auf.
- Funktionelle Merkmale::
- Unterstützt das Hochladen von Stapeln, geeignet für die Verarbeitung großer Mengen an Forschungsmaterial.
- Der Inhalt der Dokumente wird für die spätere Suche und Analyse automatisch indexiert.
Wissen extrahieren und zusammenfassen
- Verfahren::
- Wählen Sie das hochgeladene Dokument in der Schnittstelle aus.
- Klicken Sie auf die Schaltfläche "Informationen extrahieren" oder "Zusammenfassung generieren".
- Das System analysiert das Dokument und gibt die wichtigsten Punkte, Zusammenfassungen oder Fragen und Antworten aus.
- Funktionelle Merkmale::
- Intelligente Analyse auf der Grundlage von LlamaCloud für eine genaue und präzise Extraktion.
- Unterstützt den benutzerdefinierten Extraktionsumfang, z. B. die Extraktion nur eines bestimmten Kapitels.
Audio-Erzeugung
- Verfahren::
- Wählen Sie das Dokument oder den zusammenfassenden Inhalt aus, für das bzw. den Sie Audio generieren möchten.
- Klicken Sie auf die Schaltfläche "Podcast generieren", das System ruft ElevenLabs API auf, um Text in Sprache umzuwandeln.
- Laden Sie die erzeugte Audiodatei herunter oder spielen Sie sie direkt online ab.
- Funktionelle Merkmale::
- Der Ton ist natürlich und weich und kommt dem menschlichen Podcast-Effekt sehr nahe.
- Unterstützt mehrsprachige Sprachausgabe, geeignet für Internationalisierungsanforderungen.
Intelligente Suche
- Verfahren::
- Geben Sie ein Stichwort oder eine Frage in die Schnittstelle ein.
- Das System gibt relevante Dokumentfragmente oder Antworten zurück.
- Funktionelle Merkmale::
- Die Suchergebnisse basieren auf dem Inhalt der Dokumente und sind äußerst präzise.
- Unterstützung für komplexe Abfragen wie "fassen Sie das Thema eines Dokuments zusammen".
caveat
- Vergewissern Sie sich, dass das Netzwerk stabil ist und dass die API-Aufrufe eine Internetverbindung erfordern.
- Wenn die Audioerzeugung fehlschlägt, überprüfen Sie die
ffmpeg
Ist es richtig installiert. - Regelmäßige Aktualisierung der Codebasis mit den neuesten Funktionen:
git pull origin main
.
Anwendungsszenario
- akademische Forschung
Forscher können akademische Arbeiten hochladen, um schnell Schlüsselinformationen zu extrahieren oder Zusammenfassungen zu erstellen. Die Audiofunktion eignet sich zum Anhören des Inhalts der Arbeit während des Pendelns, um die Effizienz zu steigern. - Unternehmensanalyse
Geschäftsanwender laden Marktberichte oder interne Dokumente hoch, um eine Wissensdatenbank aufzubauen. Intelligente Such- und Zusammenfassungsfunktionen helfen beim schnellen Auffinden von Schlüsseldaten für die Entscheidungsfindung. - Pädagogisches Lernen
Die Schüler können Lehrbücher oder Handouts hochladen, um Zusammenfassungen oder Audiodateien zur einfachen Wiederholung zu erstellen. Die Audiofunktion ist besonders für auditive Lernende geeignet. - Erstellung von Inhalten
Podcast-Ersteller können Artikel oder Notizen in Audio konvertieren, um schnell Podcast-Inhalte zu erstellen und Aufnahmezeit zu sparen.
QA
- Welche Dokumentformate werden von NotebookLlama unterstützt?
Derzeit werden PDF, TXT und andere gängige Formate unterstützt, in Zukunft können weitere Formate hinzukommen. - Muss ich für die Nutzung der API bezahlen?
Ja, die APIs für OpenAI, ElevenLabs und LlamaCloud erfordern ihre jeweiligen kostenpflichtigen Konten. Die Benutzer müssen sich selbst registrieren und den Schlüssel erhalten. - Erfordert die lokale Bereitstellung leistungsstarke Hardware?
Ein typischer Heimcomputer (8 GB RAM, 4-Kern-CPU) ist in der Lage, es auszuführen, und eine Docker-Bereitstellung erfordert etwa 10 GB Speicherplatz. - Wie gut erzeugt das Audio Sprache?
Die Stimme, die von ElevenLabs bereitgestellt wird, ist fast auf dem Niveau eines menschlichen Sprechers und unterstützt mehrere Sprachen und Töne.