cortex VS llama.cpp

Compare cortex vs llama.cpp and see what are their differences.

cortex

Drop-in, local AI alternative to the OpenAI stack. Multi-engine (llama.cpp, TensorRT-LLM). Powers 👋 Jan (by janhq)

llama.cpp

LLM inference in C/C++ (by ggerganov)
InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
cortex llama.cpp
8 795
1,698 60,282
5.8% -
9.8 10.0
5 days ago 1 day ago
C++ C++
GNU Affero General Public License v3.0 MIT License
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

cortex

Posts with mentions or reviews of cortex. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-05-05.
  • Introducing Jan
    4 projects | dev.to | 5 May 2024
    Jan incorporates a lightweight, built-in inference server called Nitro. Nitro supports both llama.cpp and NVIDIA's TensorRT-LLM engines. This means many open LLMs in the GGUF format are supported. Jan's Model Hub is designed for easy installation of pre-configured models but it also allows you to install virtually any model from Hugging Face or even your own.
  • Ollama Python and JavaScript Libraries
    17 projects | news.ycombinator.com | 24 Jan 2024
    I'd like to see a comparison to nitro https://github.com/janhq/nitro which has been fantastic for running a local LLM.
  • FLaNK Weekly 08 Jan 2024
    41 projects | dev.to | 8 Jan 2024
  • Nitro: A fast, lightweight 3MB inference server with OpenAI-Compatible API
    9 projects | news.ycombinator.com | 5 Jan 2024
    Look... I appreciate a cool project, but this is probably not a good idea.

    > Built on top of the cutting-edge inference library llama.cpp, modified to be production ready.

    It's not. It's literally just llama.cpp -> https://github.com/janhq/nitro/blob/main/.gitmodules

    Llama.cpp makes no pretense at being a robust safe network ready library; it's a high performance library.

    You've made no changes to llama.cpp here; you're just calling the llama.cpp API directly from your drogon app.

    Hm.

    ...

    Look... that's interesting, but, honestly, I know there's this wave of "C++ is back!" stuff going on, but building network applications in C++ is very tricky to do right, and while this is cool, I'm not sure 'llama.cpp is in c++ because it needs to be fast' is a good reason to go 'so lets build a network server in c++ too!'.

    I mean, I guess you could argue that since llama.cpp is a C++ application, it's fair for them to offer their own server example with an openai compatible API (which you can read about here: https://github.com/ggerganov/llama.cpp/issues/4216, https://github.com/ggerganov/llama.cpp/blob/master/examples/...).

    ...but a production ready application?

    I wrote a rust binding to llama.cpp and my conclusion was that llama.cpp is pretty bleeding edge software, and bluntly, you should process isolate it from anything you really care about, if you want to avoid undefined behavior after long running inference sequences; because it updates very often, and often breaks. Those breaks are usually UB. It does not have a 'stable' version.

    Further more, when you run large models and run out of memory, C++ applications are notoriously unreliable in their 'handle OOM' behaviour.

    Soo.... I know there's something fun here, but really... unless you had a really really compelling reason to need to write your server software in c++ (and I see no compelling reason here), I'm curious why you would?

    It seems enormously risky.

    The quality of this code is 'fun', not 'production ready'.

  • Apple Silicon Llama 7B running in docker?
    5 projects | /r/LocalLLaMA | 7 Dec 2023
  • Is there any LLM that can be installed with out python
    2 projects | /r/LocalLLaMA | 5 Dec 2023

llama.cpp

Posts with mentions or reviews of llama.cpp. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-06-15.
  • Ollama v0.1.45
    7 projects | news.ycombinator.com | 15 Jun 2024
    Sorry it's taking so long to review and for the radio silence on the PR.

    We have been trying to figure out how to support more structured output formats without some of the side effects of grammars. With JSON mode (which uses grammars under the hood) there were originally quite a few issue reports namely around lower performance and cases where the model would infinitely generate whitespace causing requests to hang. This is an issue with OpenAI's JSON mode as well which requires the caller to "instruct the model to produce JSON" [1]. While it's possible to handle edge cases for a single grammar such as JSON (i.e. check for 'JSON' in the prompt), it's hard to generalize this to any format.

    Supporting more structured output formats is definitely important. Fine-tuning for output formats is promising, and this thread [2] also has some great ideas and links.

    [1] https://platform.openai.com/docs/guides/text-generation/json...

    [2] https://github.com/ggerganov/llama.cpp/issues/4218

  • Apple Intelligence, the personal intelligence system
    4 projects | news.ycombinator.com | 10 Jun 2024
    > Doing everything on-device would result in a horrible user experience. They might as well not participate in this generative AI rush at all if they hoped to keep it on-device.

    On the contrary, I'm shocked over the last few months how "on device" on a Macbook Pro or Mac Studio competes plausibly with last year's early GPT-4, leveraging Llama 3 70b or Qwen2 72b.

    There are surprisingly few things you "need" 128GB of so-called "unified RAM" for, but with M-series processors and the memory bandwidth, this is a use case that shines.

    From this thread covering performance of llama.cpp on Apple Silicon M-series …

    https://github.com/ggerganov/llama.cpp/discussions/4167

    "Buy as much memory as you can afford would be my bottom line!"

  • Partial Outage on Claude.ai
    1 project | news.ycombinator.com | 4 Jun 2024
    I'd love to use local models, but seems like most of the easy to use software out there (LM Studio, Backyard AI, koboldcpp) doesn't really play all that nicely with my Intel Arc GPU and it's painfully slow on my Ryzen 5 4500. Even my M1 MacBook isn't that fast at generating text with even 7B models.

    I wonder if llama.cpp with SYCL could help, will have to try it out: https://github.com/ggerganov/llama.cpp/blob/master/README-sy...

    But even if that worked, I'd still have the problem that IDEs and whatever else I have open already eats most of the 32 GB of RAM my desktop PC has. Whereas if I ran a small code model on the MacBook and connected to it through my PC, it'd still probably be too slow for autocomplete, when compared to GitHub Copilot and less accurate than ChatGPT or Phind for most stuff.

  • Why YC Went to DC
    3 projects | news.ycombinator.com | 3 Jun 2024
    You're correct if you're focused exclusively on the work surrounding building foundation models to begin with. But if you take a broader view, having open models that we can legally fine tune and hack with locally has created a large and ever-growing community of builders and innovators that could not exist without these open models. Just take a look at projects like InvokeAI [0] in the image space or especially llama.cpp [1] in the text generation space. These projects are large, have lots of contributors, move very fast, and drive a lot of innovation and collaboration in applying AI to various domains in a way that simply wouldn't be possible without the open models.

    [0] https://github.com/invoke-ai/InvokeAI

    [1] https://github.com/ggerganov/llama.cpp

  • Show HN: Open-Source Load Balancer for Llama.cpp
    6 projects | news.ycombinator.com | 1 Jun 2024
  • RAG with llama.cpp and external API services
    2 projects | dev.to | 31 May 2024
    The first example will build an Embeddings database backed by llama.cpp vectorization.
  • Ask HN: I have many PDFs – what is the best local way to leverage AI for search?
    10 projects | news.ycombinator.com | 30 May 2024
    and at some point (https://github.com/ggerganov/llama.cpp/issues/7444)
  • Deploying llama.cpp on AWS (with Troubleshooting)
    1 project | dev.to | 28 May 2024
    git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp LLAMA_CUDA=1 make -j
  • Devoxx Genie Plugin : an Update
    6 projects | dev.to | 28 May 2024
    I focused on supporting Ollama, GPT4All, and LMStudio, all of which run smoothly on a Mac computer. Many of these tools are user-friendly wrappers around Llama.cpp, allowing easy model downloads and providing a REST interface to query the available models. Last week, I also added "👋🏼 Jan" support because HuggingFace has endorsed this provider out-of-the-box.
  • Mistral Fine-Tune
    2 projects | news.ycombinator.com | 25 May 2024
    The output of the LLM is not just one token, but a statistical distribution across all possible output tokens. The tool you use to generate output will sample from this distribution with various techniques, and you can put constraints on it like not being too repetitive. Some of them support getting very specific about the allowed output format, e.g. https://github.com/ggerganov/llama.cpp/blob/master/grammars/... So even if the LLM says that an invalid token is the most likely next token, the tool will never select it for output. It will only sample from valid tokens.

What are some alternatives?

When comparing cortex and llama.cpp you can also consider the following projects:

ollama - Get up and running with Llama 3, Mistral, Gemma, and other large language models.

bionic-gpt - BionicGPT is an on-premise replacement for ChatGPT, offering the advantages of Generative AI while maintaining strict data confidentiality

gpt4all - gpt4all: run open-source LLMs anywhere

csvlens - Command line csv viewer

text-generation-webui - A Gradio web UI for Large Language Models. Supports transformers, GPTQ, AWQ, EXL2, llama.cpp (GGUF), Llama models.

nnl - a low-latency and high-performance inference engine for large models on low-memory GPU platform.

GPTQ-for-LLaMa - 4 bits quantization of LLaMA using GPTQ

Tribuo - Tribuo - A Java machine learning library

ggml - Tensor library for machine learning

hyperfine - A command-line benchmarking tool

alpaca.cpp - Locally run an Instruction-Tuned Chat-Style LLM

InfluxDB - Power Real-Time Data Analytics at Scale
Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured