Hub documentation

Use o Ollama com qualquer modelo GGUF no Hugging Face Hub

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Use o Ollama com qualquer modelo GGUF no Hugging Face Hub

cover

Você também pode executar GGUFs privados do Hugging Face Hub.

Ollama é um aplicativo baseado em llama.cpp para interagir com LLMs diretamente pelo seu computador. Você pode usar qualquer quant GGUF criado pela comunidade (bartowski, MaziyarPanahi e muitos outros) no Hugging Face diretamente com o Ollama, sem criar um novo Modelfile. No momento da escrita, há 45 mil checkpoints GGUF públicos no Hub, e você pode executar qualquer um deles com um único comando ollama run. Também fornecemos personalizações, como a escolha do tipo de quantização, do system prompt e mais, para melhorar sua experiência geral.

Começar é tão simples quanto:

  1. Ative o ollama em suas Configurações de aplicativos locais.
  2. Em uma página de modelo, escolha ollama no menu suspenso Use this model. Por exemplo: bartowski/Llama-3.2-1B-Instruct-GGUF.

O trecho de código teria o seguinte formato:

ollama run hf.co/{username}/{repository}

Observe que você pode usar tanto hf.co quanto huggingface.co como nome de domínio.

Aqui estão alguns modelos que você pode testar:

ollama run hf.co/bartowski/Llama-3.2-1B-Instruct-GGUF
ollama run hf.co/mlabonne/Meta-Llama-3.1-8B-Instruct-abliterated-GGUF
ollama run hf.co/arcee-ai/SuperNova-Medius-GGUF
ollama run hf.co/bartowski/Humanish-LLama3-8B-Instruct-GGUF

Quantização Personalizada

Por padrão, o esquema de quantização Q4_K_M é utilizado, quando presente no repositório do modelo. Caso contrário, escolhemos por padrão um tipo de quantização razoável presente no repositório.

Para selecionar um esquema diferente, basta:

  1. Na aba Files and versions de uma página de modelo, abra o visualizador GGUF em um arquivo GGUF específico.
  2. Escolha ollama no menu suspenso Use this model.

O trecho de código ficaria no formato (tag de quantização adicionada):

ollama run hf.co/{username}/{repository}:{quantization}

Por exemplo:

ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:IQ3_M
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:Q8_0

# the quantization name is case-insensitive, this will also work
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:iq3_m

# you can also directly use the full filename as a tag
ollama run hf.co/bartowski/Llama-3.2-3B-Instruct-GGUF:Llama-3.2-3B-Instruct-IQ3_M.gguf

Modelo de Chat Personalizado e Parâmetros

Por padrão, um template será selecionado automaticamente a partir de uma lista de templates comumente usados. A seleção será feita com base nos metadados embutidos de tokenizer.chat_template armazenados no arquivo GGUF.

Se o seu arquivo GGUF não tiver um template embutido ou se você quiser personalizar o template de chat, você pode criar um novo arquivo chamado template no repositório. O template deve ser um template Go, não um template Jinja. Aqui está um exemplo:

{{ if .System }}<|system|>
{{ .System }}<|end|>
{{ end }}{{ if .Prompt }}<|user|>
{{ .Prompt }}<|end|>
{{ end }}<|assistant|>
{{ .Response }}<|end|>

Para saber mais sobre o formato de template do Go, consulte esta documentação

Você pode configurar opcionalmente um prompt de sistema colocando-o em um novo arquivo chamado system no repositório.

Para alterar os parâmetros de amostragem, crie um arquivo chamado params no repositório. O arquivo deve estar no formato JSON. Para a lista de todos os parâmetros disponíveis, consulte esta documentação.

Execute GGUFs privados do Hugging Face Hub

Você pode executar GGUFs privados da sua conta pessoal ou de uma conta de organização associada em duas etapas simples:

  1. Copie sua chave SSH do Ollama, você pode fazer isso via: cat ~/.ollama/id_ed25519.pub | pbcopy
  2. Adicione a chave correspondente à sua conta do Hugging Face acessando as configurações da sua conta e clicando em Add new SSH key.
  3. É isso! Agora você pode executar GGUFs privados do Hugging Face Hub: ollama run hf.co/{username}/{repository}.

Referências

Update on GitHub