txtai é um banco de dados de incorporação completo para pesquisa semântica, orquestração LLM e fluxos de trabalho de modelo de linguagem.
Bancos de dados incorporados são uma união de índices vetoriais (esparsos e densos), redes gráficas e bancos de dados relacionais.
Essa base permite a pesquisa vetorial e/ou serve como uma poderosa fonte de conhecimento para aplicações de modelos de linguagem grande (LLM).
Crie agentes autônomos, processos de geração aumentada de recuperação (RAG), fluxos de trabalho multimodelos e muito mais.
Resumo dos recursos do txtai:
txtai é construído com Python 3.9+, Hugging Face Transformers, Sentence Transformers e FastAPI. txtai é de código aberto sob uma licença Apache 2.0.
Interessado em uma maneira fácil e segura de executar aplicativos txtai hospedados? Em seguida, participe da visualização do txtai.cloud para saber mais.
Novos bancos de dados vetoriais, estruturas LLM e tudo mais estão surgindo diariamente. Por que construir com txtai?
# Get started in a couple lines
import txtai
embeddings = txtai . Embeddings ()
embeddings . index ([ "Correct" , "Not what we hoped" ])
embeddings . search ( "positive" , 1 )
#[(0, 0.29862046241760254)]
# app.yml
embeddings :
path : sentence-transformers/all-MiniLM-L6-v2
CONFIG=app.yml uvicorn " txtai.api:app "
curl -X GET " http://localhost:8000/search?query=positive "
As seções a seguir apresentam casos de uso comuns de txtai. Um conjunto abrangente de mais de 60 exemplos de notebooks e aplicativos também está disponível.
Crie aplicativos de pesquisa semântica/similaridade/vetorial/neural.
Os sistemas de pesquisa tradicionais usam palavras-chave para encontrar dados. A pesquisa semântica compreende a linguagem natural e identifica resultados que têm o mesmo significado, não necessariamente as mesmas palavras-chave.
Comece com os exemplos a seguir.
Caderno | Descrição | |
---|---|---|
Apresentando txtai | Visão geral da funcionalidade fornecida pelo txtai | |
Pesquisa de similaridade com imagens | Incorpore imagens e texto no mesmo espaço para pesquisa | |
Crie um banco de dados de controle de qualidade | Correspondência de perguntas com pesquisa semântica | |
Gráficos Semânticos | Explore tópicos, conectividade de dados e execute análises de rede |
Agentes autônomos, geração aumentada de recuperação (RAG), bate-papo com seus dados, pipelines e fluxos de trabalho que fazem interface com grandes modelos de linguagem (LLMs).
Veja abaixo para saber mais.
Caderno | Descrição | |
---|---|---|
Modelos de prompt e cadeias de tarefas | Crie prompts de modelo e conecte tarefas com fluxos de trabalho | |
Integre estruturas LLM | Integre llama.cpp, LiteLLM e estruturas de geração customizadas | |
Crie gráficos de conhecimento com LLMs | Crie gráficos de conhecimento com extração de entidades orientada por LLM |
Os agentes conectam incorporações, pipelines, fluxos de trabalho e outros agentes para resolver problemas complexos de forma autônoma.
Os agentes txtai são criados com base na estrutura do Transformers Agent. Isso suporta todos os LLMs txtai (Hugging Face, llama.cpp, OpenAI / Claude / AWS Bedrock via LiteLLM).
Veja o link abaixo para saber mais.
Caderno | Descrição | |
---|---|---|
O que há de novo no txtai 8.0 | Agentes com txtai | |
Analisando postagens de abraços faciais com gráficos e agentes | Explore um conjunto de dados rico com análise gráfica e agentes | |
Concessão de autonomia aos agentes | Agentes que resolvem problemas iterativamente como bem entendem |
A geração aumentada de recuperação (RAG) reduz o risco de alucinações LLM ao restringir a saída com uma base de conhecimento como contexto. RAG é comumente usado para “conversar com seus dados”.
Uma nova característica do txtai é que ele pode fornecer uma resposta e uma citação da fonte.
Caderno | Descrição | |
---|---|---|
Crie pipelines RAG com txtai | Guia sobre geração aumentada de recuperação, incluindo como criar citações | |
Como funciona o RAG com txtai | Crie processos RAG, serviços API e instâncias Docker | |
RAG avançado com travessia de caminho de gráfico | Travessia do caminho do gráfico para coletar conjuntos complexos de dados para RAG avançado | |
Fala em Fala RAG | Fluxo de trabalho de ciclo completo de fala para fala com RAG |
Os fluxos de trabalho de modelos de linguagem, também conhecidos como fluxos de trabalho semânticos, conectam modelos de linguagem para criar aplicativos inteligentes.
Embora os LLMs sejam poderosos, existem muitos modelos menores e mais especializados que funcionam melhor e mais rápido para tarefas específicas. Isso inclui modelos para resposta extrativa a perguntas, resumo automático, conversão de texto em fala, transcrição e tradução.
Caderno | Descrição | |
---|---|---|
Execute fluxos de trabalho de pipeline | Construções simples, mas poderosas, para processar dados com eficiência | |
Construindo resumos de texto abstrativos | Execute o resumo de texto abstrativo | |
Transcrever áudio para texto | Converta arquivos de áudio em texto | |
Traduzir texto entre idiomas | Simplifique a tradução automática e a detecção de idioma |
A maneira mais fácil de instalar é via pip e PyPI
pip install txtai
Python 3.9+ é compatível. É recomendado usar um ambiente virtual Python.
Consulte as instruções detalhadas de instalação para obter mais informações sobre dependências opcionais, pré-requisitos específicos do ambiente, instalação a partir do código-fonte, suporte conda e como executar com contêineres.
Consulte a tabela abaixo para os modelos atualmente recomendados. Todos esses modelos permitem uso comercial e oferecem uma combinação de velocidade e desempenho.
Componente | Modelo(s) |
---|---|
Incorporações | tudo-MiniLM-L6-v2 |
Legendas de imagens | BLIPE |
Marcadores - Zero Shot | BART-Grande-MNLI |
Etiquetas - Corrigidas | Ajuste com pipeline de treinamento |
Modelo de linguagem grande (LLM) | Lhama 3.1 Instruir |
Resumo | DestilBART |
Texto para fala | JATOS ESPnet |
Transcrição | Sussurrar |
Tradução | Série de modelos OPUS |
Os modelos podem ser carregados como um caminho do Hugging Face Hub ou como um diretório local. Os caminhos do modelo são opcionais, os padrões são carregados quando não especificados. Para tarefas sem modelo recomendado, o txtai usa os modelos padrão conforme mostrado no guia Hugging Face Tasks.
Consulte os links a seguir para saber mais.
Os seguintes aplicativos são desenvolvidos com txtai.
Aplicativo | Descrição |
---|---|
txtchat | Pesquisa alimentada por geração aumentada de recuperação (RAG) |
papelai | Pesquisa semântica e fluxos de trabalho para artigos médicos/científicos |
pergunta de código | Pesquisa semântica para desenvolvedores |
história | Pesquisa semântica para manchetes e texto de história |
Além desta lista, há também muitos outros projetos de código aberto, pesquisas publicadas e projetos proprietários/comerciais fechados que foram construídos em txtai em produção.
Está disponível documentação completa sobre txtai, incluindo definições de configuração para incorporações, pipelines, fluxos de trabalho, API e perguntas frequentes com perguntas/problemas comuns.
Para aqueles que gostariam de contribuir com o txtai, consulte este guia.