Login

Ein privates, lokales GPT-Chat-Tool, das Dokumenten-Q&A, Bild- und Videoverarbeitung und viele andere Funktionen unterstützt, 100% private Bereitstellung.

Apache-2.0Python 11.9kh2oaih2ogpt Last Updated: 2025-05-25

Detaillierte Beschreibung des h2oGPT-Projekts

Projektübersicht

h2oGPT ist ein Open-Source-Projekt, das von H2O.ai entwickelt wurde, mit dem Ziel, ein vollständig privates, lokales GPT-Chat-Erlebnis zu bieten, das verschiedene Funktionen wie Dokumenten-Q&A, Bild- und Videoverarbeitung unterstützt. Das Projekt basiert auf der Apache V2-Lizenz, was eine 100% private Bereitstellung und Nutzung für Benutzer gewährleistet.

Projekt-URL: https://github.com/h2oai/h2ogpt

Demo-URL: https://gpt.h2o.ai/

Kernfunktionen

1. Dokumentenverarbeitung

h2oGPT unterstützt private Offline-Datenbanken für verschiedene Dokumententypen, darunter PDF, Excel, Word, Bilder, Videoframes, YouTube, Audio, Code, Text, Markdown und mehr. Hauptmerkmale sind:

  • Persistente Datenbank: Verwendet Chroma, Weaviate oder In-Memory FAISS zur Dokumentenspeicherung.
  • Präzise Embeddings: Unterstützt Embedding-Modelle wie instructor-large, all-MiniLM-L6-v2.
  • Effiziente Kontextnutzung: Verwendet instruktionsoptimierte LLMs, ohne die Few-Shot-Methode von LangChain.
  • Parallele Verarbeitung: Parallele Zusammenfassung und Extraktion, 13B LLaMa2-Modell erreicht eine Ausgabegeschwindigkeit von 80 Token pro Sekunde.
  • HYDE-Technologie: Hypothetische Dokumenten-Embeddings basierend auf LLM-Antworten zur Verbesserung der Retrieval-Fähigkeit.
  • Semantisches Chunking: Bessere Dokumentensegmentierung (erfordert GPU-Unterstützung).

2. Modellunterstützung

h2oGPT unterstützt verschiedene Modelle, darunter LLaMa2, Mistral, Falcon, Vicuna, WizardLM und andere, sowie Technologien wie AutoGPTQ, 4-Bit-/8-Bit-Quantisierung, LORA usw.:

  • GPU-Unterstützung: Von HuggingFace und LLaMa.cpp GGML-Modellen.
  • CPU-Unterstützung: Verwendet HF-, LLaMa.cpp- und GPT4ALL-Modelle.
  • Aufmerksamkeitsmechanismen: Unterstützt Generierung beliebiger Länge (LLaMa-2, Mistral, MPT, Pythia, Falcon usw.).

3. Benutzeroberfläche

  • Gradio-Benutzeroberfläche: Bietet eine intuitive Weboberfläche mit Unterstützung für Streaming-Ausgabe.
  • CLI: Kommandozeilenschnittstelle, die Streaming für alle Modelle unterstützt.
  • Dokumenten-Upload und -Anzeige: Hochladen und Anzeigen von Dokumenten über die Benutzeroberfläche (unterstützt mehrere kollaborative oder persönliche Sammlungen).

4. Multimodale Fähigkeiten

Visuelle Modelle

Unterstützt visuelle Modelle wie LLaVa, Claude-3, Gemini-Pro-Vision, GPT-4-Vision.

Bilderzeugung

Unterstützt Bilderzeugungsmodelle wie Stable Diffusion (sdxl-turbo, sdxl, SD3), PlaygroundAI (playv2) und Flux.

Sprachverarbeitung

  • STT (Sprache-zu-Text): Verwendet Whisper für Streaming-Audio-Transkription.
  • TTS (Text-zu-Sprache):
    • MIT-lizenzierte Microsoft Speech T5, unterstützt mehrere Stimmen und Streaming-Audio-Konvertierung.
    • MPL2-lizenzierte TTS, einschließlich Stimmklonung und Streaming-Audio-Konvertierung.
  • Sprachsteuerung für KI-Assistenten: Unterstützt freihändige Steuerung des h2oGPT-Chat-Modus.

5. Enterprise-Funktionen

Authentifizierung und Zustandsverwaltung

  • UI-Authentifizierung: Authentifizierung über Benutzername/Passwort oder Google OAuth.
  • Zustandsspeicherung: Zustandserhaltung in der Benutzeroberfläche über Benutzername/Passwort.
  • Open Web UI-Integration: Verwendet h2oGPT als Backend über einen OpenAI-Proxy.

APIs und Integrationen

  • OpenAI-kompatible API: h2oGPT kann als Ersatz für OpenAI-Server verwendet werden.
  • Inferenzserver-Unterstützung: Unterstützt oLLaMa, HF TGI-Server, vLLM, Gradio, ExLLaMa, Replicate, Together.ai, OpenAI, Azure OpenAI, Anthropic, MistralAI, Google und Groq.

Server-Proxy-API-Funktionen

  • Chat und Textvervollständigung (Streaming und Nicht-Streaming)
  • Audio-Transkription (STT)
  • Audio-Generierung (TTS)
  • Bilderzeugung
  • Embeddings
  • Funktions-Tool-Aufruf und automatische Tool-Auswahl
  • AutoGen Code-Ausführungsagenten

6. Erweiterte Funktionen

JSON-Modus und strukturierte Ausgabe

  • Strenge Modussteuerung: Strenge Schema-Kontrolle mit outlines über vLLM.
  • Multiplattform-Unterstützung: Strenge Modussteuerung für OpenAI-, Anthropic-, Google Gemini-, MistralAI-Modelle.
  • JSON-Modus: Bietet JSON-Modus für einige ältere OpenAI- oder Gemini-Modelle.

Websuche und Agenten

  • Websuche-Integration: Websuche integriert in Chat und Dokumenten-Q&A.
  • Intelligente Agenten: Unterstützt Agenten für Suche, Dokumenten-Q&A, Python-Code, CSV-Frameworks usw.
  • Hochwertige Agenten: Bietet hochwertige Agenten über einen OpenAI-Proxy-Server auf einem unabhängigen Port.
  • Code-First-Agenten: Generieren von Diagrammen, Forschung, Bewertung von Bildern über visuelle Modelle usw.

Leistungsbewertung

  • Belohnungsmodelle: Verwendet Belohnungsmodelle zur Leistungsbewertung.
  • Qualitätssicherung: Aufrechterhaltung der Qualität durch über 1000 Unit-Tests und Integrationstests (über 24 GPU-Stunden).

Installation und Bereitstellung

Empfohlene Bereitstellungsmethode

Es wird empfohlen, Docker für die vollständige Funktionsbereitstellung unter Linux, Windows und macOS zu verwenden. Plattformunterstützung:

  • Docker: Linux, Windows, macOS (vollständige Funktionalität)
  • Linux-Skripte: Vollständige Funktionalität
  • Windows- und macOS-Skripte: Relativ eingeschränkte Funktionalität

Unterstützte Installationsmethoden

  1. Docker-Build und -Ausführung: Für Linux, Windows, macOS.
  2. Linux-Installation und -Ausführung: Native Linux-Unterstützung.
  3. Windows 10/11 Installationsskript: Windows-Plattform-Unterstützung.
  4. macOS-Installation und -Ausführung: macOS-Plattform-Unterstützung.
  5. Schnellstart: Für jede Plattform.

Technische Spezifikationen

Hardware-Anforderungen

  • GPU-Unterstützung: CUDA, AutoGPTQ, exllama.
  • CPU-Unterstützung: Unterstützt reinen CPU-Betrieb.
  • Speicheroptimierung: Bietet einen Modus für geringen Speicherverbrauch.

Offline-Installation

  • Unterstützt vollständige Offline-Installation.
  • Offline-Dokumentenverarbeitungsfähigkeiten.
  • Lokale Modellbereitstellung.

Entwicklung und Erweiterung

Entwicklungsumgebung

  • Erstellen Sie eine Entwicklungs-Umgebung für Training und Generierung gemäß den Installationsanweisungen.
  • Unterstützt das Fine-Tuning jedes LLM-Modells auf benutzerdefinierten Daten.
  • Bietet eine vollständige Testsuite.

Tests

pip install requirements-parser pytest-instafail pytest-random-order playsound==1.3.0
conda install -c conda-forge gst-python -y
sudo apt-get install gstreamer-1.0
pip install pygame
GPT_H2O_AI=0 CONCURRENCY_COUNT=1 pytest --instafail -s -v tests

# Für OpenAI-Servertests auf einem bereits laufenden lokalen Server
pytest -s -v -n 4 openai_server/test_openai_server.py::test_openai_client

Client-APIs

  • Gradio-Client-API
  • OpenAI-kompatible Client-API
  • Python-Client-Bibliothek

Technische Architektur

Kerntechnologien

  • Basismodelle: LLaMa2, Mistral, Falcon usw.
  • Embedding-Technologien: instructor-large, all-MiniLM-L6-v2.
  • Vektordatenbanken: Chroma, Weaviate, FAISS.
  • UI-Framework: Gradio.
  • Backend-Technologien: Python, PyTorch, Transformers.

Datenverarbeitungsprozess

  1. Dokumentenerfassung: Verwendet fortschrittliche OCR-Technologien (DocTR).
  2. Dokumentensegmentierung: Semantisches Chunking.
  3. Vektorisierung: Verwendet präzise Embedding-Modelle.
  4. Retrieval-Erweiterung: HYDE-Technologie zur Verbesserung des Retrievals.
  5. Antwortgenerierung: Kontextbasierte intelligente Antworten.

Geschäftsanwendungen

Unternehmenslösungen

h2oGPT bietet generative KI-Lösungen für Unternehmen, mit den Hauptmerkmalen:

  • Vollständig privat: 100% private Bereitstellung, Daten verlassen das Unternehmen nicht.
  • Skalierbarkeit: Unterstützt großflächige Bereitstellungen.
  • Sicherheit: Sicherheit auf Unternehmensebene.
  • Anpassbarkeit: Unterstützt Modell-Fine-Tuning und Anpassung.

Anwendungsszenarien

  • Dokumenten-Q&A-Systeme: Interne Wissensdatenbank-Q&A für Unternehmen.
  • Code-Assistenz: Code-Generierung und -Überprüfung.
  • Datenanalyse: CSV-Datenverarbeitung und -analyse.
  • Multimedia-Verarbeitung: Bild-, Video-, Audioverarbeitung.
  • Kundenservice: Intelligente Kundenservice-Systeme.

H2O.ai Ökosystem

h2oGPT ist Teil der vollständigen KI-Plattform von H2O.ai. H2O.ai bietet außerdem:

  • H2O-3: Open-Source-Maschinenlernplattform.
  • H2O Driverless AI: Weltweit führende AutoML-Plattform.
  • H2O Hydrogen Torch: No-Code Deep Learning Plattform.
  • Document AI: Deep Learning Plattform für Dokumentenverarbeitung.
  • H2O MLOps: Modellbereitstellungs- und Überwachungsplattform.
  • H2O Feature Store: Feature Store Plattform.

Zusammenfassung

h2oGPT ist eine leistungsstarke Open-Source-Lösung für private GPT-Anwendungen, die sich besonders für Unternehmen und Einzelbenutzer eignet, die die vollständige Kontrolle über ihre Datenprivatsphäre benötigen. Sie bietet nicht nur ähnliche Funktionen wie kommerzielle GPT-Dienste, sondern auch zusätzliche Merkmale wie Dokumentenverarbeitung, multimodale Unterstützung und Sicherheit auf Unternehmensebene, was sie zur idealen Wahl für den Aufbau privater KI-Anwendungen macht.

Star History Chart