summaryrefslogtreecommitdiff
path: root/emacs/inits/31-llm.el
blob: 4a71ef1896ebc786dbc04b107a6a5c4d14940e21 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
;; Time-stamp: <2025-06-20 10h10 BST (1d3fbf99)>

(use-package minuet
  :ensure
  :bind
  (:map minuet-active-mode-map
        ;; These keymaps activate only when a minuet suggestion is displayed in the current buffer
        ("M-p" . #'minuet-previous-suggestion) ;; invoke completion or cycle to next completion
        ("M-n" . #'minuet-next-suggestion) ;; invoke completion or cycle to previous completion
        ("M-A" . #'minuet-accept-suggestion) ;; accept whole completion
        ;; Accept the first line of completion, or N lines with a numeric-prefix:
        ;; e.g. C-u 2 M-a will accepts 2 lines of completion.
        ("M-a" . #'minuet-accept-suggestion-line)
        ("M-e" . #'minuet-dismiss-suggestion))

  ;; :init
  ;; (add-hook 'prog-mode-hook #'minuet-auto-suggestion-mode)

  :config
  (setq minuet-provider 'openai-fim-compatible)
  (setq minuet-n-completions 1)

  ;; don't suggest too often
  (setq minuet-auto-suggestion-debounce-delay 1.0
        minuet-auto-suggestion-throttle-delay 2.0)

  (setq minuet-context-window 512)
  (plist-put minuet-openai-fim-compatible-options :end-point "http://localhost:11434/v1/completions")
  (plist-put minuet-openai-fim-compatible-options :name "Ollama")
  (plist-put minuet-openai-fim-compatible-options :api-key "TERM")
  (plist-put minuet-openai-fim-compatible-options :model "qwen2.5-coder:3b")
  (minuet-set-optional-options minuet-openai-fim-compatible-options :max_tokens 56))