Podman AI Lab é uma extensão de código aberto para Podman Desktop para trabalhar com LLMs (Large Language Models) em um ambiente local. Apresentando um catálogo de receitas com casos de uso comuns de IA, um conjunto selecionado de modelos de código aberto e um playground para aprendizado, prototipagem e experimentação, o Podman AI Lab ajuda você a começar a trazer IA para seus aplicativos de forma rápida e fácil, sem depender de infraestrutura além seu laptop garantindo privacidade e segurança dos dados.
Podman AI Lab usa máquinas Podman para executar servidores de inferência para modelos LLM e aplicativos de IA. Os modelos de IA podem ser baixados e formatos comuns como GGUF, Pytorch ou Tensorflow são suportados.
Podman AI Lab fornece uma lista selecionada de modelos de IA de código aberto e LLMs. Depois de baixados, os modelos ficam disponíveis para uso em aplicativos de IA, serviços de modelo e playgrounds.
Depois que um modelo for baixado, um serviço de modelo poderá ser iniciado. Um serviço de modelo é um servidor de inferência executado em um contêiner e expondo o modelo por meio da conhecida API de bate-papo comum a muitos provedores.
Os ambientes Playground integrados permitem experimentar os modelos disponíveis em um ambiente local. Um prompt intuitivo do usuário ajuda a explorar os recursos e a precisão de vários modelos e ajuda a encontrar o melhor modelo para o caso de uso em questão. A interface do Playground permite ainda parametrizar modelos para otimizar ainda mais as configurações e atributos de cada modelo.
Uma vez que um modelo de IA esteja disponível através de um endpoint bem conhecido, é fácil imaginar um novo mundo de aplicações que se conectarão e usarão o modelo de IA. Podman AI Lab oferece suporte a aplicativos de IA como um conjunto de contêineres conectados entre si.
O Podman AI Lab vem com um chamado Catálogo de Receitas que ajuda você a navegar por uma série de casos de uso principais de IA e domínios de problemas, como Chat Bots, Geradores de Código e Resumidores de Texto. Cada receita vem com explicações detalhadas e exemplos de aplicativos que podem ser executados com vários modelos de linguagem grande (LLMs). Experimentar vários modelos permite encontrar o ideal para o seu caso de uso.
SO:
Compatível com Windows, macOS e Linux
Programas:
Hardware
Os modelos de IA de LLMs consomem muitos recursos tanto em termos de memória quanto de CPU. Cada um dos modelos fornecidos consome cerca de 4GiB de memória e requer pelo menos 4 CPUs para funcionar.
Portanto recomendamos um mínimo de 12 GB de memória e pelo menos 4 CPUs para a máquina Podman.
Como prática recomendada adicional, não execute mais de 3 modelos simultâneos simultaneamente.
Observe que isso não é relevante para WSL no Windows, pois a tecnologia WSL é a memória e a CPU com a área de trabalho host.
Você pode instalar a extensão Podman AI Lab diretamente dentro do Podman Desktop.
Vá para Extensões > Catálogo > Instalar Podman AI Lab.
Para instalar uma versão de desenvolvimento, use a ação Install custom...
conforme mostrado na gravação abaixo.
O nome da imagem a ser usada é ghcr.io/containers/podman-desktop-extension-ai-lab
. Você pode obter tags liberadas para a imagem em https://github.com/containers/podman-desktop-extension-ai-lab/pkgs/container/podman-desktop-extension-ai-lab.
Vamos selecionar um modelo do catálogo e baixá-lo localmente em nossa estação de trabalho.
Assim que um modelo estiver disponível localmente, vamos iniciar um servidor de inferência
Quer ajudar a desenvolver e contribuir com o Podman AI Lab?
Você pode usar pnpm watch --extension-folder
do diretório Podman Desktop para reconstruir e testar automaticamente a extensão do AI Lab:
Nota : certifique-se de ter os pré-requisitos apropriados instalados.
git clone https://github.com/containers/podman-desktop
git clone https://github.com/containers/podman-desktop-extension-ai-lab
cd podman-desktop-extension-ai-lab
corepack enable pnpm
pnpm install
pnpm build
cd ../podman-desktop
pnpm watch --extension-folder ../podman-desktop-extension-ai-lab/packages/backend
Se você estiver editando ao vivo o pacote frontend, na pasta packages/frontend:
$ pnpm watch
Adicionaremos uma maneira de permitir que um usuário limpe seu ambiente: consulte o problema nº 469. Por enquanto, considere as seguintes ações:
$HOME/podman-desktop/ai-lab
A extensão fornece por padrão uma lista selecionada de receitas, modelos e categorias. No entanto, este sistema é extensível e você pode definir o seu próprio.
Para aprimorar o catálogo existente, você pode criar um arquivo localizado na pasta de armazenamento de extensão $HOME/.local/share/containers/podman-desktop/extensions-storage/redhat.ai-lab/user-catalog.json
.
Deve seguir o mesmo formato do catálogo padrão nas fontes da extensão.
O comportamento padrão é anexar os itens do catálogo do usuário ao catálogo padrão.
️ Cada item (receitas, modelos ou categorias) possui um id único, quando for encontrado conflito entre o catálogo padrão e o do usuário, os itens do usuário substituem os padrões.
Exemplos de aplicativos podem ser adicionados ao catálogo. Consulte o guia de embalagem para obter informações detalhadas.
O roteiro está sempre aberto e aguardamos seu feedback. Por favor, crie novas questões e vote positivamente nas questões que parecem mais importantes para você.
Estaremos trabalhando nos seguintes itens:
Você pode fornecer seus comentários sobre a extensão com este formulário ou criar um problema neste repositório.