Zaki-1052/GPTPortal

A feature-rich portal to chat with GPT-4, Claude, Gemini, Mistral, & OpenAI Assistant APIs via a lightweight Node.js web app; supports customizable multimodality for voice, images, & files.

What it solves

GPTPortal 은 여러 LLM 제공자와 상호작용하기 위한 단일 셀프 호스팅 웹 인터페이스를 제공합니다. OpenAI, Anthropic, Google, xAI, DeepSeek, Groq, Moonshot, Mistral, OpenRouter 또는 Ollama와 vLLM 같은 로컬 엔드포인트의 모델을 사용할 때 서로 다른 웹 UI를 전환할 필요가 없습니다.

How it works

가벼운 Node.js와 Express 애플리케이션이며 프론트엔드는 바닐라 JavaScript 로 구현되었습니다. 사용자는 .env 파일이나 브라우저 기반 설정 페이지를 통해 자신의 API 키를 제공합니다. 백엔드는 모듈식 프로바이더 팩토리를 사용해 모델 카탈로그에 따라 요청을 적절한 API 핸들러로 라우팅합니다. 대화 내용은 브라우저 세션이나 로컬 파일에 저장되어, 선택한 제공자에 대한 API 호출 외에는 데이터가 중앙 서버로 전송되지 않는 로컬 퍼스트 방식을 보장합니다.

Who it’s for

개인 또는 소규모 신뢰 그룹을 위해 설계되었으며, 여러 월 구독료를 지불하지 않고도 다양한 AI 모델에 통합되고 프라이빗하며 사용량 기반으로 접근할 수 있습니다.

Highlights

  • Unified Model Picker: 검색 가능하고 카테고리화된 인터페이스로 다양한 제공자와 로컬 엔드포인트의 수백 모델을 손쉽게 전환할 수 있습니다.
  • Compare View: 하나의 프롬프트를 여러 모델에 동시에 전송하고 응답을 나란히 비교할 수 있습니다.
  • Local-First Architecture: 데이터베이스나 프론트엔드 프레임워크가 필요 없으며, 로컬에서 실행되고 API 키는 .env 파일에 저장됩니다.
  • Rich Feature Set: 토큰 스트리밍, Markdown 렌더링(KaTeX 및 구문 강조 포함), 비전 기능, 파일 업로드, 음성(STT/TTS), 이미지 생성을 지원합니다.
  • Advanced Controls: 시스템 프롬프트와 파라미터 프리셋, 실시간 토큰 및 비용 추적, Claude 모델용 프롬프트 캐시를 포함합니다.