A resposta curta é que, na minha experiência geral, não importa qual você use.
A resposta longa:
Assim conda-forgeé um canal adicional a partir do qual os pacotes podem ser instalados. Nesse sentido, não é mais especial que o canal padrão ou qualquer outra centenas (milhares?) De canais nos quais as pessoas postaram pacotes. Você pode adicionar seu próprio canal se se inscrever em https://anaconda.org e enviar seus próprios pacotes Conda.
Aqui precisamos fazer a distinção, sobre a qual acho que você não está claro na sua formulação na pergunta entre condao gerenciador de pacotes de plataforma cruzada e conda-forgeo canal de pacotes. A Anaconda Inc. (anteriormente Continuum IO), os principais desenvolvedores do condasoftware, também mantém um canal separado de pacotes, que é o padrão quando você digita conda install packagenamesem alterar nenhuma opção.
Existem três maneiras de alterar as opções de canais. Os dois primeiros são feitos toda vez que você instala um pacote e o último é persistente. O primeiro é especificar um canal toda vez que você instala um pacote:
conda install -c some-channel packagename
Obviamente, o pacote precisa existir nesse canal. Desta forma, instalará packagenamee todas as suas dependências a partir some-channel. Como alternativa, você pode especificar:
conda install some-channel::packagename
O pacote ainda precisa existir some-channel, mas agora, apenas packagenameserá retirado some-channel. Quaisquer outros pacotes necessários para satisfazer dependências serão pesquisados na sua lista padrão de canais.
Para ver a configuração do seu canal, você pode escrever:
conda config --show channels
Você pode controlar a ordem em que os canais são pesquisados conda config. Você pode escrever:
conda config --add channels some-channel
para adicionar o canal some-channelao topo da channelslista de configurações. Isso dá some-channela maior prioridade. A prioridade determina ( em parte ) qual canal será selecionado quando mais de um canal tiver um pacote específico. Para adicionar o canal ao final da lista e dar a menor prioridade, digite
conda config --append channels some-channel
Se você deseja remover o canal que você adicionou, pode fazê-lo escrevendo
conda config --remove channels some-channel
Vejo
conda config -h
para mais opções.
Com tudo isso dito, há quatro razões principais para usar o conda-forgecanal em vez do defaultscanal mantido pela Anaconda:
- Os pacotes
conda-forge podem estar mais atualizados do que os do defaultscanal
- Existem pacotes no
conda-forgecanal que não estão disponíveis emdefaults
- Você prefere usar uma dependência como
openblas(de conda-forge) em vez de mkl(de defaults).
- Se você estiver instalando um pacote que requer uma biblioteca compilada (por exemplo, uma extensão C ou um wrapper em torno de uma biblioteca C), poderá reduzir a chance de incompatibilidades se você instalar todos os pacotes em um ambiente a partir de um único canal devido a problemas binários. compatibilidade da biblioteca C básica (mas este conselho pode estar desatualizado / alterado no futuro).
condaé um gerenciador de pacotes econda-forgeé um canal. Talvez fosse verdade quando essa pergunta foi feita?