1 pontos por GN⁺ 2024-02-09 | 1 comentários | Compartilhar no WhatsApp

Compatibilidade com OpenAI

  • O Ollama agora é compatível com a API de conclusões de chat da OpenAI, permitindo usar o Ollama localmente com mais ferramentas e aplicações.
  • A configuração começa com o download do Ollama e a importação de modelos como Llama 2 ou Mistral.

Como usar

cURL

  • Use o formato da OpenAI para chamar o endpoint de API compatível do Ollama e altere o nome do host para http://localhost:11434.

Biblioteca OpenAI para Python

  • É possível acessar o endpoint de API do Ollama usando a biblioteca OpenAI para Python, incluindo uma chave de API que é exigida, mas não utilizada.

Biblioteca OpenAI para JavaScript

  • É possível acessar o endpoint de API do Ollama usando a biblioteca OpenAI para JavaScript, incluindo uma chave de API que é exigida, mas não utilizada.

Exemplos

Vercel AI SDK

  • O Vercel AI SDK é uma biblioteca de código aberto que ajuda a criar aplicações interativas com streaming.
  • Use create-next-app para clonar o repositório de exemplo.

Autogen

  • Autogen é um framework open source popular criado pela Microsoft para construir aplicações com múltiplos agentes.
  • Neste exemplo, o modelo Code Llama é usado, e o Ollama é utilizado após instalar o Autogen e criar um script Python.

Mais novidades a caminho

  • Este é um suporte inicial e experimental à API da OpenAI.
  • Entre as melhorias futuras em consideração estão a API de embeddings, chamadas de função, suporte a visão e Logprobs.
  • Para mais detalhes, consulte a documentação de compatibilidade com OpenAI.

Opinião do GN⁺

  • Compatibilidade com a API da OpenAI: com a compatibilidade do Ollama com a API da OpenAI, os desenvolvedores podem integrar e usar modelos de IA com mais facilidade em ambientes locais. Trata-se de uma mudança importante que amplia a acessibilidade no desenvolvimento de aplicações baseadas em IA.
  • Suporte a várias linguagens de programação: o suporte por meio das bibliotecas para Python e JavaScript mostra a utilidade em diferentes ambientes de desenvolvimento. Isso significa que os desenvolvedores podem integrar recursos de IA com facilidade na linguagem de sua preferência.
  • Integração com frameworks open source: os exemplos de integração com frameworks open source como Vercel AI SDK e Autogen mostram o potencial de expandir os casos de uso do Ollama e de impulsionar a inovação orientada pela comunidade.

1 comentários

 
GN⁺ 2024-02-09
Comentários do Hacker News
  • Nos últimos meses, a facilidade de uso de LLMs hospedados localmente melhorou de forma impressionante.

    • Há algumas horas, comentou como o llamafile da Mozilla-Ocho é fácil de usar.
    • Está tendo dificuldade para decidir qual LLM usar.
  • Algumas pessoas têm, pessoalmente, insatisfação com a compatibilidade com a API da OpenAI se tornar um padrão da comunidade.

    • Há algumas esquisitices, como aninhamento desnecessário de estruturas de dados, mas não há grandes reclamações.
    • Fica a dúvida sobre quais são os problemas de essa API se tornar padrão e se existem tentativas de criar padrões alternativos.
  • Está desenvolvendo uma versão melhorada do Copilot e oferecendo suporte para que usuários possam trazer seu próprio LLM.

    • Adicionou um backend compatível com OpenAI, de modo que, se for fornecido um endpoint de API compatível com OpenAI, ele lida com formato de prompt, sequências de parada, máximo de tokens etc., de acordo com a semântica desse modelo.
    • Precisava desse tipo de recurso para testar em um ambiente local de desenvolvimento, e o fato de o Ollama oferecer isso tornou muito mais fácil testar suporte a vários LLMs.
  • O Ollama funciona melhor do que outras ferramentas e simplesmente funciona.

    • Rodou o Dolphin Mixtral 7b em um Raspberry pi 4 e pediu uma receita de pão de milho; algumas horas depois, descobriu que dois caracteres haviam sido gerados.
  • O script de instalação do Ollama para Linux funciona no estilo padrão atual.

    • No entanto, na última vez em que verificou, o script pedia privilégios de root via sudo.
    • Se você quiser a ferramenta, recomenda baixar o script para inspecioná-lo ou modificá-lo conforme necessário.
  • A compatibilidade com a OpenAI é um pouco enganosa.

    • A implementação de papéis e conteúdo sempre foi relativamente simples.
    • Ao hospedar agentes, é preciso de fato realizar o trabalho.
    • Incluiu um mecanismo de scripting no sistema de agentes e sentiu a necessidade de considerar segurança e configuração de permissões.
  • A camada de compatibilidade também pode ser construída em bibliotecas.

    • Por exemplo, o Langchain tem um llm() que funciona com vários backends de LLM.
  • Está trabalhando em um projeto para alternar facilmente entre open source (por exemplo, HF, VLLM) e modelos comerciais (OpenAI, Google, Anthropic, Together).

    • Se quiser usar diretamente em Python, sem API HTTP, fica mais fácil de usar.
  • Levanta a questão de quais são os casos de uso do Ollama e por que não usar diretamente o llama.cpp.

  • Pergunta se o Ollama é basicamente um servidor HTTP dockerizado que chama o llama.cpp diretamente e, tirando a API OpenAI adicionada recentemente, que outras diferenças existem.