Colaboratory

Perguntas frequentes

Noções básicas

O que é o Colaboratory?

O Colaboratory ou “Colab” é um produto do Google Research, área de pesquisas científicas do Google. O Colab permite que qualquer pessoa escreva e execute código Python arbitrário pelo navegador e é especialmente adequado para aprendizado de máquina, análise de dados e educação. Mais tecnicamente, o Colab é um serviço de notebooks hospedados do Jupyter que não requer nenhuma configuração para usar e oferece acesso sem custo financeiro a recursos de computação como GPUs.

É realmente sem custo financeiro?

Sim. Não há custos financeiros para usar o Colab.

Parece bom demais para ser verdade. Quais são as limitações?

Os recursos do Colab não são garantidos nem ilimitados, e os limites de uso às vezes flutuam. Isso é necessário para que o Colab possa oferecer recursos sem custo financeiro. Para saber mais detalhes, consulte Limites de recurso

O Colab Pro pode ser uma opção para usuários que buscam um acesso mais confiável a recursos melhores.

Os recursos do Colab são priorizados para casos de uso interativos. Proibimos ações associadas à computação em massa, que afetam negativamente outras pessoas e que tentam contornar nossas políticas. As ações a seguir não são permitidas nos ambientes de execução do Colab:

Veja outras restrições para usuários pagantes aqui.

Qual é a diferença entre o Jupyter e o Colab?

O Jupyter é o projeto de código aberto em que o Colab se baseia. O Colab permite que você use e compartilhe notebooks do Jupyter com outras pessoas, sem precisar fazer nenhum download, instalação nem executar nada.

Como usar o Colab

Onde meus notebooks são armazenados? Posso compartilhá-los?

Os notebooks do Colab são armazenados no Google Drive ou podem ser carregados pelo GitHub. Os notebooks do Colab podem ser compartilhados da mesma forma que Documentos ou Planilhas Google. Basta clicar no botão Compartilhar no canto superior direito de qualquer notebook do Colab ou seguir as instruções de compartilhamento de arquivos do Google Drive.

Se eu compartilhar meu notebook, o que será compartilhado?

Se você decidir compartilhar seu notebook, todo o conteúdo dele (texto, código, saída e comentários) será compartilhado. É possível impedir que a saída das células de código sejam salvas ou compartilhadas em Editar > Configurações do notebook > Omitir saída da célula de código ao salvar este notebook. A máquina virtual que você está usando não será compartilhada, nem os arquivos e as bibliotecas que você configurou. Não é uma boa ideia incluir células que instalem e carreguem alguma biblioteca ou arquivos personalizados de que seu notebook precisa.

Posso importar notebooks do Jupyter/IPython para o Colab?

Sim. No menu Arquivo, selecione "Fazer upload de notebook".

Como posso pesquisar notebooks do Colab?

É possível pesquisar notebooks do Colab usando o Google Drive. Clique no logotipo do Colab na parte superior esquerda da visualização de notebooks para ver todos eles no Drive. Você também pode pesquisar notebooks abertos recentemente em Arquivo > Abrir notebook.

Onde meu código é executado? O que acontecerá com meu estado de execução se eu fechar a janela do navegador?

O código será executado em uma máquina virtual particular da sua conta. As máquinas virtuais são excluídas quando estão inativas por muito tempo e têm um ciclo de vida máximo restringido pelo serviço do Colab.

Como posso extrair meus dados?

É possível fazer o download de qualquer notebook do Colab criado por você a partir do Google Drive, usando estas instruções ou no menu Arquivo do Colab. Todos os notebooks do Colab são armazenados no formato de notebook de código aberto do Jupyter ( .ipynb).

Como posso redefinir as máquinas virtuais em que meu código é executado, e por que às vezes essa opção não está disponível?

Selecione Ambiente de execução > Desconectar e excluir ambiente de execução para fazer com que as máquinas virtuais atribuídas a você voltem ao estado original. Isso pode ser útil quando a máquina virtual não está íntegra devido à substituição acidental do sistema de arquivos ou à instalação de software incompatível. O Colab limita a frequência com que isso pode ser feito para impedir o consumo indevido de recursos. Se ocorrer alguma falha em uma tentativa, tente novamente mais tarde.

Por que drive.mount() às vezes falha e mostra o aviso de "tempo esgotado", e por que as operações de E/S das pastas montadas com drive.mount() às vezes não funcionam?

As operações do Google Drive podem expirar quando o número de arquivos ou subpastas de uma pasta é muito grande. Se houver milhares de itens diretamente na pasta "Meu Drive", é provável que a montagem do Drive expire. Tentar de novo várias vezes pode funcionar, já que cada tentativa frustrada armazena o estado parcial em cache localmente antes de expirar. Se você tiver esse problema, tente mover os arquivos e as pastas contidos diretamente em "Meu Drive" para subpastas. Um problema similar ocorre ao ler outras pastas depois de um drive.mount(). Acessar arquivos em qualquer pasta que contenha itens demais pode provocar erros como Erro de entrada/saída OSError: [Errno 5]. Novamente, esse problema pode ser resolvido ao mover os itens diretamente para subpastas.
Talvez excluir arquivos ou subpastas movendo-os para a lixeira não seja suficiente. Se isso não funcionar, esvazie a lixeira.

Por que a opção "Montar Drive" às vezes insere código no notebook?

Montar o Google Drive no Colab permite que o código do notebook tenha acesso a todos os arquivos no Google Drive. Geralmente exigimos que os usuários concedam o acesso manualmente sempre que se conectarem a um novo ambiente de execução adicionando uma célula de código ao notebook. Isso garante que o usuário tenha pleno conhecimento das permissões concedidas ao notebook.
Em alguns casos, solicitamos a autorização do Google Drive uma única vez, e ele é montado automaticamente nas próximas sessões. Para proteger os arquivos, isso só é permitido quando o notebook é aprovado em várias verificações. Por exemplo, nos notebooks editados por outro usuário, o Google Drive não é montado automaticamente.

Por que algumas operações do Drive falham devido à cota?

O Google Drive define vários limites, incluindo o total de operações por usuário e por arquivo, além de cotas de largura de banda. Exceder esses limites aciona um Erro de entrada/saída mencionado acima e exibe uma notificação na IU do Colab. Uma causa comum é abrir um arquivo que é compartilhado várias vezes ou acessar muitos arquivos diferentes em sequência. Veja algumas soluções:

Por que algumas operações do Drive falham devido à cota de armazenamento?

O Google Drive define um limite de quantidade de dados que podem ser armazenados por cada usuário. Se ocorrerem falhas de Erro de entrada/saída nas operações do Drive, e uma notificação indicar que a cota de armazenamento foi excedida, exclua alguns arquivos usando drive.google.com e esvazie a lixeira para liberar espaço. Pode demorar um pouco até que o espaço recuperado esteja disponível no Colab.

Caso queira comprar mais armazenamento, acesse o Google Drive. A compra de espaço adicional no Google Drive não aumentará a capacidade de disco disponível nas VMs do Colab. Para fazer isso, assine o Colab Pro.

Limites de recurso

Por que os recursos não são garantidos no Colab?

Para oferecer recursos computacionais sem custo financeiro, o Colab precisa manter a flexibilidade para ajustar os limites de uso e a disponibilidade de hardware instantaneamente. Os recursos disponíveis no Colab podem variar com o tempo para acomodar as flutuações na demanda, assim como o crescimento geral e outros fatores.

Alguns usuários querem poder fazer mais no Colab do que os recursos limitados permitem. O Colab Pro e o Pro+ fornecem acesso prioritário a GPUs mais rápidas, notebooks com execução mais longa e mais memória. O objetivo da nossa equipe é continuar oferecendo uma versão sem custo financeiro do Colab e, ao mesmo tempo, crescer de maneira sustentável para atender às necessidades dos nossos clientes.

Se quiser ter o controle total sobre seus recursos no Colab, confira as VMs do GCP Marketplace. Com elas, é possível especificar exatamente os recursos de execução que serão usados. Além disso, você tem acesso a um ambiente persistente para gerenciar como quiser enquanto usa a UI do Colab.

Quais são os limites de uso do Colab?

O Colab é capaz de oferecer recursos sem custo financeiro por ter limites de uso dinâmicos que às vezes flutuam e por não oferecer recursos garantidos nem ilimitados. Isso significa que os limites de uso geral, assim como os tempos limite de inatividade, o ciclo de vida das VMs e os tipos de GPUs disponíveis podem variar. O Colab não publica esses limites, em parte porque eles podem variar rapidamente (e às vezes isso acontece).

As GPUs e TPUs algumas vezes são priorizadas para usuários que usam o Colab interativamente, e não para cálculos de longa duração, ou para aqueles usuários que utilizaram menos recursos do Colab recentemente. Como resultado, os usuários que usaram o Colab para cálculos de longa duração ou que recentemente usaram mais recursos do Colab provavelmente atingirão limites de uso e terão o acesso a GPUs e TPUs temporariamente restringido. O Colab Pro e o Pro+ são uma boa opção para aqueles que querem ter limites de uso mais altos e estáveis. Para usuários que precisam de mais recursos computacionais, pode ser uma boa ideia usar a IU do Colab com um ambiente de execução local no próprio hardware ou nas VMs do GCP Marketplace.

Que tipos de GPUs estão disponíveis no Colab?

Os tipos de GPUs disponíveis no Colab variam com o tempo. Isso é necessário para que o Colab possa oferecer acesso aos recursos sem custo financeiro. O Colab Pro e o Pro+ podem ser uma opção melhor para usuários que precisam de acesso confiável às GPUs mais rápidas do Colab. Se você quiser usar um hardware específico no Colab, confira as VMs do GCP Marketplace.

Observações: o uso do Colab para minerar criptomoedas não é permitido de nenhuma forma e pode fazer com que sua conta seja proibida de usar o Colab.

Por quanto tempo os notebooks podem ser executados no Colab?

Os notebooks são executados ao se conectar a máquinas virtuais que têm ciclos de vida máximos de até 12 horas. Eles também se desconectam das VMs quando permanecem inativos por muito tempo. O ciclo de vida máximo da VM e o tempo limite de inatividade podem variar com o tempo ou de acordo com seu uso. Isso é necessário para que o Colab possa oferecer recursos computacionais sem custo financeiro. O Colab Pro e o Pro+ podem ser uma opção melhor para usuários que precisam de ciclos de vida da VM mais longos e comportamentos mais flexíveis do tempo limite de inatividade.

Se quiser controlar o ciclo de vida da sua VM no Colab, confira as VMs do GCP Marketplace que fornecem um ambiente persistente para você gerenciar do seu jeito.

Quanta memória há disponível no Colab?

A quantidade de memória do sistema disponível nas máquinas virtuais do Colab varia com o tempo, mas é estável durante todo o ciclo de vida da VM. Os usuários do Colab Pro e Pro+ podem receber automaticamente uma VM com memória adicional do sistema sujeita à disponibilidade. O Colab Pro e o Pro+ ou as VMs do GCP Marketplace podem ser uma opção melhor para usuários que precisam de uma memória do sistema mais confiável disponível no Colab.

A memória do sistema é medida pelo comando `!grep MemTotal /proc/meminfo` e não deve ser confundida com a memória da GPU, que é medida pelo comando `!nvidia-smi --query-gpu=memory.total --format=csv`. Todos os chips de GPU oferecidos pelo Colab têm o mesmo perfil de memória de GPU.

Como posso aproveitar o Colab ao máximo?

Os recursos do Colab são priorizados para os assinantes que usaram menos recursos recentemente, para impedir a monopolização dos recursos limitados por um pequeno número de usuários. Para aproveitar o Colab ao máximo, feche as guias do Colab ao terminar o trabalho e evite optar por uma GPU quando isso não for necessário. Isso diminuirá a probabilidade de que você alcance o limite de uso no Colab. O Colab Pro e o Pro+ podem ser uma opção melhor para usuários que precisam de mais recursos do que a versão sem custo financeiro do Colab oferece.

Li uma mensagem dizendo que a minha GPU não está sendo usada. O que devo fazer?

O Colab oferece opções de ambientes de computação acelerados que incluem GPU e TPU. Executar código em um ambiente de execução com GPU ou TPU não significa automaticamente que a GPU ou a TPU estão sendo usadas. Para evitar atingir os limites de uso da GPU, recomendamos alternar para um ambiente de execução padrão caso a GPU não esteja sendo utilizada. Selecione Ambiente de execução > Alterar o tipo de ambiente de execução e defina o Acelerador de hardware como Nenhum.

Para ver exemplos de como usar os ambientes de execução com GPU e TPU no Colab, consulte os notebooks de exemplo TensorFlow com suporte a GPUs e TPUs no Colab.

Mais perguntas?

Quais são os navegadores compatíveis?

O Colab funciona com a maioria dos navegadores e foi testado exaustivamente com as últimas versões do Chrome, Firefox e Safari.

Como isso se relaciona com o colaboratory.jupyter.org?

Em 2014, nós trabalhamos com a equipe de desenvolvimento do Jupyter para lançar uma versão inicial da ferramenta. Desde então, o Colab continuou evoluindo, de acordo com as necessidades internas de uso.

E as outras linguagens de programação?

O foco do Colab é a compatibilidade com o Python e o ecossistema de ferramentas de terceiros. Sabemos que existem usuários interessados no suporte a outros kernels do Jupyter (por exemplo, R ou Scala). Gostaríamos de dar suporte a essas linguagens, mas ainda não temos um prazo estimado para isso.

Encontrei um bug ou tenho uma pergunta. Com quem devo entrar em contato?

Abra qualquer notebook do Colab. Depois, no menu Ajuda, selecione "Enviar feedback… ".

Por que o Colab solicita ativar cookies de terceiros?

O Colab usa iframes HTML e service workers hospedados em origens separadas para exibir saídas avançadas. Os navegadores requerem ativar cookies de terceiros para usar os service workers nos iframes. Uma opção para não ativar cookies de terceiros é permitir o seguinte nome do host nas configurações no seu navegador: googleusercontent.com.

Como altero a fonte do editor?

O Colab usa uma fonte genérica monoespaçada para o editor. É possível configurar a família de fontes monoespaçadas usadas na maioria dos navegadores. Estes são exemplos de algumas comuns:

O Colab é compatível com Python 2?

O suporte ao Python 2 foi suspenso no Colab. Para mais informações sobre como migrar o código, leia sobre a portabilidade de código do Python 2 para o Python 3.

Onde posso saber mais sobre o Colab Pro e o Pro+?

Há uma seção de perguntas frequentes sobre o Colab Pro e o Pro+ na página de inscrição.

Como funciona o faturamento no Colab Pro e no Colab Pro+?

Consulte a página de inscrição do Colab Pro e do Pro+ para saber mais sobre preços e como funcionam os upgrades.

Como faço para acessar o Colab com uma conta do Workspace?

O gerenciamento do acesso de usuários do Workspace ao Colab é feito pelos controles de ativação/desativação do Workspace disponibilizados ao administrador da sua organização.

As organizações que participam do Workspace for Education precisam receber autorização dos responsáveis para que alunos (menores de 18 anos) possam usar serviços adicionais com a conta do Google Workspace for Education. Para saber mais, leia nosso artigo da Central de Ajuda Comunicação com os pais e responsáveis sobre o Google Workspace for Education. Não há compatibilidade com Contas do Google para crianças menores de 13 anos.