Pessoal, durante o curso o professor usa o OpenAIEmbeddings com o modelo text-embedding-3-small, que é pago e exige API key. Consegui substituir por um modelo gratuito que roda localmente no Colab e funciona bem com textos em português.
O que muda:
No lugar do bloco de embeddings da OpenAI, usei o HuggingFace Embeddings com o modelo intfloat/multilingual-e5-small. Ele suporta mais de 100 idiomas incluindo português e não precisa de nenhuma chave de API.
Passo a passo:
Instale a dependência extra (numa célula antes do bloco de embeddings):
python!pip install sentence-transformers
Substitua o bloco de embeddings por:
pythonfrom langchain_community.embeddings import HuggingFaceEmbeddings
embeddings = HuggingFaceEmbeddings(
model_name="intfloat/multilingual-e5-small"
)
O resto do código fica exatamente igual — o Chroma, o RetrievalQA, tudo funciona sem alteração:
pythonvectorstore = Chroma.from_documents(
documents=chunks,
embedding=embeddings,
persist_directory="./chroma_regras_futebol"
)
Observações:
Na primeira execução o modelo baixa (~471MB), depois fica em cache.
Vai aparecer um aviso sobre HF_TOKEN e outro sobre embeddings.position_ids — ambos podem ser ignorados.
Se quiser um modelo ainda mais leve (mas só em inglês), pode usar all-MiniLM-L6-v2.
Espero que ajude quem não quer gastar com a API da OpenAI pra acompanhar o curso!