simonw/llm

Access large language models from the command-line

해결하는 문제

LLM은 다양한 대규모 언어 모델(LLM)과 상호작용하기 위한 통합 명령줄 인터페이스(CLI) 및 Python 라이브러리를 제공합니다. 원격 모델(OpenAI, Claude, Gemini 등)과 로컬 모델(Ollama를 통해 실행되는 모델 등)에 대해 여러 다른 API나 별도의 도구를 사용할 필요를 없애주며, 사용자가 프롬프트, 키, 응답을 한 곳에서 관리할 수 있게 해줍니다.

작동 방식

이 도구는 다양한 LLM 제공업체를 감싸는 래퍼 역할을 합니다. 플러그인 시스템을 사용하여 다양한 모델에 대한 지원을 확장하며, 사용자가 특정 API나 로컬 러너용 플러그인을 설치할 수 있게 합니다. API 키를 안전하게 관리하고, 프롬프트와 응답을 로깅을 위해 로컬 SQLite 데이터베이스에 저장할 수 있습니다. 또한 스키마를 통한 구조화된 데이터 추출, 도구 실행, 임베딩 생성과 같은 고급 기능도 지원합니다.

대상 사용자

터미널에서 직접 LLM과 상호작용하거나, 셸 스크립트를 통해 LLM 작업을 자동화하거나, 반복적인 API 코드를 작성하지 않고 Python 애플리케이션에 LLM 기능을 통합하려는 개발자, 데이터 과학자, 고급 사용자.

주요 기능

  • 다중 모델 지원: OpenAI, Anthropic, Google, Mistral 및 Ollama 또는 기타 OpenAI 호환 엔드포인트를 통한 로컬 모델과 작동합니다.
  • 로컬 로깅: 프롬프트와 응답을 SQLite에 자동으로 저장합니다.
  • 구조화된 출력: 스키마를 사용하여 텍스트와 이미지에서 구조화된 콘텐츠를 추출할 수 있습니다.
  • 확장 가능: 새로운 모델, 도구, 임베딩 모델을 추가하기 위한 강력한 플러그인 아키텍처.
  • 멀티모달 기능: 이미지, 오디오, 비디오에 대해 프롬프트를 실행할 수 있는 기능.
  • 도구 사용: 모델이 터미널에서 직접 도구를 실행할 수 있는 기능을 부여합니다.

SUMMARY: 원격 및 로컬 대규모 언어 모델과 상호작용하기 위한 CLI 도구 및 Python 라이브러리로, SQLite 로깅과 플러그인 기반 확장성을 갖추고 있습니다.

TITLE: 원격 및 로컬 대규모 언어 모델과 상호작용하기 위한 통합 CLI 및 Python 라이브러리

관련

  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트
  • 프로젝트