[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[nongnu] elpa/gptel 85bd47cb4c 164/273: README: Add support for llama.cp
From: |
ELPA Syncer |
Subject: |
[nongnu] elpa/gptel 85bd47cb4c 164/273: README: Add support for llama.cpp |
Date: |
Wed, 1 May 2024 10:02:19 -0400 (EDT) |
branch: elpa/gptel
commit 85bd47cb4c47a23983011d836d61d14251c8ca69
Author: Karthik Chikmagalur <karthikchikmagalur@gmail.com>
Commit: Karthik Chikmagalur <karthikchikmagalur@gmail.com>
README: Add support for llama.cpp
* README.org: The llama.cpp server supports OpenAI's API, so we
can reuse it. Closes #121.
---
README.org | 43 ++++++++++++++++++++++++++++++++++---------
1 file changed, 34 insertions(+), 9 deletions(-)
diff --git a/README.org b/README.org
index b6458dbb14..c68c6638b4 100644
--- a/README.org
+++ b/README.org
@@ -4,15 +4,15 @@
GPTel is a simple Large Language Model chat client for Emacs, with support for
multiple models/backends.
-| LLM Backend | Supports | Requires |
-|-------------+----------+-------------------------|
-| ChatGPT | ✓ | [[https://platform.openai.com/account/api-keys][API
key]] |
-| Azure | ✓ | Deployment and API key |
-| Ollama | ✓ | [[https://ollama.ai/][Ollama running locally]] |
-| GPT4All | ✓ | [[https://gpt4all.io/index.html][GPT4All running
locally]] |
-| Gemini | ✓ | [[https://makersuite.google.com/app/apikey][API
key]] |
-| PrivateGPT | Planned | - |
-| Llama.cpp | Planned | - |
+| LLM Backend | Supports | Requires |
+|-------------+----------+---------------------------|
+| ChatGPT | ✓ | [[https://platform.openai.com/account/api-keys][API
key]] |
+| Azure | ✓ | Deployment and API key |
+| Ollama | ✓ | [[https://ollama.ai/][Ollama running locally]] |
+| GPT4All | ✓ | [[https://gpt4all.io/index.html][GPT4All running
locally]] |
+| Gemini | ✓ | [[https://makersuite.google.com/app/apikey][API
key]] |
+| Llama.cpp | ✓ |
[[https://github.com/ggerganov/llama.cpp/tree/master/examples/server#quick-start][Llama.cpp
running locally]] |
+| PrivateGPT | Planned | - |
*General usage*: ([[https://www.youtube.com/watch?v=bsRnh_brggM][YouTube
Demo]])
@@ -46,6 +46,7 @@ GPTel uses Curl if available, but falls back to url-retrieve
to work without ext
- [[#gpt4all][GPT4All]]
- [[#ollama][Ollama]]
- [[#gemini][Gemini]]
+ - [[#llamacpp][Llama.cpp]]
- [[#usage][Usage]]
- [[#in-any-buffer][In any buffer:]]
- [[#in-a-dedicated-chat-buffer][In a dedicated chat buffer:]]
@@ -221,6 +222,30 @@ You can pick this backend from the transient menu when
using gptel (see Usage),
#+html: </details>
+#+html: <details>
+#+html: <summary>
+**** Llama.cpp
+#+html: </summary>
+
+Register a backend with
+#+begin_src emacs-lisp
+(gptel-make-openai ;Not a typo, same API as OpenAI
+ "llama-cpp" ;Any name
+ :stream t ;Stream responses
+ :protocol "http"
+ :host "localhost:8000" ;Llama.cpp server location
+ :models '("test")) ;List of available models
+#+end_src
+These are the required parameters, refer to the documentation of
=gptel-make-openai= for more.
+
+You can pick this backend from the transient menu when using gptel (see
Usage), or set this as the default value of =gptel-backend=:
+#+begin_src emacs-lisp
+(setq-default gptel-backend (gptel-make-openai "llama-cpp" ...)
+ gptel-model "test")
+#+end_src
+
+#+html: </details>
+
** Usage
(This is also a [[https://www.youtube.com/watch?v=bsRnh_brggM][video demo]]
showing various uses of gptel.)
- [nongnu] elpa/gptel e6df1a5e33 098/273: gptel: Use :require for auth-source-search (#78), (continued)
- [nongnu] elpa/gptel e6df1a5e33 098/273: gptel: Use :require for auth-source-search (#78), ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 9c4af204a3 102/273: gptel-transient: Add crowdsourced prompts, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel e6a1468bd2 094/273: gptel: Make API host configurable (#67), ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel c20fba8247 107/273: gptel-curl: Only convert to Org in Org buffers, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel ed0bfc9ed1 116/273: gptel: Offer suggestion when setting gptel-topic, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel cee5893d79 130/273: gptel: Appease the byte compiler., ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 66d2bafad6 132/273: gptel-ollama: Fix buffer parsing, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel e105a52541 142/273: gptel: Update docstrings for prompt/response prefixes, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel c9d362a3e9 153/273: gptel-transient: Set model when redirecting to new buffer, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 9126bed43f 159/273: gptel: Set window when doing auto-scrolling, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 85bd47cb4c 164/273: README: Add support for llama.cpp,
ELPA Syncer <=
- [nongnu] elpa/gptel 4d01dddf7d 155/273: gptel, gptel-curl: Address checkdoc warnings, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel e5357383ce 166/273: gptel: Appease byte-compiler and linter, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel d5b10c3d6d 169/273: gptel: gptel-model can be an arbitrary string, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel d6ef79f621 177/273: gptel-transient: Show descriptions of directives, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 0690c8b6a9 161/273: gptel-transient: Exit transient when writing directive, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 149261ee79 211/273: gptel-transient: Avoid clashes with the custom directive key (#219), ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel dd5833eef3 023/273: gptel: Improve gptel-mode setup, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 3d0df72bd3 027/273: gptel-transient: linting for MELPA, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 2982ede17d 255/273: gptel-org: Add gptel-org, ELPA Syncer, 2024/05/01
- [nongnu] elpa/gptel 9bc54bed9c 244/273: gptel-transient: Remove "-ts" suffix from major mode (#259), ELPA Syncer, 2024/05/01