h2oGPT
Transforme ★ em (canto superior direito) se gostar do projeto!
Consulte e resuma seus documentos ou apenas converse com LLMs GPT privados locais usando h2oGPT, um projeto de código aberto Apache V2.
Confira um longo CoT Open-o1 aberto ?morango? projeto: https://github.com/pseudotensor/open-strawberry
Demonstração ao vivo
Demonstração de Gradio
Demonstração OpenWebUI
Demonstração em vídeo
demo2.mp4
Vídeo do YouTube em 4K
Características
- Banco de dados off-line privado de quaisquer documentos (PDFs, Excel, Word, Imagens, Quadros de Vídeo, YouTube, Áudio, Código, Texto, MarkDown, etc.)
- Banco de dados persistente (Chroma, Weaviate ou FAISS na memória) usando embeddings precisos (instructor-large, all-MiniLM-L6-v2, etc.)
- Uso eficiente do contexto usando LLMs ajustados por instrução (sem necessidade da abordagem de poucas tentativas do LangChain)
- Sumarização e extração paralela , atingindo uma produção de 80 tokens por segundo com o modelo 13B LLaMa2
- HYDE (Hypothetical Document Embeddings) para recuperação aprimorada com base em respostas LLM
- Chunking semântico para melhor divisão de documentos (requer GPU)
- Variedade de modelos suportados (LLaMa2, Mistral, Falcon, Vicuna, WizardLM. Com AutoGPTQ, 4 bits/8 bits, LORA, etc.)
- Suporte de GPU de modelos GGML HF e LLaMa.cpp e suporte de CPU usando modelos HF, LLaMa.cpp e GPT4ALL
- Dissipadores de atenção para geração arbitrariamente longa (LLaMa-2, Mistral, MPT, Pythia, Falcon, etc.)
- Gradio UI ou CLI com streaming de todos os modelos
- Carregue e visualize documentos por meio da IU (controle várias coleções colaborativas ou pessoais)
- Modelos de Visão LLaVa, Claude-3, Gemini-Pro-Vision, GPT-4-Vision
- Difusão estável de geração de imagens (sdxl-turbo, sdxl, SD3), PlaygroundAI (playv2) e Flux
- Voice STT usando Whisper com conversão de streaming de áudio
- TTS de voz usando Microsoft Speech T5 licenciado pelo MIT com múltiplas vozes e conversão de streaming de áudio
- TTS de voz usando TTS licenciado por MPL2, incluindo clonagem de voz e conversão de streaming de áudio
- Modo de controle de voz AI Assistant para controle de bate-papo h2oGPT com as mãos livres
- Modo Bake-off UI em vários modelos ao mesmo tempo
- Fácil download de artefatos de modelo e controle sobre modelos como LLaMa.cpp por meio da UI
- Autenticação na UI por usuário/senha via Native ou Google OAuth
- Preservação de estado na UI por usuário/senha
- Abra a UI da Web com h2oGPT como back-end via OpenAI Proxy
- Consulte Documentos de inicialização.
- Conclusão do bate-papo com streaming
- Perguntas e respostas de documentos usando ingestão de h2oGPT com OCR avançado do DocTR
- Modelos de visão
- Transcrição de áudio (STT)
- Geração de Áudio (TTS)
- Geração de imagem
- Autenticação
- Preservação do estado
- Suporte para Linux, Docker, macOS e Windows
- Suporte de servidores de inferência para oLLaMa, servidor HF TGI, vLLM, Gradio, ExLLaMa, Replicate, Together.ai, OpenAI, Azure OpenAI, Anthropic, MistralAI, Google e Groq
- Compatível com OpenAI
- API Server Proxy (h2oGPT atua como substituto imediato para o servidor OpenAI)
- Conclusões de bate-papo e texto (streaming e não streaming)
- Transcrição de áudio (STT)
- Geração de Áudio (TTS)
- Geração de imagem
- Incorporação
- Chamada de ferramenta de função com seleção automática de ferramenta
- Agente de execução de código AutoGen
- Modo JSON
- Controle estrito de esquema para vLLM por meio do uso de contornos
- Controle de esquema rigoroso para modelos OpenAI, Anthropic, Google Gemini, MistralAI
- Modo JSON para alguns modelos OpenAI ou Gemini mais antigos com controle de esquema se o modelo for inteligente o suficiente (por exemplo, gemini 1.5 flash)
- Qualquer modelo via extração de bloco de código
- Integração de pesquisa na Web com bate-papo e perguntas e respostas de documentos
- Agentes para pesquisa, perguntas e respostas sobre documentos, código Python, quadros CSV
- Agentes de alta qualidade via servidor proxy OpenAI em porta separada
- Agente code-first que gera gráficos, pesquisa, avalia imagens via modelo de visão, etc. (código cliente openai_server/openai_client.py).
- Nenhuma UI para isso, apenas API
- Avalie o desempenho usando modelos de recompensa
- Qualidade mantida com mais de 1.000 testes unitários e de integração que levaram mais de 24 horas de GPU
Comece
Instale h2oGPT
Docker é recomendado para Linux, Windows e MAC para recursos completos. O Linux Script também tem capacidade total, enquanto os scripts do Windows e MAC têm menos recursos do que o Docker.
- Docker construir e executar documentos (Linux, Windows, MAC)
- Documentos de instalação e execução do Linux
- Script de instalação do Windows 10/11
- Documentos de instalação e execução do MAC
- Início rápido em qualquer plataforma
Demonstrações de colaboração
Recursos
- Perguntas frequentes
- LEIA-ME para LangChain
- Discórdia
- Modelos (LLaMa-2, Falcon 40, etc.) em?
- YouTube: alternativa ChatGPT 100% offline?
- YouTube: Ultimate Open-Source LLM Showdown (6 modelos testados) - Resultados surpreendentes!
- YouTube: Blazing Fast Falcon 40b sem censura, código aberto, totalmente hospedado, converse com seus documentos
- Artigo Técnico: https://arxiv.org/pdf/2306.08161.pdf
Guia de documentos
- Comece
- Linux (CPU ou CUDA)
- macOS (CPU ou M1/M2)
- Windows 10/11 (CPU ou CUDA)
- Detalhes de execução da GPU (CUDA, AutoGPTQ, exllama)
- Detalhes de execução da CPU
- Bate-papo CLI
- Interface do usuário do Gradio
- API do cliente (Gradio, compatível com OpenAI)
- Servidores de Inferência (oLLaMa, servidor HF TGI, vLLM, Groq, Anthropic, Google, Mistral, Gradio, ExLLaMa, Replicate, OpenAI, Azure OpenAI)
- Construir roda Python
- Instalação off-line
- Pouca memória
- Docker
- Suporte a documentos LangChain
- Compare com PrivateGPT et al.
- Roteiro
- Desenvolvimento
- Ajuda
- Tipos de arquivo LangChain suportados
- Controle de banco de dados CLI
- Perguntas frequentes
- Notas de uso do modelo
- Adicionando modelos LLM (incluindo o uso de GGUF e coletores de atenção)
- Adicionando modelos de incorporação
- Adicionando prompts
- Aprendizagem em contexto
- Várias GPUs
- Uso de pouca memória
- Variáveis de ambiente
- Acesso HTTPS para servidor e cliente
- Links úteis
- Afinação
- Tritão
- Viabilidade comercial
- Agradecimentos
- Por que H2O.ai?
- Isenção de responsabilidade
Desenvolvimento
- Para criar um ambiente de desenvolvimento para treinamento e geração, siga as instruções de instalação.
- Para ajustar qualquer modelo LLM nos seus dados, siga as instruções de ajuste fino.
- Para executar testes h2oGPT:
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
# for openai server test on already-running local server
pytest -s -v -n 4 openai_server/test_openai_server.py::test_openai_client
ou ajuste/execute tests/test4gpus.sh
para executar testes em paralelo.
Agradecimentos
- Alguns códigos de treinamento foram baseados na versão de 24 de março do Alpaca-LoRA.
- Dados criados de alta qualidade pelo OpenAssistant.
- Modelos básicos usados pela EleutherAI.
- Dados usados do OIG criados por LAION.
Por que H2O.ai?
Nossos Makers na H2O.ai construíram várias plataformas de Machine Learning, Deep Learning e IA de classe mundial:
- Plataforma de aprendizado de máquina de código aberto nº 1 para empresas H2O-3
- O melhor AutoML (Automatic Machine Learning) do mundo com H2O Driverless AI
- Aprendizado profundo sem código com tocha de hidrogênio H2O
- Processamento de documentos com aprendizado profundo em Document AI
Também construímos plataformas para implantação e monitoramento, e para organização e governança de dados:
- H2O MLOps para implantar e monitorar modelos em escala
- H2O Feature Store em colaboração com AT&T
- Estruturas de desenvolvimento de aplicativos de IA de baixo código e código aberto Wave e Nitro
- Tabela de dados Python de código aberto (o mecanismo para engenharia de recursos H2O Driverless AI)
Muitos de nossos clientes estão criando modelos e implantando-os em toda a empresa e em escala na H2O AI Cloud:
- Multinuvem ou local
- Nuvem gerenciada (SaaS)
- Nuvem Híbrida
- Loja de aplicativos de IA
Estamos orgulhosos de ter mais de 25 (dos 280 do mundo) Kaggle Grandmasters chamando H2O de lar, incluindo três Kaggle Grandmasters que chegaram ao número 1 do mundo.
Isenção de responsabilidade
Por favor, leia este aviso com atenção antes de usar o modelo de linguagem grande fornecido neste repositório. O uso do modelo significa que você concorda com os seguintes termos e condições.
- Preconceitos e ofensividade: O modelo de linguagem grande é treinado em uma ampla gama de dados de texto da Internet, que podem conter conteúdo tendencioso, racista, ofensivo ou de outra forma inapropriado. Ao utilizar este modelo, você reconhece e aceita que o conteúdo gerado pode, às vezes, apresentar preconceitos ou produzir conteúdo ofensivo ou inapropriado. Os desenvolvedores deste repositório não endossam, apoiam ou promovem qualquer conteúdo ou ponto de vista.
- Limitações: O modelo de linguagem grande é uma ferramenta baseada em IA e não humana. Pode produzir respostas incorretas, sem sentido ou irrelevantes. É responsabilidade do usuário avaliar criticamente o conteúdo gerado e utilizá-lo a seu critério.
- Use por sua conta e risco: Os usuários deste grande modelo de linguagem devem assumir total responsabilidade por quaisquer consequências que possam surgir do uso da ferramenta. Os desenvolvedores e contribuidores deste repositório não serão responsabilizados por quaisquer danos, perdas ou danos resultantes do uso ou uso indevido do modelo fornecido.
- Considerações Éticas: Os usuários são incentivados a usar o modelo de linguagem ampla de forma responsável e ética. Ao utilizar este modelo, você concorda em não utilizá-lo para fins que promovam discurso de ódio, discriminação, assédio ou qualquer forma de atividades ilegais ou prejudiciais.
- Problemas de relato: Se você encontrar qualquer conteúdo tendencioso, ofensivo ou inapropriado gerado pelo modelo de linguagem grande, denuncie aos mantenedores do repositório por meio dos canais fornecidos. Seu feedback ajudará a melhorar o modelo e a mitigar possíveis problemas.
- Alterações neste aviso: Os desenvolvedores deste repositório reservam-se o direito de modificar ou atualizar este aviso a qualquer momento sem aviso prévio. É responsabilidade do usuário revisar periodicamente o aviso legal para se manter informado sobre quaisquer alterações.
Ao usar o modelo de linguagem grande fornecido neste repositório, você concorda em aceitar e cumprir os termos e condições descritos nesta isenção de responsabilidade. Se você não concorda com qualquer parte deste aviso, você deve abster-se de usar o modelo e qualquer conteúdo gerado por ele.
História das Estrelas