[GN⁺] ollama, OpenAI API 호환성 제공

GeekNewsxguru님께 허락을 받고 GN에 올라온 글들 중에 AI 관련된 소식들을 공유하고 있습니다. :smiley_cat:


소개

[GN⁺] ollama, OpenAI API 호환성 제공

OpenAI 호환성

  • Ollama는 이제 OpenAI 챗 완성 API와 호환되어, Ollama를 로컬에서 더 많은 도구 및 애플리케이션과 사용할 수 있게 됨.
  • Ollama를 다운로드하고 Llama 2나 Mistral과 같은 모델을 가져오는 것으로 설정을 시작함.

사용법

cURL

  • Ollama의 OpenAI 호환 API 엔드포인트를 호출하기 위해 OpenAI 형식을 사용하고 호스트 이름을 http://localhost:11434로 변경함.

OpenAI Python 라이브러리

  • OpenAI Python 라이브러리를 사용하여 Ollama의 API 엔드포인트에 접근할 수 있으며, 필요하지만 사용되지 않는 API 키를 포함함.

OpenAI JavaScript 라이브러리

  • OpenAI JavaScript 라이브러리를 사용하여 Ollama의 API 엔드포인트에 접근할 수 있으며, 필요하지만 사용되지 않는 API 키를 포함함.

예시

Vercel AI SDK

  • Vercel AI SDK는 대화형 스트리밍 애플리케이션을 구축하는 데 도움이 되는 오픈소스 라이브러리임.
  • 예제 저장소를 복제하기 위해 create-next-app을 사용함.

Autogen

  • Autogen은 Microsoft에서 만든 다중 에이전트 애플리케이션을 구축하기 위한 인기 있는 오픈소스 프레임워크임.
  • 이 예제에서는 Code Llama 모델을 사용하며, Autogen을 설치하고 Python 스크립트를 생성하여 Ollama를 사용함.

더 많은 것이 올 예정

  • 이것은 OpenAI API에 대한 초기 실험적 지원임.
  • 고려 중인 향후 개선 사항에는 임베딩 API, 함수 호출, 비전 지원, Logprobs가 포함됨.
  • 자세한 정보는 OpenAI 호환성 문서를 참조.

GN⁺의 의견

  • OpenAI API 호환성: Ollama가 OpenAI API와 호환되면서, 개발자들은 로컬 환경에서 AI 모델을 더 쉽게 통합하고 활용할 수 있게 되었음. 이는 AI 기반 애플리케이션 개발의 접근성을 높이는 중요한 변화임.
  • 다양한 프로그래밍 언어 지원: Python과 JavaScript 라이브러리를 통한 지원은 다양한 개발 환경에서의 활용성을 보여줌. 이는 개발자들이 선호하는 언어로 AI 기능을 쉽게 통합할 수 있음을 의미함.
  • 오픈소스 프레임워크와의 연동: Vercel AI SDK와 Autogen과 같은 오픈소스 프레임워크와의 연동 예시는 Ollama의 활용 가능성을 넓히고, 커뮤니티 기반의 혁신을 촉진할 수 있는 잠재력을 보여줌.

Hacker News 의견

  • 최근 몇 달 동안 자체 호스팅 LLM의 사용 편의성이 놀랍게 향상되었음.
    • Mozilla-Ocho의 llamafile이 얼마나 사용하기 쉬운지 몇 시간 전에 토로함.
    • 어떤 LLM을 사용할지 결정하기 어려움을 겪음.
  • OpenAI API 호환성이 커뮤니티 표준이 되는 것에 대해 개인적으로 불만을 가진 사람들이 있음.
    • 데이터 구조의 불필요한 중첩 등 몇 가지 어색함이 있지만, 큰 불만은 없음.
    • API가 표준이 되는 것에 대한 문제점과 대안 표준에 대한 시도가 있는지 궁금함.
  • Copilot의 개선된 버전을 개발 중이며, 사용자가 자신의 LLM을 가져올 수 있도록 지원함.
    • OpenAI 호환 백엔드를 추가하여, OpenAI 호환 API 엔드포인트를 제공하면 해당 모델의 의미에 따라 프롬프트 형식, 중단 시퀀스, 최대 토큰 등을 처리함.
    • 로컬 개발 환경에서 테스트할 수 있는 이러한 기능이 필요했으며, Ollama가 이를 제공함으로써 다양한 LLM을 지원하는 테스트가 훨씬 쉬워짐.
  • Ollama는 다른 도구들보다 더 잘 작동하며, 간단히 작동함.
    • Raspberry pi 4에서 Dolphin Mixtral 7b를 실행하여 옥수수빵 레시피를 요청했고, 몇 시간 후에 두 캐릭터가 생성된 것을 발견함.
  • Ollama의 Linux 설치 스크립트는 현재 표준 스타일로 작동함.
    • 그러나 스크립트가 마지막으로 확인했을 때 sudo를 통해 루트 권한을 요청함.
    • 도구를 원한다면 스크립트를 다운로드하여 확인하거나 필요에 따라 수정할 것을 권장함.
  • OpenAI와의 호환성이 약간 오해의 소지가 있음.
    • 역할과 내용 구현은 항상 비교적 간단했음.
    • 에이전트를 호스팅할 때는 실제로 작업을 수행해야 함.
    • 에이전트 시스템에 스크립팅 엔진을 포함시켰고, 보안과 권한 설정을 고려해야 할 필요성을 느낌.
  • 호환성 계층은 라이브러리에서도 구축할 수 있음.
    • 예를 들어, Langchain은 여러 LLM 백엔드와 작동하는 llm()을 가짐.
  • 오픈소스(예: HF, VLLM) 및 상업 모델(OpenAI, Google, Anthropic, Together) 간에 쉽게 전환할 수 있는 프로젝트를 진행 중임.
    • HTTP API 없이 Python에서 직접 사용하고 싶다면 사용하기 더 쉬움.
  • Ollama의 사용 사례는 무엇이며, 왜 직접 llama.cpp를 사용하지 않아야 하는가에 대한 의문 제기.
  • Ollama가 Dockerized HTTP 서버로서 llama.cpp를 직접 호출하는 것인지, 그리고 새로 추가된 OpenAI API를 제외하고는 어떤 차이가 있는지에 대한 질문.

원문

출처 / GeekNews

1개의 좋아요