Importante

Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!

1
resposta

Dúvida quanto a conexão

Tentei fazer exatamente como na aula dividindo em duas céluas, mas só consegui quando juntei na mesma célula, analisando o erro
*
import os
import google.genai as genai
from google.colab import userdata

os.environ['GOOGLE_API_KEY'] = userdata.get('Gemini')
client = genai.Client()`

Seria isso, ou há diferença?

1 resposta

Oii, Roberto. Tudo bem?

A sua dúvida quanto à conexão faz todo sentido, e a boa notícia é que o código que você montou tá correto: não há diferença funcional entre juntar tudo em uma célula ou dividir em duas.

O problema aqui é de ordem de execução, não de sintaxe. No Colab, todas as células compartilham a mesma sessão, então a variável de ambiente definida em uma célula continua valendo nas seguintes. O detalhe é que genai.Client() lê a GOOGLE_API_KEY no exato momento em que é instanciado: se a célula do cliente rodou antes da célula com o os.environ, ou se você reiniciou o ambiente e executou só a segunda, o cliente nasce sem credencial e o erro aparece.

Ao juntar tudo em uma célula, a ordem passou a ser garantida, e por isso funcionou. Sempre execute de cima para baixo (Ambiente de execução, Executar tudo).

E você, Roberto, prefere trabalhar com poucas células maiores ou com várias células pequenas e bem separadas no Colab? Compartilhe aqui, porque essa organização influencia bastante na hora de depurar esse tipo de comportamento.

Alura Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!