Skip to main content
LibreChat is joining ClickHouse to power the open-source Agentic Data Stack 🎉 Learn more
LibreChat

Ollama

Configure o Ollama como um endpoint personalizado no LibreChat.

O Ollama executa modelos abertos localmente e expõe uma API compatível com OpenAI, para que você possa apontar o LibreChat para sua própria máquina. Baixe modelos com ollama run <model> e navegue pelo que está disponível na Ollama Library.

Configuração

O Ollama ignora a chave de API, mas ainda espera que o campo esteja presente, portanto, defina-o como qualquer marcador (placeholder). Aponte baseURL para o seu servidor Ollama. Adicione o endpoint em endpoints.custom no seu librechat.yaml:

    - name: "Ollama"
      apiKey: "ollama"
      # use 'host.docker.internal' instead of localhost if running LibreChat in a docker container
      baseURL: "http://localhost:11434/v1/" 
      models:
        default: [
          "llama2",
          "mistral",
          "codellama",
          "dolphin-mixtral",
          "mistral-openorca"
          ]
        # fetching list of models is supported but the `name` field must start
        # with `ollama` (case-insensitive), as it does in this example.
        fetch: true
      titleConvo: true
      titleModel: "current_model"
      summarize: false
      summaryModel: "current_model"
      modelDisplayLabel: "Ollama"

Notas

  • Defina titleModel como "current_model" para que a geração de títulos reutilize o modelo da conversa em vez de carregar um segundo. Isso mantém o Ollama limitado a um único modelo carregado por conversa.
  • O array default acima é uma lista de exemplo de modelos populares. Com fetch: true, o LibreChat obtém a lista completa do seu servidor.

Ollama -> llama3

Uma vez que stop foi removido dos parâmetros padrão, o problema abaixo não deve mais ocorrer.

Se o llama3 continuar gerando sem parar, adicione um bloco addParams com as sequências de parada:

    - name: "Ollama"
      apiKey: "ollama"
      baseURL: "http://host.docker.internal:11434/v1/"
      models:
        default: [
          "llama3"
        ]
        fetch: false # fetching list of models is not supported
      titleConvo: true
      titleModel: "current_model"
      summarize: false
      summaryModel: "current_model"
      modelDisplayLabel: "Ollama"
      addParams:
          "stop": [
              "<|start_header_id|>",
              "<|end_header_id|>",
              "<|eot_id|>",
              "<|reserved_special_token"
          ]

Se você executar apenas o llama3 com o Ollama, definir stop no nível de configuração via addParams é aceitável. Quando você executar vários modelos, adicione sequências de parada a partir do frontend através de parâmetros de conversa e predefinições, e omita o addParams:

    - name: "Ollama"
      apiKey: "ollama"
      baseURL: "http://host.docker.internal:11434/v1/" 
      models:
        default: [
          "llama3:latest",
          "mistral"
          ]
        fetch: false # fetching list of models is not supported
      titleConvo: true
      titleModel: "current_model"
      modelDisplayLabel: "Ollama"

Defina as sequências de parada nos parâmetros da conversa (e salve-as como uma predefinição):

image

Como está este guia?

Nesta página