Utiliser l'API Ollama en C++

Cet article décrit comment utiliser la fonction Ollama API . Ce document est conçu pour aider les développeurs C++ à se familiariser rapidement avec les fonctionnalités d'Ollama et à en tirer le meilleur parti. En étudiant ce document, vous pourrez facilement intégrer Ollama dans vos projets.

Notez que la communauté et la documentation d'Ollama peuvent être plus axées sur l'intégration de Python avec d'autres langages de haut niveau. Lors de l'utilisation de grands modèles dans des projets C++, il est courant d'utiliser l'option Llama.cpp (tutoriel llama.cpp) Llama.cpp est un projet open source développé par Georgi Gerganov qui fournit une implémentation efficace en C/C++ de l'architecture LLaMa de Meta, en se concentrant sur le processus de raisonnement pour les grands modèles de langage (LLM).

 

 

I. Préparation de l'environnement

L'environnement de développement pour les projets C++ n'est pas abordé ici, mais seulement la manière d'intégrer Ollama. Assurez-vous qu'Ollama est installé et fonctionne, et que vous avez téléchargé les modèles nécessaires (voir le chapitre 2 pour plus d'informations).

 

II - Appeler l'API Ollama

Appeler directement l'API d'Ollama est fastidieux, voici donc deux idées.

  • Utiliser des bibliothèques de classes C++ prêtes à l'emploi.
  • Appeler le modèle d'Ollama via Python.

1. l'utilisation de bibliothèques C++ prêtes à l'emploi

Vous pouvez trouver des bibliothèques C++ packagées sur Github, qui peuvent être utilisées simplement en introduisant des fichiers d'en-tête pour éviter de construire des roues encore et encore. Voici un exemple de ollama-hpp A titre d'exemple :

#include "ollama.hpp"
std::cout << ollama::generate("llama3.1:latest", "how to use ollama in a cpp project?") << std::endl;

Actuellement, il n'existe qu'une seule bibliothèque de classes C++ encapsulée sur Github, et certains bogues doivent être corrigés manuellement au cours du processus de test, il n'est donc pas recommandé d'utiliser cette méthode.

2. appeler le modèle d'Ollama via Python

L'intégration des fonctionnalités d'Ollama dans un projet C++ permet d'appeler les modèles d'Ollama depuis Python et de transmettre les résultats à un programme C++ :

  1. Écrire du code Python pour appeler l'API d'Ollama : Écrire du code en Python pour appeler le modèle souhaité afin de générer du texte ou d'avoir un dialogue à travers l'interface API fournie par Ollama. Vous trouverez ci-dessous un exemple simple d'appel en 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)
    
  2. Appel de scripts Python à partir de C++ : Dans un programme C++, vous pouvez utiliser des appels système pour exécuter des scripts Python et passer le texte ou les questions nécessaires comme arguments au script Python. Par exemple, un script Python peut être appelé à partir de C++ de la manière suivante :
    #include <cstdlib>
    int main() {
    system("python call_ollama.py '黑神话好玩吗?'");
    return 0;
    }
    

 

 

document de référence

 

© déclaration de droits d'auteur

Articles connexes

Pas de commentaires

Vous devez être connecté pour participer aux commentaires !
S'inscrire maintenant
aucun
Pas de commentaires...