Este artigo descreve como usar o Ollama API . Este documento foi criado para ajudar os desenvolvedores de C++ a se atualizarem rapidamente e aproveitarem ao máximo os recursos do Ollama. Ao estudar este documento, você poderá integrar facilmente o Ollama aos seus projetos.
Observe que a comunidade e a documentação do Ollama podem estar mais focadas na integração do Python com outras linguagens de alto nível. Ao usar modelos grandes em projetos de C++, é comum usar o Llama.cpp (tutorial llama.cpp) O Llama.cpp é um projeto de código aberto desenvolvido por Georgi Gerganov que fornece uma implementação eficiente em C/C++ da arquitetura LLaMa do Meta, com foco no processo de raciocínio para modelos de linguagem grandes (LLMs).
I. Preparação ambiental
O ambiente de desenvolvimento para projetos C++ não é abordado aqui, mas apenas como integrar o Ollama. Certifique-se de que o Ollama esteja instalado e em execução e que você tenha feito o download dos modelos necessários (consulte o Capítulo 2 para obter mais informações).
II Chamando a API do Ollama
Chamar a API do Ollama diretamente é complicado, portanto, aqui estão duas ideias.
- Use bibliotecas de classes C++ empacotadas.
- Chame o modelo de Ollama via Python.
1. uso de bibliotecas C++ empacotadas
Você pode encontrar bibliotecas C++ empacotadas no Github, que podem ser usadas apenas com a introdução de arquivos de cabeçalho para evitar a criação de rodas repetidas vezes. Aqui está um exemplo de um ollama-hpp Por exemplo:
#include "ollama.hpp"
std::cout << ollama::generate("llama3.1:latest", "how to use ollama in a cpp project?") << std::endl;
Atualmente, há apenas uma biblioteca de classes C++ encapsulada no Github, e há alguns erros que precisam ser corrigidos manualmente durante o processo de teste, portanto, não é recomendável usar esse método.
2. chamando o modelo de Ollama via Python
A integração da funcionalidade do Ollama em um projeto C++ permite que você chame os modelos do Ollama a partir do Python e passe os resultados para um programa C++:
- Escrever código Python para chamar a API do Ollama: Escreva código em Python para chamar o modelo desejado para gerar texto ou ter um diálogo por meio da interface da API fornecida pelo Ollama. Abaixo está um exemplo simples de chamada Python:
import requests def call_ollama_api(prompt, model_name="llama3.1:latest"): url = "http://localhost:11434/api/generate" headers = {"Content-Type": "application/json"} payload = { "model": model_name, "prompt": prompt, "stream": False } response = requests.post(url, json=payload, headers=headers) return response.json() # 示例调用 response = call_ollama_api("黑神话好玩吗?") print(response)
- Chamada de scripts Python a partir do C++: em um programa C++, é possível usar chamadas de sistema para executar scripts Python e passar o texto ou as perguntas necessárias como argumentos para o script Python. Por exemplo, um script Python pode ser chamado a partir do C++ da seguinte forma:
#include <cstdlib> int main() { system("python call_ollama.py '黑神话好玩吗?'"); return 0; }
documento de referência