7 pontos por xguru 2024-12-03 | Ainda não há comentários. | Compartilhar no WhatsApp
  • O LLM-Kit da Grab é um framework projetado para acelerar a configuração de aplicações de IA generativa em nível de produção
  • No desenvolvimento de aplicações de IA que lidam com dados sensíveis, segurança e proteção de dados são extremamente importantes, e o LLM-Kit resolve questões como escalabilidade, integração, monitoramento e padronização
  • Com isso, ele torna possível um desenvolvimento de aplicações com LLMs mais eficiente e eficaz no longo prazo, ajudando a Grab a integrar centenas de aplicações de GenAI

Características do LLM-Kit

  • Fornece uma estrutura pré-configurada (servidor de API, gerenciamento de configuração, agentes LLM de exemplo, testes etc.)
  • Integra-se com Poetry, Gunicorn, FastAPI, LangChain, LangSmith, Hashicorp Vault, Amazon EKS, Gitlab CI e outros
  • Recursos de observabilidade com monitoramento em tempo real por meio de integração com Datadog e LangSmith
  • Gerenciamento de configuração e segredos usando configparser do Python e Vault
  • Helper de autenticação OpenID Connect (OIDC)
  • Documentação de API com Swagger e Redoc
  • Integração com Redis e Vector DB
  • Pipeline de deploy para ambientes de staging e produção
  • Integração com o poderoso framework de avaliação do LangSmith
  • Cookbook: reúne exemplos usados com frequência na Grab e fornece recursos para desenvolvedores
    • Inclui vários casos, como agente com memória persistente, agente LLM para Slackbot, analisador de imagens e chatbot full-stack com interface de usuário

Valor do LLM-Kit

  • Acelera o desenvolvimento de aplicações com LLMs com uma stack tecnológica pré-configurada e integrada
  • Permite monitoramento em tempo real e detecção/resolução de problemas com integração a LangSmith e Datadog
  • Reforça a segurança com autenticação OIDC e gerenciamento de segredos com Vault
  • Melhora a eficiência de armazenamento/busca de dados com Vector DB
  • Fornece um framework com caminho pavimentado que promove boas práticas e padronização
  • A equipe pode economizar cerca de 1,5 semana de tempo de desenvolvimento antes de começar a trabalhar na primeira funcionalidade

Design de arquitetura e implementação técnica

  • Oferece escalabilidade, flexibilidade e facilidade de uso com uma arquitetura modular

Automação

  1. Quando o engenheiro envia detalhes relevantes, como o nome do app, é acionada a criação de um projeto no GitLab
  2. É gerado um scaffold de código projetado especificamente para apps com LLM
  3. Um arquivo GitLab CI para CI/CD é criado no mesmo repositório
  4. É criada a infraestrutura de staging, como ECR e EKS
  5. Uma pasta Terraform para provisionamento de infraestrutura é criada, levando ao deploy da infraestrutura de produção
  6. No fim do pipeline, o token do GPT é enviado para um caminho seguro no Vault e uma notificação de conclusão é enviada ao engenheiro

Estrutura do código scaffold

  1. Agents: inclui código para inicializar agentes com base no framework de agentes do LangChain
  2. Auth: módulo de autenticação e autorização para executar algumas APIs dentro da Grab
  3. Core: inclui extração de configuração (como token do GPT) e descriptografia de segredos para executar o app com LLM
  4. Models: define estruturas para as principais APIs de LLM da Grab
  5. Routes: define endpoints de API REST para o app com LLM (incluindo verificação de status, autenticação, autorização e agentes simples)
  6. Storage: inclui conectividade com o PGVector, o Vector DB gerenciado da Grab, e o esquema do banco de dados
  7. Tools: funcionalidades usadas como ferramentas para agentes LLM
  8. Tracing: integra-se com ferramentas de rastreamento e monitoramento para acompanhar várias métricas de apps em produção
  9. Utils: pasta base para funcionalidades utilitárias

Provisionamento de infraestrutura e deploy

  • Um pipeline abrangente integrado ao mesmo codebase faz automaticamente o scaffolding do código necessário para provisionamento de infraestrutura, deploy e processo de build
  • Usa Terraform para provisionar com fluidez a infraestrutura necessária
  • O pipeline de deploy é definido no arquivo .gitlab-ci.yml, garantindo deploy automatizado
  • O processo de build é especificado no Dockerfile, permitindo builds consistentes
  • Com o scaffolding automatizado, os desenvolvedores podem focar na lógica de negócio em vez da complexidade básica de infraestrutura e deploy

Scaffolding de RAG

  • Com o LLM-Kit, o processo de configurar o Vector DB (PGVector) e adicionar a lista de permissões do serviço foi simplificado
  • Após o envio do formulário, é possível acessar as credenciais e o caminho do host do banco de dados
  • Os segredos são adicionados automaticamente a um caminho no Vault
  • O engenheiro só precisa incluir o caminho do host do banco de dados no arquivo de configuração do app LLM-Kit scaffoldado

Conclusão

  • O LLM-Kit é uma ferramenta importante para apoiar a inovação e o crescimento em AI e ML na Grab
  • Ao resolver os desafios enfrentados pelas equipes e fornecer um framework abrangente, escalável e flexível para desenvolver apps com LLM, ele está liderando o desenvolvimento da próxima geração de apps de IA da Grab

Crescimento e planos futuros

  • Há planos para fornecer um SDK estável e fácil de usar, ao mesmo tempo em que melhora significativamente a concorrência e a escalabilidade do servidor web
  • Está previsto o fornecimento de um SDK de LLM reutilizável e componível, incluindo frameworks de avaliação e guardrails
  • Atualizações de versão e desenvolvimento de uma CLI para ferramentas de desenvolvimento
  • Desenvolvimento de funcionalidade para oferecer agentes baseados em polling
  • Com esses avanços, a intenção é proporcionar aos engenheiros uma experiência de desenvolvimento ainda mais fluida e eficiente

Ainda não há comentários.

Ainda não há comentários.