Ollama Local LLM

Execute modelos de linguagem de código aberto localmente a partir dos seus aplicativos Delphi, C++ Builder e .NET. A inferência permanece privada, offline e on-premise, executando no seu próprio hardware sem nenhuma API na nuvem.

TsgcHTTP_API_Ollama

Cliente da API REST do Ollama para chat completions locais, embeddings e gerenciamento de modelos.

Classe do componente

TsgcHTTP_API_Ollama

Protocolo

Ollama REST API over HTTP

Plataformas

Windows, macOS, Linux, iOS, Android

Edição

Enterprise (add-on de IA)

Solte o componente, aponte-o para o localhost, pronto

O Ollama roda localmente e não precisa de chave de API. Defina OllamaOptions.BaseUrl para o seu servidor local (padrão http://localhost:11434/api), então chame _CreateMessage ou construa uma TsgcOllamaClass_Request_ChatCompletion e chame CreateMessage.

uses
  sgcHTTP_API_Ollama;

var
  Ollama: TsgcHTTP_API_Ollama;
begin
  Ollama := TsgcHTTP_API_Ollama.Create(nil);
  // Local server, no API key needed
  Ollama.OllamaOptions.BaseUrl := 'http://localhost:11434/api';

  // Simple one-shot message
  Memo1.Lines.Text := Ollama._CreateMessage(
    'llama3',
    'What are the benefits of WebSockets?');

  // Streaming — handle OnHTTPAPISSE per chunk
  Ollama.OnHTTPAPISSE := HandleSSE;
  Ollama._CreateMessageStream(
    'llama3',
    'Summarise RFC 6455');
end;

procedure TForm1.HandleSSE(Sender: TObject;
  const aEvent, aData: string;
  var Cancel: Boolean);
begin
  Memo1.Lines.Add(aEvent + ': ' + aData);
end;
// uses: sgcHTTP_API_Ollama
TsgcHTTP_API_Ollama *Ollama = new TsgcHTTP_API_Ollama(this);
// Local server, no API key needed
Ollama->OllamaOptions->BaseUrl = "http://localhost:11434/api";

// Simple one-shot message
Memo1->Lines->Text = Ollama->_CreateMessage(
  "llama3",
  "What are the benefits of WebSockets?");

// Streaming — OnHTTPAPISSE fires per chunk
Ollama->OnHTTPAPISSE = HandleSSE;
Ollama->_CreateMessageStream(
  "llama3",
  "Summarise RFC 6455");
using esegece.sgcWebSockets;

var ollama = new TsgcHTTPAPI_Ollama();
// Local server, no API key needed
ollama.OllamaOptions.BaseUrl = "http://localhost:11434/api";

// Simple one-shot message
Console.WriteLine(ollama._CreateMessage(
  "llama3",
  "What are the benefits of WebSockets?"));

// Streaming via Server-Sent Events
ollama.OnHTTPAPISSE += (sender, ev, data, cancel) => Console.Write(data);
ollama._CreateMessageStream(
  "llama3",
  "Summarise RFC 6455");

O que tem por dentro

Classes tipadas de requisição / resposta para chat completions e embeddings, além de gerenciamento de modelos e streaming sobre Server-Sent Events.

Mensagens e chat

CreateMessage envia uma TsgcOllamaClass_Request_ChatCompletion tipada e retorna uma resposta já parseada. _CreateMessage, _CreateMessageWithSystem e _CreateMessageStream são atalhos em string, com os deltas de streaming entregues através de OnHTTPAPISSE.

Embeddings

CreateEmbeddings transforma o texto de entrada em um vetor denso usando um modelo de embedding baixado localmente como nomic-embed-text ou mxbai-embed-large, retornando uma TsgcOllamaClass_Response_Embeddings.

Models

Gerencie os modelos na sua máquina: _GetModels e _GetTags listam o que está disponível, _ShowModel lê os detalhes do modelo, _PullModel baixa da biblioteca Ollama e _DeleteModel remove um modelo local.

Local e privado

Cada requisição tem como destino um servidor Ollama local (padrão http://localhost:11434/api), de modo que nenhum dado sai da sua rede e nenhuma chave de API é necessária. Aponte OllamaOptions.BaseUrl para uma instância remota ou em container quando precisar.

Confiabilidade e diagnóstico

CircuitBreaker interrompe requisições quando o servidor está degradado; ReadTimeout e TLSOptions ajustam a camada HTTP/HTTPS; OnHTTPAPIException expõe falhas; OnHTTPAPISSE transmite server-sent events.

Especificações e referências

Fontes autoritativas dos protocolos que este componente implementa.

Documentação e demos

Acesse direto a referência do componente, baixe o projeto de demonstração pronto para rodar e baixe a versão de avaliação.

Ajuda online — Ollama Referência completa de propriedades, métodos e eventos deste componente.
Projeto de demonstração — Demos\AI\Ollama Projeto de exemplo pronto para rodar. Acompanha o pacote sgcWebSockets — baixe a versão de avaliação abaixo.
Manual do usuário (PDF) Manual abrangente cobrindo todos os componentes da biblioteca.

Pronto para rodar LLMs locais com o Ollama?

Baixe a versão de avaliação gratuita e comece a desenvolver em poucos minutos.