Recent Releases of https://github.com/av/harbor

https://github.com/av/harbor - v0.3.19 - Docling

Docling

image

Docling simplifies document processing, parsing diverse formats — including advanced PDF understanding — and providing seamless integrations with the gen AI ecosystem.

bash harbor up docling

Misc

  • speaches now working again with newer version of the service + automatic model downloads
  • harbor config extra options
  • harbor pull fixed regression after v0.3.16 not allowing to pull custom services
  • harbor open proper handling when system open fails
  • harbor ls | ps | ... - correct handling of --no-defaults
  • nbs launch example
  • bump golang >= 1.24.0 by @genevera in https://github.com/av/harbor/pull/185
  • fix doc generation order

New Contributors

  • @genevera made their first contribution in https://github.com/av/harbor/pull/185

Full Changelog: https://github.com/av/harbor/compare/v0.3.18...v0.3.19

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.18

image

  • boost
    • new nbs module
    • llm.emit_artifact convenience tweaks
  • harbor pull - now pulls Ollama models too: harbor pull gemma3, harbor pull webui
  • harbor ollama <command> - now launches Ollama if it's not running yet
  • routines migrated to TypeScript

Full Changelog: https://github.com/av/harbor/compare/v0.3.16...v0.3.18

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.17

v0.3.17

  • webui - fixed Web RAG config when launching with searxng

Full Changelog: https://github.com/av/harbor/compare/v0.3.16...v0.3.17

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.16

v0.3.16

image

  • boost
  • parllama - moving away from pkgx, fixing config location
  • vllm - support for vllm.image config

Full Changelog: https://github.com/av/harbor/compare/v0.3.15...v0.3.16

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.15

v0.3.15

  • boost
    • HARBOR_BOOST_PUBLIC_URL env var allows boost to know its public URL for artifacts to be able to connect back to it
    • fix tool registry for ws:// connections

Full Changelog: https://github.com/av/harbor/compare/v0.3.14...v0.3.15

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.14

v0.3.14

  • boost
    • autotemp mod
    • fixes to tool calls and streaming
    • mini tool registry, finished local tool call loop
    • API-level tests

Full Changelog: https://github.com/av/harbor/compare/v0.3.13...v0.3.14

- Python
Published by av 11 months ago

https://github.com/av/harbor - v0.3.13

What's Changed

  • Fix: Working out-of-box config for traefik by @nickgnat in https://github.com/av/harbor/pull/165
  • Multiple new boost workflows - concept, promx, ponder

New Contributors

  • @nickgnat made their first contribution in https://github.com/av/harbor/pull/165

Full Changelog: https://github.com/av/harbor/compare/v0.3.12...v0.3.13

- Python
Published by av 12 months ago

https://github.com/av/harbor - v0.3.12

Airweave

image

Airweave is a one-stop-shop for integrating external knowledge for use by agents. Current integration is preliminary, awaiting better configurability for embeddings/LLMs in the upstream.

Misc

  • boost
    • Default temp is 0.35
    • polyglot - adjust prompts for smaller LLMs
    • chat.advance fixed regression breaking multiple modules relying on this method (rcn and others)

Full Changelog: https://github.com/av/harbor/compare/v0.3.11...v0.3.12

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.11

This is a maintenance release with few small bugfixes - ldr - fixing env vars for Ollama/SearXNG for newer version - switching to official prebuilt image - litellm - config pointers

Full Changelog: https://github.com/av/harbor/compare/v0.3.10...v0.3.11

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.10 - Modular MAX

Modular MAX

image

MAX is a platform for inference from Modular (creators of Mojo lang). You will need Nvidia GPU to work with this service.

```bash

Pull the image, start the service, tail logs

⚠️ Service will download configured model automatically

harbor up modularmax --tail ```

Misc

  • docs
    • dev pipeline improvements, enables normalising local MD links in the future (to fix dead local links in the Wiki/repo)
    • normalising formatting for the service metadata
    • modernised searxng wiki entry
  • harbor help / harbor how - CLI help updates

Full Changelog: https://github.com/av/harbor/compare/v0.3.9...v0.3.10

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.9 - Agent Zero

Agent Zero

image

General-purpose personal assistant with: Web RAG, persistent memory, tools, Browser Use and more.

```bash

--open is optional to open in the browser

harbor up agentzero --open ```

Misc

  • metamcp - fix broken build, point to v0.4.3 (see #156)
  • mistralrs - fixing wrong service tag

Full Changelog: https://github.com/av/harbor/compare/v0.3.8...v0.3.9

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.8 - LocalAI, Local Deep Research

LocalAI

image

All-in-one service to download and run LLMs, TTS/STT/Image generation models

bash harbor up localai

Local Deep Research

image

Deep Research functionality with local LLMs

bash harbor up ldr searxng

Harbor Boost - new workflows

Frame 4

  • dot - Draft of Thoughts
  • grug - Grug make plan with simple word-think. Grug find new path in head-picture that smart-talk no find.
  • polyglot - Model generates answers in multiple langugages then synthesises a final solution
  • tri - Generates three aspects, then three pitfalls and then three alternative answers before synthesising a final solution

Misc

  • boost
    • Switching to av/tools, use uv
    • llm - stream_completion allows skipping emit to the client
    • querying downstream models is cached for 1 minute
  • ollama - disabling automatic restarts to align with other Harbor services
  • searxng
    • aligning configuration with other services - configurable image/version
    • fixed healthcheck
    • harbor config set searxng.internal_url to point all harbor searxng use to an external SearXNG instance
  • librechat - connect to boost
  • ollama - modelfile for Gemma 3 QAT w/ tool use in the template

Full Changelog: https://github.com/av/harbor/compare/v0.3.7...v0.3.8

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.7 - Tools

image

In this release, Harbor gets access to MCP and OpenAPI tools ecosystems with the following new services: - MetaMCP - mcpo

```bash

Bring your MCP tools to Open WebUI

harbor up mcpo metamcp ```

More details in the Harbor Tools guide Additionally, I'm launching av/tools to simplify containerized tool use in general.

Full Changelog: https://github.com/av/harbor/compare/v0.3.6...v0.3.7

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.6 - LibreTranslate

v0.3.6 - LibreTranslate

image

Free and Open Source Machine Translation API, entirely self-hosted.

```bash

[Optional] pre-pull the image

harbor pull libretranslate

Start the service

harbor up libretranslate ```

Pulls translation models on the first start - may take a while, monitor with harbor logs libretranslate

Misc

  • app
    • bundle docs in GH action
    • attempt to fix #64
  • boost
    • basic support for proxying tool calls
    • logging revamp
    • request ID tracking
  • n8n - fix typo in the docs preventing initial workflow import

Full Changelog: https://github.com/av/harbor/compare/v0.3.5...v0.3.6

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.5 - in-app docs

v0.3.5 - in-app docs

image

Harbor App now has dedicated service pages. There are a lot of plans, but we start simple, you'll be able to perform the same actions as in the Home page + see service wiki in the app.

Misc

  • harbor dev app helper
  • App - bumping Tauri deps

Full Changelog: https://github.com/av/harbor/compare/v0.3.4...v0.3.5

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.4 - llama-swap

llama-swap

llama-swap is a lightweight, transparent proxy server that provides automatic model swapping to llama.cpp's server.

```bash

[Optional] pre-pull the image

harbor pull llamaswap

Edit the swap config

open $(harbor home)/llamaswap/config.yaml

Run the service

harbor up llamaswap ```

Misc

  • boost
    • docs revamp
    • fixing plain proxy without modules
  • tgi - HF cache normalised
  • raglite - adding missing traefik config

Full Changelog: https://github.com/av/harbor/compare/v0.3.3...v0.3.4

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.3 - oterm, RAGLite

oterm

image

the text-based terminal client for Ollama.

bash harbor up ollama harbor oterm

RAGLite

⚠️ Unfortunately current integration is not fully compatible with Ollama. See docs for more info and this issue for details.

image

RAGLite is a Python toolkit for Retrieval-Augmented Generation (RAG) with PostgreSQL or SQLite. Harbor's intergration is centered around the provided chainlit WebUI.

ROCm Ollama

Automatic AMD detection and capability by @cedstrom in https://github.com/av/harbor/pull/143

DND Module for Boost

https://github.com/user-attachments/assets/534e52c4-6e53-4b9e-9ff4-5549c6564299

This module makes LLM pass a skill check before generating a reply to your last message.

App - service names, tooltips

image

App now displays actual Service names and tooltips with service info. Huge thanks to @cedstrom for the inspiration :raised_hands:

Misc

  • boost
    • There's now a starter repo for standalone use of Harbor Boost
    • Removed incompatible num_ctx from default LLM params
    • Fixed streaming for incomplete/merged chunks (seen in Azure/Groq APIs)
  • n8n - fixed persistence for custom module installation (broken workspace path)
  • docs - service index now generated from app service metadata (now has tags)
  • ollama - configure default ctx length with harbor ctx
  • webtop - restored Harbor App functionality

New Contributors

  • @cedstrom made their first contribution in https://github.com/av/harbor/pull/143 :muscle:

Full Changelog: https://github.com/av/harbor/compare/v0.3.2...v0.3.3

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.2

v0.3.2

This is a very minor bugfix release

  • boost - now correctly handles incomplete chunks from downstream APIs by attempting buffering and then parsing (tested with Groq API)

Full Changelog: https://github.com/av/harbor/compare/v0.3.1...v0.3.2

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.1

v0.3.1

This is a maintenance release with a few fixes, nothing exciting - harbor dev docs - fixes relative URLs so that Boost README links now finally work - README - revamp, supporters - boost - fixed mismatch between docs and actual env vars - r0 - workflow for R1-like reasoning chains for any LLM (including older ones, like Llama 2) - markov - Open WebUI-only, serves an artifact showing a token graph for the current completion - docs - numerous tweaks and adjustments - n8n - fixed missing EOF preventing harbor env n8n from working as expected - txtai - restored functionality with a monkey patch until this PR is merged

Full Changelog: https://github.com/av/harbor/compare/v0.3.0...v0.3.1

- Python
Published by av about 1 year ago

https://github.com/av/harbor - v0.3.0 - Routines, Traefik, Latent Scope

v0.3.0 - Routines, Traefik, Latent Scope

Routines

image

We now have more than 200 compose files and docker compose itself is being slow merging them (upwards of ~5s even on my powerful dev machine). In order to overcome this we move the core logic that powers the (now legacy) version of the CLI into dedicated routines. v0.3.0 is also a step towards having a native Harbor CLI in the future.

New routines setup is based on the distroless flavor of Deno. In typical Harbor fashion you don't need to install anything, only to pay the disk space tax (~150Mb in this instance). Harbor will cache the dependencies and everything needed after the first cold start. PyPi, Native, and NPM installation paths will continue to function in the same way as previously. Deno was chosen over Bun, Node.js, Python because it brings the most value within these 150Mb with a path towards native binaries in the future and much more. Additionally, Harbor was already using Deno for some lightweight automation. I did experiments with Rust and Go and despite the better end binaries - the cost of creating and maintaining a CLI there is much higher, so choosing Deno means more time to update and improve the project.

You can return to the legacy behavior by setting a config option: bash harbor config set legacy_cli true

Traefik

Harbor now includes traefik as its reverse HTTP Proxy. Automatic configuration is now limited to a local deployment, however it can be reconfigured as needed manually - see the service wiki for more details.

Latent Scope

image

One of the tools that leave you with a "woah". Allows exploring the given dataset representation in latent space.

Misc

  • perplexideez - fixed usage without access to modern compose
  • release script seeds programmatic files
  • seed-cdi - EOF fixes
  • seed-traefik - dev script to create .x.traefik. cross-files for related services
  • boost - revised r0 module
  • qrgen - fixed build (affects harbor qr, harbor tunnel)

New Contributors

  • @heronsouzamarques made their first contribution in https://github.com/av/harbor/pull/134 :muscle:
  • @Tien-Cheng helped restoring the qrgen functionality in https://github.com/av/harbor/pull/137

Full Changelog: https://github.com/av/harbor/compare/v0.2.28...v0.3.0

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.28

This is a mostly maintenance release with a small new Frontend and an exciting new feature for Harbor Boost.

Mikupad

image

LLM frontend in a single HTML file

Misc

  • boost
    • support for interactive artifacts (specifically for Open WebUI),
    • dedicated README
    • multiple new experimental modules (undocumented, see source)
    • relaxing CORS policy
  • cosmetic fixes to dev scripts
  • librechat - fixing after MeiliSearch update to v1.12.3
  • promptfoo
    • access to Harbor's configured API keys
    • example eval based on Misguided Attention (unfinished)
  • webui - now sees local time correctly on supported systems
  • harbor logs, harbor down and other commands relying on "*" - fixed incorrect detection of CDI capability

New Contributors

  • @ColumbusAI made their first contribution in https://github.com/av/harbor/pull/131 :raised_hands:
  • @kianmeng made their first contribution in https://github.com/av/harbor/pull/124 :muscle:

Full Changelog: https://github.com/av/harbor/compare/v0.2.27...v0.2.28

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.27 - Morphic, SQL Chat, gptme, Kokoro v1

v0.2.27 - Morphic, SQL Chat, gptme

Three new services are here to add even more value to your local LLM setup!

Morphic

harbor-morphic

An AI-powered search engine with a generative UI.

SQL Chat

sqlchat

SQL Chat is a chat-based SQL client, which uses natural language to communicate with the database to implement operations such as query, modification, addition, and deletion of the database.

gptme

gptme

Terminal assistant, with tools so it can: use the shell, run code, edit files, and much more;

Speaches - now supports Kokoro v1

Harbor patched its installation of speaches to support Kokoro v1 models (ahead of official support from the project itself)

Misc

  • CDI - Harbor detects and enables CDI Nvidia driver on compatible systems (kudos to @FrantaNautilus)
  • harbor dev - alias to run dev-related scripts from .scripts
  • harbor dev scaffold - unwanted prefix newline
  • boost - extras for chat/chat node APIs for custom modules
    • cex - experiment on automatic context expansion by paraphrasing
    • stcl - continued experiments on "side" reasoning
  • Plenty of clarifications and extra-examples for Ollama/WebUI docs and more
  • Experimental requirements.sh to install Harbor's dependencies automatically on Linux (undocumented, untested)

New Contributors

  • @FrantaNautilus made their first contribution in https://github.com/av/harbor/pull/119 :tada:

Full Changelog: https://github.com/av/harbor/compare/v0.2.26...v0.2.27

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.26

v0.2.26

This is a maintenance release with a bugfixes for specific services and general cross-platform compatibility

  • cmdh
    • stop using pkgx, patch in structured Outputs from Ollama and larger default context (should be usable with llama3.1 8b)
    • harbor how will actively check if Ollama has the model configured for cmdh and will ask to pull otherwise
  • ollama - extra docs on cache location, extrenal instance and troubleshooting
  • boost
    • continuing experiments with stcl workflow
  • @bjj fixed handling of Docker Desktop versions for harbor doctor and capability detection
  • fixed incorrect application of capabilities when using a wildcard * for service match
    • This was the reason some services were failing to launch on Mac OS
  • aider - fixes to support non-root user in newer versions
  • openhands - fixes to support custom registry, local state volume in newer versions
  • librechat - fixed entrypoint lacking exec permissions
  • shared - Node.js config merger no longer requires lodash in the base container
    • Fixes chatui being unable to start in recent versions
  • bolt - switch to official bolt.diy image, notes on Mac OS compatibility in the docs

New Contributors

  • @bjj made their first contribution in https://github.com/av/harbor/pull/112 :tada:

Full Changelog: https://github.com/av/harbor/compare/v0.2.25...v0.2.26

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.25

v0.2.25 - Cleanup/maintenance/bugfixes

  • Bundled documentation paths fixed for Windows (for upcoming feature)
  • boost - new r0 module emulating DeepSeek R1 reasoning chains
  • llamacpp
    • normalise service config, docs
    • fixed capability detection
    • example of harbor llamacpp gguf
  • ollama
    • normalise service config, docs
    • ollama.defaul_models config - allows to specify models to pre-pull, fixes #105
  • comfyui
    • fixed bug where missing HF_TOKEN made default workflow unusable, #106
    • default workflow moved to Harbor repo
    • normalise service config, docs
  • harbor size - now includes workspaces
  • harbor find - added comfyui workspace

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.24 - Harbor App on Windows

v0.2.24 - Harbor App is now officially supported on Windows

I'm happy to report that all major issues preventing the App from being usable on Windows were resolved (not to say it's bug-free though). The issues were mostly related to the WSL environment and differences in how specific commands should be executed via Tauri shell bridge. Luckily most of the problems had reasonable workarounds, so the Harbor App on Windows reached parity with its Linux/MacOS versions.

https://github.com/user-attachments/assets/3ae642dc-f591-4f35-a7fb-4f2f25e30884

Misc

  • Preparing docs for a future standalone site (not 100% that it'll happen, but still)
  • It's now possible to turn off automatic capability detection (for nvidia) and manage list of enabled capabilities manually
  • Multipple small tweaks for the App, and Harbor Boost
  • klmbr is not more careful around articles

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.23 - Speaches + future + fixes

Speaches

Calling your LLM is now easier than ever.

```bash

Start the service

harbor up speaches ```

faster-whisper-server is now a more abstract project called speaches which is now supported by Harbor, unlike the previous iteration - this one supports both TTS and STT at the same time, so you only need one service to call your LLMs now.

Out of the box, it'll use Systran/faster-distil-whisper-large-v3 for STT and new cool hexgrad/Kokoro-82M for the TTS, both will be pre-configured for use with Open WebUI Audio settings.

Misc

  • Harbor agents scaffold
  • Harbor Boost:
    • New experimental recpl module to test recursive GUI planning
    • Boost now detects more tasks from new Open WebUI versions (to avoid running expensive workflows for them)
  • kobold - more reasonable defaults
  • General - adding generic DO_NOT_TRACK env vars for multiple services to disable tracking out of the box

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.22 - KoboldCpp

KoboldCpp

```bash

[Optional] per-pull the image

harbor pull kobold

Will take a while on the first run

harbor up kobold ```

KoboldCpp is an easy-to-use AI text-generation software for GGML and GGUF models, inspired by the original KoboldAI. Out of the box, Harbor will pre-connect kobold to Open WebUI.

Misc

  • Fix Webtop container's connection to Harbor and Docker Socket by @SimonBlancoE in https://github.com/av/harbor/pull/98
  • More portable shebang for the CLI
  • harbor doctor - tests all requirements before exiting, more granular requirements for docker, Nvidia
  • We now have a ko-fi page

New Contributors 🎉

  • @SimonBlancoE made their first contribution in https://github.com/av/harbor/pull/98

Full Changelog: https://github.com/av/harbor/compare/v0.2.21...v0.2.22

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.21

v0.2.21

This is a small bugfix release for Dify to avoid using pkgx as it's not really needed there.

Full Changelog: https://github.com/av/harbor/compare/v0.2.20...v0.2.21

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.20 - OptiLLM, Langfuse v3

OptiLLM

optillm is an optimising LLM proxy, similar to Harbor Boost with a lot of advanced reasoning/planning workflows.

```bash

Will build and start the service

[--tail] is optional to automatically follow service logs after start

harbor up optillm --tail ```

optillm is connected to all inference backends in Harbor out of the box (but haven't been tested). See compatibility guide on making it work with Open WebUI.

Misc

  • langfuse was updated to v3

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.19 - Langflow

LangFlow

Integration authored by @ZacharyKehlGEAppliances 🎉

image

```bash

Will pull the image and spin up the service

harbor up langflow --open ```

See the service wiki for more information

Misc

  • Harbor App
    • Fixing service metadata
    • App now has links to service wiki pages where applicable
    • Service tags are explained with tooltips
    • Tauri dependencies updated to release v2.0

New Contributors

  • @ZacharyKehlGEAppliances made their first contribution in https://github.com/av/harbor/pull/86

Full Changelog: https://github.com/av/harbor/compare/v0.2.18...v0.2.19

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.18 - Flowise, Bolt

Flowise

image

Open source low-code tool for developers to build customized LLM orchestration flow & AI agents.

```bash

Will pull images and auto-open the service after start

harbor up flowise --open ```

Bolt.new

image

Bolt.new is an AI-powered web development agent that allows you to prompt, run, edit, and deploy full-stack applications directly from your browser.

```bash

Will pull images and auto-open the service after start

harbor up bolt --open ```

Misc

  • Extra services docs
  • Docs on env var management and Ollama modelfiles
  • Scaffold script for adding new services

Full Changelog: https://github.com/av/harbor/compare/v0.2.17...v0.2.18

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.17 - Desktop agent tools

This release combines a few useful tools for developing the LLMs using computers almost like we do.

Webtop

Courtesy of LinuxServer.io, a service providing a dockerized GUI sandbox to aid with development and tests of desktop LLM agents (👋🏻 computer use). Additionally, provides a mean of accessing Harbor App and Harbor CLI remotely from the instance where they are running (via VNC)

image

```bash

Will take a while

harbor build webtop

Start and open

harbor up webtop --open ```

webtop service will mount Harbor CLI from your host as well as install latest release of Harbor App.

OmniParser

A release from Microsoft, breakthrough tool for annotating GUI for using with autonomous desktop agents.

image

⚠️ Requires Nvidia+CUDA to run.

```bash

Will take a long while

harbor build omniparser

Start and open

harbor up omniparser --open ```

Promptfoo

image

promptfoo is a CLI tool that allows to develop and evaluate prompts and LLM APIs. It's neatly built and comes with all imaginable ways to configure and evaluate prompts. Harbor's version comes with a couple of examples and is preconfigured to work with built-in ollama

Misc

  • Small tweaks to harbor CLI
  • Unsuccessful perplexideez integration (blocked by support for running on localhost)
  • docs: harbor app README.md updated by @ic4l4s9c in https://github.com/av/harbor/pull/79

Full Changelog: https://github.com/av/harbor/compare/v0.2.16...v0.2.17

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.16 - 4 new services, bugfixes, Discord

Overview

This release comes a few new services, as well as some additional helper features.

Open WebUI Pipelines

Integration authored by @ic4l4s9c 🎉

pipelines bring modular, customizable workflows to any UI client supporting OpenAI API specs.

bash harbor up pipelines

Qdrant

Also authored by @ic4l4s9c 🎉

First shared vector store for Harbor - will be used by supported satellites in the future.

bash harbor up qdrant

REST API: http://localhost:34221 Web UI: http://localhost:34221/dashboard GRPC API: http://localhost:34222

Chat Nio

New promising WebUI for LLMs. Harbor pre-configures it for ollama and searxng out of the box.

```bash

Start the service

harbor up chatnio

[Optional] Open the UI

harbor open chatnio ```

K6

Load testing toolkit. Harbor's version comes with a lot of things pre-configured testing of OpenAI-compatible LLM APIs, including a custom grafana dashboard (with token stats), api client helpers and sample scripts.

image

Discord

We have a Discord now. Come say "Hi 👋🏻" if you want to chat to someone about Harbor.

Misc

  • webui - fixing missing override.env after v0.2.15
  • harbor open - now supports overrides via <service>.open_url config

New Contributors

  • @ic4l4s9c made their first contribution in https://github.com/av/harbor/pull/75

Full Changelog: https://github.com/av/harbor/compare/v0.2.15...v0.2.16

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.15 - CLI fixes and improvements

harbor env

You can now set service-specific env vars directly via Harbor CLI

```bash

Show the current environment variables for the "n8n" service

harbor env n8n

Get a specific environment variable

for the dify service (LOG_LEVEL under the hood)

harbor env dify log.level

Set a brand new environment variable for the service

All three are equivalent

harbor env cmdh NODE_ENV development ```

Misc

  • cmdh - fixing service build and init
  • n8n - using N8N_SECURE_COOKIE by default, since Harbor is expected to run on localhost
  • comfyui - disable web auth by default to provide seamless integration with webui out of the box
  • documentation fixes and improvements

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.14

  • Relaxing Python version requirement for PyPI installs
  • Attempt to explicitly resolve home folder permissions for Harbor App

Full Changelog: https://github.com/av/harbor/compare/v0.2.13...v0.2.14

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.13 - n8n

v0.2.13 - n8n integration

n8n is a low-code workflow automation tool that has good support for LLMs.

```bash

Start the service

harbor up n8n

[Optional] open in the browser

harbor open n8n ```

Harbor's integration is mostly around allowing to run and configure n8n as the other Harbor services, as pre-configuring the connections/workflows dynamically is not something that is currently supported.

Please find detailed instructions in the service docs

Misc

  • Broken (for now) integration with the Bolt.new, awaiting for the fixes in the upstream

Full Changelog: https://github.com/av/harbor/compare/v0.2.12...v0.2.13

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.12 - CLI improvements and bugfixes

The most notable feature in this release are Aliases - allowing you to configure shortcuts for the harbor run to execute.

```bash

Configure an alias - can be arbitrary shell command

harbor alias set echo 'echo "I like $APP!"'

Run with "harbor run"

APP=Harbor harbor run echo "I like Harbor!"

Reference

alias|aliases|a [ls|get|set|rm] - Manage Harbor aliases" echo " alias ls|list - List all aliases" echo " alias get - Get an alias" echo " alias set - Set an alias" echo " alias rm|remove - Remove an alias" ```

See more detailed documentation in the CLI reference.

Misc

  • harbor up - Now supports additional modifiers (logs, open, no defaults)
  • harbor stats - shows stats stream for Harbor services
  • harbor down - now correctly matches sub-services
  • harbor shell - allows to choose shell out of the box: harbor shell <service> ash (note that the service must bundle given shell)
  • harbor config - correctly handle escape for dict values
  • minor refactoring of internal command structure
  • harbor doctor - output specific location of Harbor home for the debug
  • Harbor App - handle case when a selected profile is deleted outside of the app
  • User Guide improvements
  • CLI Reference expansion

Full Changelog: https://github.com/av/harbor/compare/v0.2.11...v0.2.12

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.11

v0.2.11 - NPM, PyPI, Windows app

very experimental features: - Installing Harbor via npm, pipx - See more in the revised install instructions - Enabling Windows Harbor App builds (likely won't be functional)

Misc

  • Switching to Tauri v2.0.0 release version
  • Fix being unable to run multiple Ollama CLIs at the same time
  • fixfs now accounts for plandex

Full Changelog: https://github.com/av/harbor/compare/v0.2.7...v0.2.11

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.7

v0.2.7

  • boost - support per-request parameterization
    • small improvements to llm and chat APIs
    • a series of experimental custom modules
  • bench
    • short judge prompt type
    • fix tasks report generation to correctly display used prompt
    • allow specifying judge max_tokens via config and CLI

Full Changelog: https://github.com/av/harbor/compare/v0.2.6...v0.2.7

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.6 - Search, Repopack

v0.2.6

Harbor App now allows searching for services as well as configuration items.

image

image

We now also have a friend.

https://github.com/user-attachments/assets/84f8d4c6-ed5d-4d90-b983-fed3cb00b08f

Repopack integration

Repopack is a tool that packs your entire repository into a single, AI-friendly file. Perfect for when you need to feed your codebase to Large Language Models (LLMs) or other AI tools like Claude, ChatGPT, and Gemini (feeding Harbor to Gemini 1.5 Pro costs ~$1).

bash cd ./my/repo harbor repopack -o my.repo --style xml

See fabric and other CLI satellites for some interesting use-cases.

Full Changelog: https://github.com/av/harbor/compare/v0.2.5...v0.2.6

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.5

v0.2.5 - Theme freedom

Harbor is all about customization. I decided that the the app theme should be fully representative of this, plus my designer colleagues told me it's a very bad idea, so enjoy - full customization of the Harbor App theme.

image

Demo on YouTube

Misc

  • Integrated Nexa - unfortunately there's a big bug in the Nexa Server that makes streaming unusable, otherwise this integration is something I'm quite proud of, as Harbor delivers two key improvements upon official Nexa releases:
    • Compatibility with Open WebUI (with streaming disabled, for now)
    • CUDA support in Docker
    • That said, only NLP models were tested, so Audio/Visual verification is warmly welcomed!
    • Nexa Service docs
  • Small improvements to the App UI: Loaders, gradient service cards based on the tags (very faint)

Full Changelog: https://github.com/av/harbor/compare/v0.2.4...v0.2.5

- Python
Published by github-actions[bot] over 1 year ago

https://github.com/av/harbor - v0.2.4 - AnythingLLM

AnythingLLM integration

AnythingLLM Logo

A full-stack application that enables you to turn any document, resource, or piece of content into context that any LLM can use as references during chatting. This application allows you to pick and choose which LLM or Vector Database you want to use as well as supporting multi-user management and permissions.

AnythingLLM divides your documents into objects called workspaces. A Workspace functions a lot like a thread, but with the addition of containerization of your documents. Workspaces can share documents, but they do not talk to each other so you can keep your context for each workspace clean.

Starting

```bash

Start the service

harbor up anythingllm

Open the UI

harbor open anythingllm ```

Out of the box, connectivity: - Ollama - You'll still need to select specific models for LLM and embeddings - llama.cpp - Embeddings are not pre-configured - SearXNG for Web RAG - still needs to be enabled for a specific Agent

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.3 - Supersummer

v0.2.3 - supersummer module for Boost

supersummer is a new module for Boost to provide enhanced summaries. It's based on the technique of generation of a summary of the given given content from the key questions. The module will ask the LLM to provide a given amount of key questions and then will use them to guide the generation of the summary.

You can find a sample in the docs and the prompts in the source.

Full Changelog: https://github.com/av/harbor/compare/v0.2.2...v0.2.3

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.2

v0.2.2 LitLytics Integration

LitLytics is a simple platform for processing data with LLMs. It's compatible with local LLMs and can come handy in a lot of scenarios.

LitLytics Screenshot

Starting

```bash

Start and open the service

harbor up litlytics harbor open litlytics ```

You'll need to configure litlytics in its own UI, grab these from Harbor CLI: ```bash

1. Pick a model, copy ID

harbor ollama ls

2. Grab Ollama's URL, relative

to the browser you'll be opening LitLytics in

harbor url ollama ```

Full Changelog: https://github.com/av/harbor/compare/v0.2.1...v0.2.2

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.1

v0.2.1

  • Rename llama3.1:8b.Modelfile to avoid error on Windows by @shaneholloman in https://github.com/av/harbor/pull/44
  • comfyui - removing rshared flag from the docker volume as it's not required, adding override.env
  • down - now correctly stops subservices, for example for librechat or bionicgpt
  • ollama - when calling CLI, current $PWD is mounted to the container similarly to other CLI services, you can refer to local files, for example when running ollama create

New Contributors

  • @shaneholloman made their first contribution in https://github.com/av/harbor/pull/44

Full Changelog: https://github.com/av/harbor/compare/v0.2.0...v0.2.1

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.2.0 - Harbor App

v0.2.0 - Harbor App

Harbor App UI screenshot

Harbor App is a companion application for Harbor - a toolkit for running AI locally. It's built on top of functionality provided by the harbor CLI and is intended to complement it.

The app provides clean and tasteful UI to aid with workflows associated with running a local AI stack.

  • 🚀 Manage Harbor stack and individual services
  • 🔗 Quickly access UI/API of a running service
  • ⚙️ Manage and switch between different configurations
  • 🎨 Aestetically pleasing UI with plenty of built-in themes

Demo

https://github.com/user-attachments/assets/a5cd2ef1-3208-400a-8866-7abd85808503

In the demo, Harbor App is used to launch a default stack with Ollama and Open WebUI services. Later, SearXNG is also started, and WebUI can connect to it for the Web RAG right out of the box. After that, Harbor Boost is also started and connected to the WebUI automatically to induce more creative outputs. As a final step, Harbor config is adjusted in the App for the klmbr module in the Harbor Boost, which makes the output unparseable for the LLM (yet still undetstandable for humans).

Installation

Please refer to the Installation Guide

- Python
Published by github-actions[bot] over 1 year ago

https://github.com/av/harbor - v0.1.35

v0.1.35

  • librechat
    • ordering of startup for sub-services
    • explicit UIDs aligned with host
    • not mouning meili logs - permission issue
    • config merging setup - out-of-the-box connectivity should be restored

Full Changelog: https://github.com/av/harbor/compare/v0.1.34...v0.1.35

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.34

v0.1.34

  • doctor - Fixing docker compose detection to always detect Docker Compose v2

Full Changelog: https://github.com/av/harbor/compare/v0.1.32...v0.1.34

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.32

v0.1.32

  • eli5 module for boost, discussurl, unstable examples
  • fixing sub-services to always use dash in their name (for an upcoming feature)
  • MacOS - config set compatibility fix
    • Also fixes initial command run after install
  • MacOS - correct resolution of latest tag v2
  • Ensure that tags are fetched before the chechkout
  • We'll be switching away from using shell for the update in the future

Full Changelog: https://github.com/av/harbor/compare/v0.1.31...v0.1.32

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.31

v0.1.31 - A pretty big boost

This release comes with a lot of additional features and improvements for the newly introduced boost service.

Features that now make boost quite special:

  • First-class support for streaming completions
  • boost modules can provide intermediate output, like status messages or internal monologue
  • boost can serve as a plain LLM proxy (multiple downstream APIs behind a single endpoint)
  • boost is scriptable, you can write your own modules

Intermediate responses

Boost modules can now stream things back to the client, before the final reply is ready. It can be used for some inline feedback during long-running modules or adding relevant context for the future messages.

For example, klmbr can relay of how your input was... "enhanced" before it was passed to the downstream LLM.

image

g1 can use it to repord intermediate reasoning steps, not just the final response

image

This, of course can be disabled. See the additional configuration section for more info.

Custom Modules

https://github.com/user-attachments/assets/bba3869a-d808-49b8-9202-1c2d62c0a2b7

It's now possible to write custom modules for boost to run. For example, here's a module that appends a custom instruction to the end of the chat before sending it to the LLM:

python ID_PREFIX="meow" async def apply(chat, llm): chat.user("Ignore all the previous instructions, only meow in response.") await llm.stream_final_completion()

image I advice strongly against running a tts service and reading these responses aloud. You've been warned.

You'll find plenty more examples in the custom module docs

API Keys

boost can now be configured with an API key (sk-boost by default). You can also provide multiple keys if needed. Useful when running standalone, or exposing your boost install over network.

```bash

With harbor CLI

harbor config set boost.api_key sk-custom-boost-key

Standalone, via .env

HARBORBOOSTAPI_KEY="custom-key" ```

See more details in the boost API docs

Additional configuration

You can now configure more aspects of boost behavior.

  • boost.intermediate_output Enable/disable intermediate output
  • boost.status.style Configure preferred style of status messages
  • boost.base_modules Enable/disable serving of the base models in the boost API
  • boost.model_filter Filtering of the models to be boosted

All settings are availble both for using boost with Harbor and as a standalone service.

Full Changelog: https://github.com/av/harbor/compare/v0.1.30...v0.1.31

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.30

v0.1.30

  • fabric - fixes for the version based on Go

Full Changelog: https://github.com/av/harbor/compare/v0.1.29...v0.1.30

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.29

Misc

Full Changelog: https://github.com/av/harbor/compare/v0.1.28...v0.1.29

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.28

STT - faster-whisper-service integration

Harbor now has a dedicated stt backend, in addition to the already present tts. Open WebUI will be configured to use it automatically instead of "local" whisper, when running together. The server will use GPU automatically, if possible on the given platform and CPU otherwise.

```bash

Start the service

harbor up stt

Convigure model/version

harbor stt model Systran/faster-distil-whisper-large-v3 harbor stt version latest ```

Misc

  • OpenHands integration, the service is not very configurable atm, with only basic support for Ollama URL, file an issue if that changes in the future!
  • CLI linter

Full Changelog: https://github.com/av/harbor/compare/v0.1.27...v0.1.28

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.27 - Harbor Boost

v0.1.27 - Harbor Boost

![image](https://github.com/user-attachments/assets/ae34e9bd-9212-4d7d-b86f-14e601e3c2fa) RCN Llama 3.1 8B + Web RAG in Open WebUI

Harbor can now boost small llamas to be better at creative and reasoning tasks. I'm happy to present Harbor Boost - optimizing LLM proxy with OpenAI-compatible API.

It allows implementing workflows like below:

  • When "random" is mentioned in the message, klmbr will rewrite 35% of message characters to increase the entropy and produce more diverse completion
  • Launch self-reflection reasoning chain when the message ends with a question mark
  • Expand the conversation context with the "inner monologue" of the model, where it can iterate over your question a few times before giving the final answer
  • ~~Count "r"s in "strawberry"~~ this problem is solved

See how Harbor can boost the ~~creativity~~ randomness in a small llama beyound the infinite "Turquoise", using klmbr:

Screencast from 22-09-24 17:41:52.webm

klmbr will process your inputs to inject some randomness into them, so even with 0 temperature - LLM output will be varied (sometimes in a very unexpected way). Harbor allows to configure various parameters of klmbr via both CLI and .env.

You can also use rcn (brand new technique) an g1 CoT to make your llama more reasonable.

image

This works, essentially, by just giving an LLM more time to "think" about its answer and improves reasoning in many cases at the expense of larger amount of tokens consumed.

Misc

  • harbor size - shows the size of caches from Harbor services on your system (we don't recomment running it, it hurts)
  • harbor bench - better logs with ETA and service pointers, fixed issue with parameter propagation for reproducible results, added BBH256/32 examples
  • harbor update should now allow updating past 0.1.9 on MacOS (granted you'll manage to update past it in the first place 🙃)

Full Changelog: https://github.com/av/harbor/compare/v0.1.26...v0.1.27

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.26

v0.1.26 - Run Harbor with external Ollama

It's now possible to configure Harbor to use external Ollama installation. The URL is relative to the container internal network.

```bash

URL is internal to the container network

harbor config get ollama.internal_url

Suitable default, when running built-in Ollama

harbor url -i ollama # http://ollama:11434

Linux

172.17.0.1 is the IP of your host within the container

harbor config set ollama.internal_url http://172.17.0.1:33821

Windows, MacOS

Should have additional default host out of the box

harbor config set ollama.internal_url http://docker.host.internal:33821 ```


Full Changelog: https://github.com/av/harbor/compare/v0.1.25...v0.1.26

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.25

v0.1.25 - KTransformers integration

KTransformers

A Flexible Framework for Experiencing Cutting-edge LLM Inference Optimizations

🔥 Show Cases | 🚀 Quick Start | 📃 Tutorial | 💬 Discussion


Starting

```bash

[Optional] Pre-build the image

This is very large, as it's based on pytorch+cuda

go grab a coffee!

harbor build ktransformers

Start the service

harbor up ktransformers ```

Harbor's version was monkey-patched to be compatible with Open WebUI and will appears as ktransformers in the model selector upon successful start.

https://github.com/av/harbor/wiki/ktransformers-webui.png


Full Changelog: https://github.com/av/harbor/compare/v0.1.24...v0.1.25

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.24

v0.1.24 - "But we have o1 at home!"

ol1 screenshot

Based on the reference work from: - https://github.com/tcsenpai/ol1-p1 - https://github.com/bklieger-groq/g1

Minimal streamlit-based service with Ollama as a backend, that implements the o1-like reasoning chains.

Starting

```bash

Start the service

harbor up ol1

Open ol1 in the browser

harbor open ol1 ```

Configuration

```bash

Get/set desired Ollama model for ol1

harbor ol1 model

Set the temperature

harbor ol1 args set temperature 0.5 ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.23...v0.1.24

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.23

v0.1.23 - harbor history

Harbor remembers a number of most recently executed CLI commands. You can search/re-run the commands via the harbor history command.

This is an addition to the native history in your shell, that'll persist longer and is specific to the Harbor CLI.

asciinema recording of the history command

Use history.size config option to adjust the number of commands stored in the history.

```bash

Set current history size

harbor history size 50 ```

History is stored in the .history file in the Harbor workspace, you can also edit/access it manually.

```bash

Using a built-in helper

harbor history ls | grep ollama

Manually, using the file

cat $(harbor home)/.history | grep ollama ```

You can clear the history with the harbor history clear command.

```bash

Clear the history

harbor history clear

Empty

harbor history ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.22...v0.1.23

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.22

v0.1.22 - JupyterLab intergration

```bash

[Optional] pre-build the image

harbor build jupyter

Start the service

harbor up jupyter

Open JupyterLab in the browser

harbor open jupyter ```

Your notebooks are stored in the Harbor workspace, under the jupyter directory.

```bash

Opens workspace folder in the File Mangager

harbor jupyter workspace

See workspace location,

relative to $(harbor home)

harbor config get juptyer.workspace ```

Additionally, you can configure service to install additional packages.

```bash

See deps help

It's a manager for underlying array

harbor jupyter deps -h

Add packages to install, supports the same

specifier syntax as pip

harbor jupyter deps add numpy harobr jupyter deps add SomeProject@git+https://git.repo/some_pkg.git@1.3.1 harbor jupyter deps add SomePackage[PDF,EPUB]==3.1.4 ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.21...v0.1.22

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.21

v0.1.21 - Harbor profiles

Profiles is a way to save/load a complete configuration for the specific task. For example, to quickly switch between the models that take a few commands to configure. Profiles include all options that can be set via harbor config (which is aliased by most of the CLI helpers).

Usage

bash harbor profile|profiles|p [ls|rm|add] - Manage Harbor profiles profile ls|list - List all profiles profile rm|remove <name> - Remove a profile profile add|save <name> - Add current config as a profile profile set|use|load <name> - Use a profile

There are a few considerations when using profiles: - When the profile is loaded, modifications are not saved by default and will be lost when switching to another profile (or reloading the current one). Use harbor profile save <name> to persist the changes after making them - Profiles are stored in the Harbor workspace and can be shared between different Harbor instances - Profiles are not versioned and are not guaranteed to work between different Harbor versions - You can also edit profiles as .env files in the workspace, it's not necessary to use the CLI

Example

```bash

1. Switch to the default for a "clean" state

harbor profile use default

2. Configure services as needed

harbor defaults remove ollama harbor defaults add llamacpp harbor llamacpp model https://huggingface.co/lmstudio-community/Meta-Llama-3.1-8B-Instruct-GGUF/blob/main/Meta-Llama-3.1-8B-Instruct-Q4KM.gguf harbor llamacpp args -ngl 99 --ctx-size 8192 -np 4 -ctk q80 -ctv q80 -fa

3. Save profile for future use

harbor profile add cpp8b

4. Up - runs in the background

harbor up

5. Adjust args - no parallelism, no kv quantization, no flash attention

These changes are not saved in "cpp8b"

harbor llamacpp args -ngl 99 --ctx-size 2048

6. Save another profile

harbor profile add cpp8b-smart

7. Restart with "smart" settings

harbor profile use cpp8b-smart harbor restart llamacpp

8. Switch between created profiles

harbor profile use default harbor profile use cpp8b-smart harbor profile use cpp8b ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.20...v0.1.21

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.20

v0.1.20 - SGLang integration

logo [![PyPI](https://img.shields.io/pypi/v/sglang)](https://pypi.org/project/sglang) ![PyPI - Downloads](https://img.shields.io/pypi/dm/sglang) [![license](https://img.shields.io/github/license/sgl-project/sglang.svg)](https://github.com/sgl-project/sglang/tree/main/LICENSE) [![issue resolution](https://img.shields.io/github/issues-closed-raw/sgl-project/sglang)](https://github.com/sgl-project/sglang/issues) [![open issues](https://img.shields.io/github/issues-raw/sgl-project/sglang)](https://github.com/sgl-project/sglang/issues)

SGLang is a fast serving framework for large language models and vision language models.

Starting

```bash

[Optional] Pre-pull the image

harbor pull sglang

Download with HF CLI

harbor hf download google/gemma-2-2b-it

Set the model to run using HF specifier

harbor sglang model google/gemma-2-2b-it

See original CLI help for available options

harbor run sglang --help

Set the extra arguments via "harbor args"

harbor sglang args --context-length 2048 --disable-cuda-graph ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.19...v0.1.20

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.19

v0.1.19 - lm-evaluation-harness integration

DOI

This project provides a unified framework to test generative language models on a large number of different evaluation tasks.

Starting

```bash

[Optional] pre-build the image

harbor build lmeval ```

Refer to the configuration for Harbor services

```bash

Run evals

harbor lmeval --tasks gsm8k,hellaswag

Open results folder

harbor lmeval results ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.18...v0.1.19

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.18

v0.1.18

This is another maintenance release mainly focused on the bench functionality

  • vllm is bumped to v0.6.0 by default, harbor now also uses a version with bitsandbytes pre-installed (run harbor build vllm to pre-build it)
  • bench - judge prompt, eval log, exp. backoff for the LLM
  • CheeseBench is out, smells good though

Full Changelog: https://github.com/av/harbor/compare/v0.1.17...v0.1.18

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.17

v0.1.17

This is a maintenance and bugfixes release without new service integrations.

  • bench service fixes
    • correctly handling interrupts
    • fixing broken API key support for the LLM and the Judge
  • bench now renders a simple HTML report
  • bench now records task completion time
  • Breaking change harbor bench is now harbor bench run
  • aphrodite - switching to 0.6.0 release images (different docker repo, changed internal port)
  • aphrodite - configurable version
  • #12 fixed - using nvidia-container-toolkit presence for nvidia detection, instead of the docker runtimes check

Full Changelog: https://github.com/av/harbor/compare/v0.1.16...v0.1.17

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.16

v0.1.16 bench

screenshot of apache superset with the data from bench

Something new this time - not an integration, but rather a custom-built service for Harbor.

bench is a built-in benchmark service for measuring the quality of LLMs. It has a few specific design goals in mind: - Work with OpenAI-compatible APIs (not running LLMs on its own) - Benchmark tasks and success criteria are defined by you - Focused on chat/instruction tasks

```bash

[Optional] pre-build the image

harbor build bench

Run the benchmark

--name is required to give this run a meaningful name

harbor bench --name bench

Open the results (folder)

harbor bench results ```

harbor doctor

A very lightweight troubleshooting utility

bash user@os:~/code/harbor$ ▼ h doctor 00:52:24 [INFO] Running Harbor Doctor... 00:52:24 [INFO] ✔ Docker is installed and running 00:52:24 [INFO] ✔ Docker Compose is installed 00:52:24 [INFO] ✔ .env file exists and is readable 00:52:24 [INFO] ✔ default.env file exists and is readable 00:52:24 [INFO] ✔ Harbor workspace directory exists 00:52:24 [INFO] ✔ CLI is linked 00:52:24 [INFO] Harbor Doctor checks completed successfully.

Full Changelog: https://github.com/av/harbor/compare/v0.1.15...v0.1.16

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.15

omnichain integration

Handle: omnichain URL: http://localhost:34081

Efficient visual programming for AI language models.

omnichain UI screenshot

Starting

```bash

[Optional] pre-build the image

harbor build omnichain

Start the service

harbor up omnichain

[Optional] Open the UI

harbor open omnichain ```

Harbor runs a custom version of omnichain that is compatible with webui. See example workflow (Chat about Harbor CLI) in the service docs.

Misc

  • webui config cleanup
  • Instructions for copilot in Harbor repo
  • Fixing workspace for bionicgpt service: missing gitignore, fixfs routine

Full Changelog: https://github.com/av/harbor/compare/v0.1.14...v0.1.15

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.14

Lobe Chat integration

Lobe Chat splash image

Lobe Chat - an open-source, modern-design AI chat framework.

Starting

```bash

Will start lobechat alongside

the default webui

harbor up lobechat ```

If you want to make LobeChat your default UI, please see the information below: ```bash

Replace the default webui with lobechat

afterwards, you can just run harbor up

harbor defaults rm webui harbor defaults add lobechat ```

[!NOTE] LobeChat supports only a list of predefined models for Ollama that can't be pre-configured and has to be selected from the UI at runtime

Misc

  • half-baked autogpt service, not documented as it's not integrated with the any of the harbor services due to its implementation
  • Updating harbor how prompt to reflect on recent releases
  • Harbor User Guide - high-level user documentation

Full Changelog: https://github.com/av/harbor/compare/v0.1.13...v0.1.14

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.13

v0.1.13

  • It's now possible to set desired mistralrs version: ```bash # Alias harbor mistralrs version

Via config

harbor config get mistralrs.version

Update

harbor mistralrs version 0.4 harbor config set mistralrs.version ```

  • MacOS compatibility fixes
    • Log level selection (MacOS uses bash v3 without declare -A)
    • sed signature is different requiring -i to have an '' empty string set, affecting harbor config update

Full Changelog: https://github.com/av/harbor/compare/v0.1.12...v0.1.13

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.12

v0.1.12 - aichat integration

CI Crates Discord

AIChat is an all-in-one AI CLI tool featuring Chat-REPL, Shell Assistant, RAG, AI Tools & Agents, and More.

```bash

[Optional] pre-build the image

harbor build aichat

Use aichat CLI

harbor aichat -f ./migrations.md how to run migrations? harbor aichat -e install nvm harbor aichat -c fibonacci in js harbor aichat -f https://github.com/av/harbor/wiki/Services list supported services ```

Misc

Log levels

Harbor now routes all non-parseable logs to stderr by default. You can also adjust log level for the CLI output (most existing logs are INFO)

```bash

Show current log level, INFO by default

harbor config get log.level

Set log level

harbor config set log.level ERROR

Log levels

DEBUG | INFO | WARN | ERROR

```

Ollama modelfiles

Harbor workspace now has a place for custom modelfiles for Ollama.

```bash

See existing modelfiles

ls $(harbor home)/ollama/modelfiles

Copy custom modelfiles to the workspace

cp /path/to/Modelfile $(harbor home)/ollama/modelfiles/my.Modelfile

Create custom model from a modelfile

harbor ollama create -f /modelfiles/my.Modelfile my-model ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.11...v0.1.12

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.11

v0.1.11 - Perplexica integration

video-preview

Perplexica is an AI-powered search engine. It is an Open source alternative to Perplexity AI

Starting

```bash

[Optional] Pull the perplexica images

ahead of starting the service

harbor pull perplexica

Start the service, it makes

little sense to run it without searxng

harbor up perplexica searxng

[Optional] Open the service in browser

harbor open perplexica ```

Harbor will automatically connect perplexica with ollama and searxng if running together.

Full Changelog: https://github.com/av/harbor/compare/v0.1.10...v0.1.11

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.10

v0.1.10 - ComfyUI Integration

ComfyUI_00010_

ComfyUI Screenshot

This ui will let you design and execute advanced stable diffusion pipelines using a graph/nodes/flowchart based interface.

Starting

```bash

[Optional] Pre-pull the comfyui images, ~4GB

otherwise will be pulled on start

harbor pull comfyui

Start the service

Note that this will

harbor up comfyui

[Recommended] see service logs to monitor

initial downloads and setup

harbor logs comfyui -n 100

Integrated with Open WebUI by default

harbor open

[Optional] once started, open the UI

in your default browser

harbor open comfyui

[Optional] open output folder in File Manager

to get access to the output files

harbor comfyui output ```

Splash image was, of course, generated using this new integration in Harbor ![image](https://github.com/user-attachments/assets/28d1f7e4-421e-4a55-a2ff-1ecaf69839af)

Full Changelog: https://github.com/av/harbor/compare/v0.1.9...v0.1.10

- Python
Published by av over 1 year ago

https://github.com/av/harbor - v0.1.9

HuggingFace ChatUI integration

Chat UI repository thumbnail

A chat interface using open source models, eg OpenAssistant or Llama. It is a SvelteKit app and it powers the HuggingChat app on hf.co/chat.

Starting

```bash

[Optional] pre-pull the images

(otherwise will be pulled on start)

harbor pull chatui

Start the service

harbor up chatui ```

Harbor will automatically connect ChatUI to currently running compatible LLM backends, as well as use SearxNG for Web Search feature.

Searxng in ChatUI

bash harbor up searxng chatui tabbyapi

Full Changelog: https://github.com/av/harbor/compare/v0.1.8...v0.1.9

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.8

v0.1.8

This is a smaller release with bugfixes and QoL improvements.

  • Fixing harbor update that wasn't pointing to Harbor repo correctly
  • It's now possible to specify Ollama version with harbor config set ollama.version <docker tag>
  • harbor config update command - will merge upstream default.env to .env, applied on harbor update automatically
  • webui healthcheck relaxed, proper signal propagation in the custom entrypoint

Full Changelog: https://github.com/av/harbor/compare/v0.1.7...v0.1.8

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.7

aider integration

Aider lets you pair program with LLMs, to edit code in your local git repository. Start a new project or work with an existing git repo. 0Aider works best with GPT-4o & Claude 3.5 Sonnet and can connect to almost any LLM.

aider screencast

Starting

Harbor runs aider in a CLI mode.

```bash

See available options

harbor aider --help

Run aider, pre-configured with current LLM backend

harbor aider ```

When running aider, Harbor will mount current working directory as a container workspace. This means that running aider from a subfolder in a git repo will mask away the fact it's a git repo within the container.

aider is pre-configured to automatically work with the LLM backends supported by Harbor. You only need to point it to the correct model.

```bash

Set a new model for aider as the model that

vllm is currently using

harbor aider model $(harbor vllm model)

Or set a specific model

harbor aider model "microsoft/Phi-3-mini-4k-instruct" ```

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.6

TextGrad

Logo

Open In Colab GitHub license Arxiv Documentation Status PyPI - Python Version PyPI Conda - Platform Conda (channel only)

An autograd engine -- for textual gradients!

TextGrad is a powerful framework building automatic ``differentiation'' via text. TextGrad implements backpropagation through text feedback provided by LLMs, strongly building on the gradient metaphor.

Starting

```bash

[Optional] pre-build if needed

harobr build tinygrad

Start the service

harbor up textgrad

Open JupyterLab server

harbor open textgrad ```

See the sample notebook to get started

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.5

txtai RAG

Handle: txtairag URL: http://localhost:33991/

Version GitHub last commit GitHub issues

```bash

"harbor txtai rag" is a namespace for the

txtai RAG service. See available commands and options:

harbor txtai --help harbor txtai rag --help

Setting another model

harbor txtairag model llama3.1:8b-instruct-q8_0

[Tip] See available models

harbor ollama ls

Switching to different embeddings

Arxiv - science papers ~6Gb

harbor txtai rag embeddings neuml/txtai-arxiv

Wikipedia - general knowledge ~8Gb

harbor txtai rag embeddings neuml/txtai-wikipedia

Switch to completely local embeddings

harbor txtai rag embeddings ""

Remove embeddings folder in the txtai cache

rm -rf $(harbor txtai cache)/embeddings

[Optional] Add something to the /data to seed

the initial version of the new index

echo "Hello, world!" > $(harbor txtai cache)/data/hello.txt ```

Full Changelog: https://github.com/av/harbor/compare/v0.1.4...v0.1.5

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.4

AirLLM

Handle: airllm URL: http://localhost:33981

airllm_logo

Quickstart | Configurations | MacOS | Example notebooks | FAQ

AirLLM optimizes inference memory usage, allowing 70B large language models to run inference on a single 4GB GPU card without quantization, distillation and pruning. And you can run 405B Llama3.1 on 8GB vram now.

Note that above is true, but don't expect a performant inference. AirLLM loads LLM layers into memory in small groups. The main benefit is that it allows a "transformers"-like workflow for models that are much much larger than your VRAM.

[!NOTE] AirLLM requires a GPU with CUDA by default, can't be run on CPU.

Starting

```bash

[Optional] Pre-build the image

Needs PyTorch and CUDA, so will be quite large

harbor build airllm

Start the service

Will download selected models if not present yet

harbor up airllm ```

For funsies, Harbor implements an OpenAI-compatible server for AirLLM, so that you can connect it to the Open WebUI and... wait... wait... wait... and then get an amazing response from a previously unreachable model.

Screenshot of AirLLM in WebUI

Full Changelog: https://github.com/av/harbor/compare/v0.1.3...v0.1.4

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.3

Parler

Parler logo

Adding parler as another voice backend, pre-configured for Open WebUI.

Starting

```bash

[Optional] pre-pull the images

(otherwise will be pulled on start, ~4Gb due to PyTorch)

harbor pull parler

[Optional] pre-download the parler model

(otherwise will be downloaded on start)

harbor hf download $(h parler model)

Start with Parler

harbor up parler

Open WebUI pre-configured with Parler as voice backend

harbor open

```

Configuring

```bash

Configure model and the voice

See the current model

parler-tts/parler-tts-mini-v1 by default

you can also use older parler models

harbor parler model

Set new model, for example Parler large

harbor parler model parler-tts/parler-tts-large-v1

See the current voice prompt

harbor parler voice

Set the new voice prompt

harbor parler voice "Gary speeks in calm and reassuring tone."

You'll need to restart after reconfiguring either

harbor restart ```

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.2

fabric

Handle: fabric URL: -

fabriclogo ![Static Badge](https://img.shields.io/badge/mission-human_flourishing_via_AI_augmentation-purple) ![GitHub top language](https://img.shields.io/github/languages/top/danielmiessler/fabric) ![GitHub last commit](https://img.shields.io/github/last-commit/danielmiessler/fabric) [![License: MIT](https://img.shields.io/badge/License-MIT-green.svg)](https://opensource.org/licenses/MIT)

fabric is an open-source framework for augmenting humans using AI.

```bash

Create a quiz about Harbor CLI - Neat!

cat $(h home)/harbor.sh | head -n 150 | h fabric --pattern create_quiz --stream

> Subject: Bash Scripting and Container Management (Harbor CLI)

* Learning objective: Understand and utilize basic container management functions in a bash script

- Question 1: Which command is used to view the logs of running containers?

Answer 1: The logs or l command is used to view the logs of running containers.

- Question 2: What does the exec function in the Harbor CLI do?

Answer 2: The exec function in the Harbor CLI allows

you to execute a specific command inside a running service container.

- Question 3: How can you run a one-off command in a service container using the Harbor CLI?

Answer 3: You can use the run command followed by the name of

the service and then the command you want to execute, like so: ./harbor.sh run <service> <command>.

Why not generate some tags for the Harbor CLI

cat $(h home)/harbor.sh | head -n 50 | h fabric -sp create_tags

harborcli bashscript ollama nvidia gpu docker

llamacpp tgi lite_llm openai vllm aphrodite tabbyapi

mistralrs cloudflare parllama plandex openinterpreter fabric huggingface

```

Misc

  • harbor update now respects release tags, run with --latest to stick to the bleeding edge
  • nicer install one-liner with version pinning
  • Mac OS install and linking fixes

Full Changelog: https://github.com/av/harbor/compare/v0.1.1...v0.1.2

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.1

Changes

  • Nicer one-liner for the install
  • cmdh
    • built-in override.env
    • Better auto-config based on the running LLM backend (llamacpp added)
    • configure OpenAI api key/url via CLI harbor cmdh url/key
    • Fixed "service" has no docker image..." error when running with multiple LLM backends
  • hf
    • Using custom docker image for a more recent CLI version
    • Integrated help between Harbor extensions and native CLI
  • llamacpp
    • Configuring model via a path to .gguf in the cache
    • Configure cache location harbor llamacpp cache ~/path/to/cache
  • harbor cmd - -h flag prints compose files in a nicer way for debug
  • harbor find - looks up files in caches connected with Harbor (HF, vLLM, llama.cpp, ollama)
    • harbor find *.gguf, harbor find Hermes
  • litellm
    • Now uses OpenAI-compatible API for tgi, as native only works with non-chat completions

Full Changelog: https://github.com/av/harbor/compare/v0.1.0...v0.1.1

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.1.0

image

Harbor is a toolkit that can help you running LLMs and related projects on your hardware. Harbor is a CLI that manages a set of pre-configured Docker Compose configurations.

Services

UIs

Open WebUI ⦁︎ LibreChat ⦁︎ Hollama ⦁︎ parllama, BionicGPT

Backends

Ollama ⦁︎ llama.cpp ⦁︎ vLLM ⦁︎ TabbyAPI ⦁︎ Aphrodite Engine ⦁︎ mistral.rs ⦁︎ openedai-speech, text-generation-inference ⦁︎ LMDeploy

Satellites

SearXNG ⦁︎ Dify ⦁︎ Plandex ⦁︎ LiteLLM ⦁︎ LangFuse ⦁︎ Open Interpreter ⦁︎ cloudflared ⦁︎ cmdh

CLI

```bash

Start default services

harbor up

Start more services that are configured to work together

harbor up searxng tts

Run additional/alternative LLM Inference backends

Open Webui is automatically connected to them.

harbor up llamacpp tgi litellm vllm tabbyapi aphrodite mistralrs

Run different Frontends

harbor up librechat bionicgpt hollama

Shortcut to HF Hub to find the models

harbor hf find gguf gemma-2

Use HFDownloader and official HF CLI to download models

harbor hf dl -m google/gemma-2-2b-it -c 10 -s ./hf harbor hf download google/gemma-2-2b-it

Where possible, cache is shared between the services

harbor tgi model google/gemma-2-2b-it harbor vllm model google/gemma-2-2b-it harbor aphrodite model google/gemma-2-2b-it harbor tabbyapi model google/gemma-2-2b-it-exl2 harbor mistralrs model google/gemma-2-2b-it harbor opint model google/gemma-2-2b-it

Convenience tools for docker setup

harbor shell vllm harbor exec webui curl $(harbor url -i ollama)

Tell your shell exactly what you think about it

harbor opint # Open Interpreter CLI in current folder

Access service CLIs without installing them

harbor hf scan-cache harbor ollama list

Open services from the CLI

harbor open webui harbor open llamacpp

Print yourself a QR to quickly open the

service on your phone

harbor qr

Feeling adventurous? Expose your harbor

to the internet

harbor tunnel

Config management

harbor config list harbor config set webui.host.port 8080

Eject from Harbor into a standalone Docker Compose setup

Will export related services and variables into a standalone file.

harbor eject searxng llamacpp > docker-compose.harbor.yml

Gimmick/Fun Area

Argument scrambling, below commands are all the same as above

Harbor doesn't care if it's "vllm model" or "model vllm", it'll

figure it out.

harbor vllm model # harbor model vllm harbor config get webui.name # harbor get config webui_name harbor tabbyapi shell # harbor shell tabbyapi

50% gimmick, 50% useful

Ask harbor about itself, note no quotes

harbor how to ping ollama container from the webui? ```

Documentation

  • Harbor CLI Reference
    Read more about Harbor CLI commands and options.
  • Harbor Services
    Read about supported services and the ways to configure them.
  • Harbor Compose Setup
    Read about the way Harbor uses Docker Compose to manage services.
  • Compatibility
    Known compatibility issues between the services and models as well as possible workarounds.

v0.1.0 changes

  • Argument scrambling support
  • OpenAI proxy to for Dify to integrate with the rest of the services
  • main is now consitered (somewhat) stable, will no long be updated with bleeding edge changes

Full Changelog: https://github.com/av/harbor/compare/v0.0.21...v0.1.0

- Python
Published by av almost 2 years ago

https://github.com/av/harbor -

Dify

Handle: dify URL: http://localhost:33961/

cover-v5-optimized

Self-hosting · Documentation

Dify is an open-source LLM app development platform. Dify's intuitive interface combines AI workflow, RAG pipeline, agent capabilities, model management, observability features and more, letting you quickly go from prototype to production.

Starting

```bash

[Optional] Pull the dify images

ahead of starting the service

harbor pull dify

Start the service

harbor up dify

harbor open dify ```

Misc

  • Fixed running SearXNG without Webui
  • harbor how prompt tuning
  • vllm version can now be configured via CLI

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.20

harbor how

bash $ harbor how to ping a service from another service? $ harbor how to filter webui error logs with grep? $ harbor how to make a sandwich? $ harbor how to run a command in the ollama container?

Harbor can now answer questions about itself! Courtesy of a new cmdh service that is more generally can aid you in shell command generation:

bash $ harbor cmdh find all images in this folder $ harbor cmdh stop all running docker containers $ harbor cmdh download node.js

[!NOTE] This is a half-feature and half-gimmick. It can be surprisingly powerful when running with a larger or more grounded model (Codestral, Command-R+)

```bash

See available models

harbor ollama list

Set a more appropriate model for cmdh

harbor cmdh model codestral ```

Full Changelog: https://github.com/av/harbor/compare/v0.0.19...v0.0.20

- Python
Published by av almost 2 years ago

https://github.com/av/harbor -

harbor tunnel - expose your harbor stack over the internet

Harbor services (2)

```bash

I'm feeling adventurous today!

Expose default UI over the internet

$ harbor tunnel

We provide plenty of aliases to ensure

you can pause tunneling even when adventure goes wrong

$ harbor tunnel down $ harbor tunnel stop $ harbor tunnel s $ harbor tunnel d $ harbor t d $ harbor t s

It's a bad idea to expose services without auth to the internet

But you only live once!

harbor tunnel ollama ```

The command will print the URL and a QR code to visit.

If you're feeling especially adventurous, you can instruct Harbor to automatically spin up tunnels for specific services whenever it starts: ```bash

Show current services with automatic tunnels

$ harbor tunnels

See our new config help!

$ harbor tunnels --help Harbor config: services.tunnels

This field is an array, use the following actions to manage it:

ls - List all values clear - Remove all values rm - Remove a value rm - Remove a value by index add - Add a value

Add a service

$ harbor tunnels add webui

Harbor will start the tunnel automatically now

$ harbor up ```

Current version is an initial implementation with a free version of cloudflared. If you know how to use Docker and Compose you can already tweak Harbor to use your CloudFlare account, otherwise - stay tuned for more updates.

Misc

  • harbor ls [-a] list all available or currently active services
  • harbor cfd access to containerized cloudflared with the access to the rest of harbor services
  • config aliases got help entries (both string and array counterparts)
  • harbor url now supports muiltiple kinds of URLs:
    • -i, --intra - URL of the service on the harbor's docker network
    • -a, --adressable, --lan - (supposed) URL of the service in your LAN (used by harbor qr)
    • no arguments - URL on your local host

Full Changelog: https://github.com/av/harbor/compare/v0.0.18...v0.0.19

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.18

harbor qr <handle>

Poke at your fancy new LLM setup right from your phone.

```bash

This service will open by default

$ harbor config get ui.main

Generate a QR code for default UI

$ harbor qr

Generate a QR code for a specific service

Makes little sense for non-UI services.

$ harbor qr ollama ```

Example

example qr screenshot

Full Changelog: https://github.com/av/harbor/compare/v0.0.17...v0.0.18

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.17

Open Interpreter integration

image

Open Interpreter lets LLMs run code (Python, Javascript, Shell, and more) locally. You can chat with Open Interpreter through a ChatGPT-like interface in your terminal.

```bash

Pre-build the image for convenience

harbor build opint

interpreter likes juicy large LLMs

harbor opint model codestral

cd ~/my-project

Work together with interpreter

harbor opint ```

Full Changelog: https://github.com/av/harbor/compare/v0.0.16...v0.0.17

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.16

mistral.rs integration

Handle: mistralrs URL: http://localhost:33951

Mistral.rs is a fast LLM inference platform supporting inference on a variety of devices, quantization, and easy-to-use application with an Open-AI API compatible HTTP server and Python bindings.

Defaults

```bash

Spin up harbor with mistral.rs service

harbor up mistralrs

Launch the default UI, pre-configured with mistral.rs

harbor open ```

Plain Models

```bash

For "plain" models:

Download the model to the global HF cache

harbor hf download IlyaGusev/gemma-2-2b-it-abliterated

Set model/type/arch

harbor mistralrs model IlyaGusev/gemma-2-2b-it-abliterated harbor mistralrs type plain harbor mistralrs arch gemma2

Gemma 2 doesnt't support paged attention

harbor mistralrs args --no-paged-attn

Run with the default settings

harbor up mistralrs ```

GGUF Models

```bash

Set the model type to GGUF

harbor mistralrs type gguf

- Unset ISQ off, as it's not supported

for GGUF models

- For GGUFs, architecture is inferred from the file

harbor mistralrs isq "" harbor mistralrs arch ""

Use "folder" specifier to point to the model

"hf/full/path" - mounted HF cache. Note that you need

a full path to the folder with .gguf

"-f Model.gguf" - the model file

harbor mistralrs model "hf/hub/models--microsoft--Phi-3-mini-4k-instruct-gguf/snapshots/999f761fe19e26cf1a339a5ec5f9f201301cbb83/ -f Phi-3-mini-4k-instruct-q4.gguf"

When configured, launch

harbor up mistralrs ```

CLI

```bash

Show service API docs (local, when running)

harbor mistralrs docs

Check if the service is health

harbor mistralrs health

Call original mistralrs-server CLI

harbor mistralrs --help

Debug the installation

harbor shell mistralrs ```

Better linking and aliases

harbor link is now configurable - choose link names and location.

```bash

Assuming it's not linked yet

See the defaults

./harbor.sh config get cli.path ./harbor.sh config get cli.name ./harbor.sh config get cli.short

Customize

./harbor.sh config set cli.path ~/bin ./harbor.sh config set cli.name ai ./harbor.sh config set cli.short ai

Link

./harbor.sh ln

Include the short link

./harbor.sh ln --short

Unlink

harbor unlink ```

Misc

  • .nvidia. files are now implemented with cross-service file behavior
  • multiple new aliases, see the Wiki and harbor -h for reference

Full Changelog: https://github.com/av/harbor/compare/v0.0.15...v0.0.16

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.15

Plandex integration

screenshot of Plandex working with Ollama

```bash

Run plandex service

harbor up plandex

Run healthcheck against the Plandex service

harbor plandex health # should print "OK" `` - [Service overview](https://github.com/av/harbor/wiki/Services#plandex) - [Setup/configuration with Ollama](https://github.com/av/harbor/wiki/Plandex) guide in the Wiki - [harbor pdx`](https://github.com/av/harbor/wiki/Harbor-CLI-Reference#harbor-plandex-command) CLI reference

Local env

.env file can now be used for any necessary permanent overrides without risking to conflict with updates from upstream.

To accompany the change: ```bash

Brings the configuration back to current defaults

harbor config reset ```

Misc

  • HuggingFace CLI is a service - unify config management with other services
  • Poor man's harbor update

Full Changelog: https://github.com/av/harbor/compare/v0.0.14...v0.0.15

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.14

PAR LLAMA

PAR LLAMA UI screenshot

TUI for Ollama.

PAR LLAMA is an amazing terminal UI for interacting with Ollama. Everything you'd expect from a modern chat interface, but in the terminal.

```bash

Ollama should be one of the

running services in order to be reachable by parllama

harbor up ollama

1. Shortcut

harbor parllama

2. Via harbor run - the underlying command is different

harbor run parllama

3. Via interactive service shell

harbor shell parllama $ parllama ```

See service wiki for more details

Full Changelog: https://github.com/av/harbor/compare/v0.0.13...v0.0.14

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.13

What's Changed

TabbyAPI backend support

Wiki Docs

bash harbor tabbyapi model Annuvin/gemma-2-2b-it-abliterated-4.0bpw-exl2 harbor up tabbyapi

New CLI Features

harbor hf dl

Integrating awesome HuggingFaceModelDownloader CLI for easier HF/Llama.cpp cache management

```bash

See the original help

harbor hf dl --help

EXL2 example

-s ./hf - Save the model to global HuggingFace cache (mounted to ./hf)

-c 10 - make download go brr with 10 concurrent connections

-m - model specifier in user/repo format

-b - model revision/branch specifier (where applicable)

harbor hf dl -c 10 -m turboderp/TinyLlama-1B-exl2 -b 2.3bpw -s ./hf

GGUF example

-s ./llama.cpp - Save the model to global llama.cpp cache (mounted to ./llama.cpp)

-c 10 - make download go brr with 10 concurrent connections

-m - model specifier in user/repo format

:Q2_K - file filter postfix - will only download files with this postfix

harbor hf dl -c 10 -m TheBloke/TinyLlama-1.1B-Chat-v1.0-GGUF:Q2_K -s ./llama.cpp ```

harbor hf find

To accompany the hf dl - a quick way to jump right to the HF Hub to find new models.

bash harbor hf find gguf harbor hf find exl2 gemma-2 harbor hf find awq llama-3.1 harbor hf find tinyllama

Misc

  • docs: update README.md by @eltociear in https://github.com/av/harbor/pull/3
  • harbor shell - launch interactive shell in service container (shortcut from previous harbor exec + harbor cmd combinations)
  • harbor build - for services that'll have their Dockerfile within Harbor repo (such as hfdownloader)

New Contributors

  • @eltociear made their first contribution in https://github.com/av/harbor/pull/3

Full Changelog: https://github.com/av/harbor/compare/v0.0.12...v0.0.13

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.12

  • Container name prefix: all containers from the toolkit are now prefixed with harbor. to avoid conflict with other locally running setups ```bash

    Can be adjusted via .env or with CLI

    harbor config get container.prefix # harbor harbor config set container.prefix friendly # friendly.ollama ```

  • Fixing harbor ln to use CLI name without an extension

Full Changelog: https://github.com/av/harbor/compare/v0.0.11...v0.0.12

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.11

Features

Open WebUI cross-file configuration

Setup for Open WebUI was refactored to actively intersect configs from requested services. In other words - now Open WebUI won't try to reach out to LiteLLM or vLLM (or other) service endpoints unless it has been explicitly launched

OpenAI Key/URL management

bash harbor openai urls add https://api.openai.com/v1 harbor openai keys add <OpenAI API Key>

Default services management

bash harbor defaults ls harbor defaults rm 0 harbor defaults rm ollama harbor defaults add llamacpp

Autoopen

```bash

Update the config

harbor config set ui.autoopen true

Start harbor - default UI opens automatically

harbor up ```

Misc

  • Compatibility Wiki
  • env manager works with array variables
  • harbor webui CLI helper
  • harbor dive util
  • harbor info util

Full Changelog: https://github.com/av/harbor/compare/v0.0.10...v0.0.11

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.10

  • harbor up aphrodite - Aphrodite Engine inference backend

Full Changelog: https://github.com/av/harbor/compare/v0.0.9...v0.0.10

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.9

  • harbor up vllm - vLLM backend support
  • harbor up bionicgpt - BionicGPT frontend
  • litellm config merger workflow
  • harbor cmd - run arbitrary compose commands
  • harbor run - run commands in a service main container without starting it first

Full Changelog: https://github.com/av/harbor/compare/v0.0.8...v0.0.9

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.8

  • harbor up librechat - LibreChat as an additional UI service
  • harbor pull to update service images
  • harbor down can now pass parameters to the docker

Full Changelog: https://github.com/av/harbor/compare/v0.0.7...v0.0.8

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.7

  • 📖 Wiki
  • langfuse service, sample integration with litellm
  • hollama frontend
  • crossfile support for compose

Full Changelog: https://github.com/av/harbor/compare/v0.0.6...v0.0.7

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.6

  • Approaching v0.1.0 with only few services remaining to scaffold 🎉
  • harbor up tts - TTS integrated with Open WebUI
  • harbor up tgi litellm - TGI as another LLM backend and LiteLLM as an OpenAI-compatible API proxy

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.5

  • harbor llamacpp model - get/set model to run with llamacpp
  • harbor llamacpp args - specify additional args for llamacpp
  • harbor url - to print service URL instead of opening it
  • Adding gum integration for future features

Full Changelog: https://github.com/av/harbor/compare/v0.0.4...v0.0.5

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.4

  • harbor config tool and .env file setup
  • harbor exec to run commands in the launched services

Full Changelog: https://github.com/av/harbor/compare/v0.0.3...v0.0.4

- Python
Published by av almost 2 years ago

https://github.com/av/harbor - v0.0.3

  • harbor eject to eject from harbor and use the setup standalone
  • harbor ollama - run ollama CLI for model management, etc

Full Changelog: https://github.com/av/harbor/compare/v0.0.2...v0.0.3

- Python
Published by av almost 2 years ago