Files
creature/lisp/init-gptel.el
zedhugh b5d9ce18a7 use "creature/pkg-active" manage packages manually
- replace "add-pkg-in-pkg-dir" (recursive load-path scanning) with a
  central "creature/pkgs" registry that handles load path, autoloads,
  info dirs and dependencies
- adapt all init-*.el files to the new activation function
- add a top-level Makefile to byte-compile site-lisp packages
- remove unused "emacs-kv" and "emacs-db" submodules
2026-09-14 15:02:43 +08:00

44 lines
1.5 KiB
EmacsLisp

;; -*- coding: utf-8; lexical-binding: t; -*-
(require 'init-package)
(creature/pkg-active 'gptel)
(let ((gptel-autoload-file
(file-name-concat creature/cache-dir "gptel-autoloads.el")))
(unless (file-exists-p gptel-autoload-file)
(loaddefs-generate (file-name-concat creature/pkg-dir "gptel")
gptel-autoload-file))
(load-file gptel-autoload-file))
(with-eval-after-load 'gptel
(let (deepseek bigmodel bigmodel-code)
(setq deepseek
(gptel-make-openai "DeepSeek"
:host "api.deepseek.com"
:endpoint "/chat/completions"
:stream t
:key (lambda () (gptel-api-key-from-auth-source "api.deepseek.com"))
:models '(deepseek-v4-flash deepseek-v4-pro))
bigmodel
(gptel-make-openai "BigModel"
:host "open.bigmodel.cn"
:endpoint "/api/paas/v4/chat/completions"
:stream t
:key (lambda () (gptel-api-key-from-auth-source "open.bigmodel.cn"))
:models '(glm-5.1))
bigmodel-code
(gptel-make-openai "BigModel-Coding"
:host "open.bigmodel.cn"
:endpoint "/api/coding/paas/v4/chat/completions"
:stream t
:key (lambda () (gptel-api-key-from-auth-source "open.bigmodel.cn"))
:models '(glm-5.1)))
(setq gptel-default-mode #'org-mode
gptel-backend bigmodel-code
gptel-model 'glm-5.1
)))
(provide 'init-gptel)