Olá! Que honra ter você conosco no Bootcamp LLM4Devs! Espero que o bootcamp seja muito útil na sua jornada na criação de aplicações baseadas em LLMs.
Antes de começarmos, vamos nos certificar que você com seu ambiente pronto para o bootcamp -- e assim focamos nosso tempo de sábado para as atividades hands on.
Para esse bootcamp, iremos utilizar Python como linguagem de programação e o Postgres como banco de dados. Certifique-se que você conseguiu instalar e configurar ambos. Versões recomendadas:
- Python: 3.10 ou superior
- PostgreSQL: 15 ou superior
Todas as demais dependencias serão instaladas via pip
.
Para não criar uma confusão com as bibliotecas do seu sistema e as que serão utilizadas no bootcamp, é recomendado criar um ambiente virtual separado.
python3 -m venv env
source env/bin/activate
Em seguida, instale as bibliotecas:
pip install -r requirements.txt
O PGVector é uma ferramenta muito importante para criação de aplicações baseadas em LLMs, uma vez que ele fornece novos tipos de armazenamento e busca de dados. Para instalá-lo, siga as instruções abaixo.
Para usuários Linux, o pgvector pode ser instalado via APT:
sudo apt install postgresql-16-pgvector
Para usuários macOS, pode-se utilizar o homebrew:
brew install pgvector
Para demais métodos de instalação, consulte o repositório oficial.
Uma vez instalado, crie uma base de dados e uma tabela usando o tipo VECTOR
. Primeiro, se conecte via linha de comando no seu banco de dados;
$ psql -h 127.0.0.1 -U postgres
Uma vez conectado, rode o script abaixo para criar a base e a tabela.
CREATE DATABASE bootcamp_llm;
\c bootcamp_llm
CREATE EXTENSION IF NOT EXISTS vector;
DROP TABLE IF EXISTS embeddings;
CREATE TABLE IF NOT EXISTS embeddings (
id SERIAL PRIMARY KEY,
content TEXT,
chars INTEGER,
embeddings VECTOR
);
Muito do nosso trabalho será baseado nas APIs da OpenAI. Para isso, você precisa criar uma chave para acessar a plataforma da OpenAI.
Em seguida, adicione a variavel de ambiente OPENAI_API_KEY
dentro do arquivo .env
.
OPENAI_API_KEY = "<CHAVE>"
Por fim, para garantir que a configuracao foi bem sucedida, rode o seguinte comando:
python3 $PATH/bootcamp-llm4devs/backend/core/main.py
Após o bootcamp, para continuar progredindo nos estudos, considere implementar essa lista de exercícios:
- Siga as instruções do BootCamp e implemente uma solução parecida com a que está na branch bootcamp.
- Teste o exercício do bootcamp com outro modelo (como o Gemini-pro, mistral, etc).
- Busque novas fontes de dados de outros formatos (arquivos PDFs, vídeos do YouTube).
- Estude como os dados são inseridos no banco. Brinque com os tamanhos e estratégias de chunking.
- Estudo e implemente diferentes estratégias para limpeza de dados. Pense como essas estratégias podem ser utilizadas em diferentes tipos de dados (considere tipos de dados como XML, JSON, trechos de código, tabelas, etc).
Ao longo da sua implementação, usse o Discord para discutir suas soluções.