diff --git a/README.org b/README.org index 0a67643..dfec62f 100644 --- a/README.org +++ b/README.org @@ -17,6 +17,7 @@ GPTel is a simple Large Language Model chat client for Emacs, with support for m | Kagi Summarizer | ✓ | [[https://kagi.com/settings?p=api][API key]] | | together.ai | ✓ | [[https://api.together.xyz/settings/api-keys][API key]] | | Anyscale | ✓ | [[https://docs.endpoints.anyscale.com/][API key]] | +| Perplexity | ✓ | [[https://docs.perplexity.ai/docs/getting-started][API key]] | *General usage*: ([[https://www.youtube.com/watch?v=bsRnh_brggM][YouTube Demo]]) @@ -55,6 +56,7 @@ GPTel uses Curl if available, but falls back to url-retrieve to work without ext - [[#kagi-fastgpt--summarizer][Kagi (FastGPT & Summarizer)]] - [[#togetherai][together.ai]] - [[#anyscale][Anyscale]] + - [[#perplexity][Perplexity]] - [[#usage][Usage]] - [[#in-any-buffer][In any buffer:]] - [[#in-a-dedicated-chat-buffer][In a dedicated chat buffer:]] @@ -166,7 +168,7 @@ If you want it to be the default, set it as the default value of =gptel-backend= Register a backend with #+begin_src emacs-lisp (gptel-make-gpt4all "GPT4All" ;Name of your choosing - :protocol "http" + :protocol "http" :host "localhost:4891" ;Where it's running :models '("mistral-7b-openorca.Q4_0.gguf")) ;Available models #+end_src @@ -329,6 +331,33 @@ You can pick this backend from the menu when using gptel (see [[#usage][Usage]]) gptel-model "mistralai/Mixtral-8x7B-Instruct-v0.1") #+end_src +#+html: +#+html:
+**** Perplexity +#+html: + +Register a backend with +#+begin_src emacs-lisp +;; Perplexity offers an OpenAI compatible API +(gptel-make-openai "Perplexity" ;Any name you want + :host "api.perplexity.ai" + :key "your-api-key" ;can be a function that returns the key + :endpoint "/chat/completions" + :stream t + :models '(;; has many more, check perplexity.ai + "pplx-7b-chat" + "pplx-70b-chat" + "pplx-7b-online" + "pplx-70b-online")) +#+end_src + +You can pick this backend from the menu when using gptel (see [[#usage][Usage]]), or set this as the default value of =gptel-backend=: +#+begin_src emacs-lisp +;; OPTIONAL configuration +(setq-default gptel-backend (gptel-make-openai "Perplexity" ...) + gptel-model "pplx-7b-chat") +#+end_src + #+html:
** Usage @@ -385,7 +414,7 @@ The default mode is =markdown-mode= if available, else =text-mode=. You can set **** Save and restore your chat sessions -Saving the file will save the state of the conversation as well. To resume the chat, open the file and turn on =gptel-mode= before editing the buffer. +Saving the file will save the state of the conversation as well. To resume the chat, open the file and turn on =gptel-mode= before editing the buffer. ** FAQ #+html:
@@ -456,7 +485,7 @@ For more programmable usage, gptel provides a general =gptel-request= function t #+html:
#+html:
-**** (Doom Emacs) Sending a query from the gptel menu fails because of a key conflict with Org mode +**** (Doom Emacs) Sending a query from the gptel menu fails because of a key conflict with Org mode #+html: Doom binds ~RET~ in Org mode to =+org/dwim-at-point=, which appears to conflict with gptel's transient menu bindings for some reason.