C++에서 올라마 API 사용

AI 실습 튜토리얼4 개월 전에 게시 됨 Sharenet.ai
658 0
吐司AI

이 문서에서는 Ollama API. 이 문서는 C++ 개발자가 Ollama의 기능을 빠르게 익히고 최대한 활용할 수 있도록 돕기 위해 작성되었습니다. 이 문서를 공부하면 Ollama를 프로젝트에 쉽게 통합할 수 있습니다.

올라마의 커뮤니티와 문서는 파이썬을 다른 상위 언어와 통합하는 데 더 중점을 두고 있다는 점에 유의하세요. C++ 프로젝트에서 큰 모델을 사용할 때는 일반적으로 Llama.cpp (llama.cpp 튜토리얼) Llama.cpp는 대규모 언어 모델(LLM)의 추론 프로세스에 초점을 맞춘 Meta의 LLaMa 아키텍처를 효율적으로 C/C++로 구현하는 오픈 소스 프로젝트로, Georgi Gerganov가 개발했습니다.

 

 

I. 환경 준비

여기서는 C++ 프로젝트의 개발 환경은 다루지 않고 Ollama를 통합하는 방법만 설명합니다. Ollama가 설치 및 실행 중이고 필요한 모델을 다운로드했는지 확인하세요(자세한 내용은 2장 참조).

 

II. 올라마 API 호출하기

Ollama API를 직접 호출하는 것은 번거롭기 때문에 두 가지 아이디어를 소개합니다.

  • 패키지화된 C++ 클래스 라이브러리를 사용합니다.
  • 파이썬을 통해 올라마의 모델을 호출합니다.

1. 패키지 C++ 라이브러리 사용

헤더 파일만 도입하면 반복적으로 휠을 빌드하지 않고도 사용할 수 있는 패키지 C++ 라이브러리는 Github에서 찾을 수 있습니다. 다음은 ollama-hpp 예를 들어

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

현재 Github에 캡슐화된 C++ 클래스 라이브러리는 하나뿐이며, 테스트 과정에서 수동으로 수정해야 하는 버그가 있으므로 이 방법을 사용하지 않는 것이 좋습니다.

2. 파이썬을 통해 올라마 모델 호출하기

올라마의 기능을 C++ 프로젝트에 통합하면 Python에서 올라마의 모델을 호출하고 그 결과를 C++ 프로그램으로 전달할 수 있습니다:

  1. Ollama API를 호출하는 Python 코드 작성: Python으로 코드를 작성하여 원하는 모델을 호출하여 텍스트를 생성하거나 Ollama에서 제공하는 API 인터페이스를 통해 대화할 수 있습니다. 다음은 간단한 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. C++에서 Python 스크립트 호출하기: C++ 프로그램에서 시스템 호출을 사용하여 Python 스크립트를 실행하고 필요한 텍스트 또는 질문을 Python 스크립트에 인수로 전달할 수 있습니다. 예를 들어 다음과 같은 방법으로 C++에서 Python 스크립트를 호출할 수 있습니다:
    #include <cstdlib>
    int main() {
    system("python call_ollama.py '黑神话好玩吗?'");
    return 0;
    }
    

 

 

참조 문서

 

© 저작권 정책
AiPPT

관련 문서

댓글 없음

없음
댓글 없음...