gpt4all: bleeding edge
This commit is contained in:
parent
d4fef2c256
commit
6786cc9092
12
nix/etcnixos/flake.lock
generated
12
nix/etcnixos/flake.lock
generated
@ -316,11 +316,11 @@
|
||||
},
|
||||
"nixos-hardware": {
|
||||
"locked": {
|
||||
"lastModified": 1726650330,
|
||||
"narHash": "sha256-UbHzmaOQ18O/kCizipU70N0UQVFIfv8AiFKXw07oZ9Y=",
|
||||
"lastModified": 1726724509,
|
||||
"narHash": "sha256-sVeAM1tgVi52S1e29fFBTPUAFSzgQwgLon3CrztXGm8=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixos-hardware",
|
||||
"rev": "abb448608a56a60075468e90d8acec2a7cb689b1",
|
||||
"rev": "10d5e0ecc32984c1bf1a9a46586be3451c42fd94",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -332,11 +332,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1726668270,
|
||||
"narHash": "sha256-+N9ASvTufNJ6VAkkvSgXMtd+0RrzjXF83AMyamQlX9Y=",
|
||||
"lastModified": 1726751368,
|
||||
"narHash": "sha256-UaLaS+LAGslTFnQOZs16Y90ybdA6rXoznqu2HvO5ykU=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "50470da36ef2c4448b23285257de4be40acd5c7c",
|
||||
"rev": "fa09c7cca3aa8685ca69198b4510d54ef1fa7f73",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
12
nix/home-manager/flake.lock
generated
12
nix/home-manager/flake.lock
generated
@ -33,11 +33,11 @@
|
||||
]
|
||||
},
|
||||
"locked": {
|
||||
"lastModified": 1726574742,
|
||||
"narHash": "sha256-eWANP6s59C3tAMrExHwL7Sap51XUz/0f1cfGysXGnxA=",
|
||||
"lastModified": 1726674526,
|
||||
"narHash": "sha256-eKAUZRSynuVmNxCmyj4X3TrpI7uOggP+WNd4r1wnhSM=",
|
||||
"owner": "orhun",
|
||||
"repo": "binsider",
|
||||
"rev": "31797519bd6ff5df0a4d9d530a25411597ca2915",
|
||||
"rev": "fd2f7d2b46b34916009040d78fd6b170728d1338",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
@ -201,11 +201,11 @@
|
||||
},
|
||||
"nixpkgs": {
|
||||
"locked": {
|
||||
"lastModified": 1726669401,
|
||||
"narHash": "sha256-HuyEQH0VI3m5DlCNbDafhBaOOBZTYmuTiikqr/gbNO0=",
|
||||
"lastModified": 1726701516,
|
||||
"narHash": "sha256-0xr+2k66e5g+SPXgHceaFZJlqq9kkAbahHE3vdYVZ3I=",
|
||||
"owner": "NixOS",
|
||||
"repo": "nixpkgs",
|
||||
"rev": "8f86e59bbb9ea7447f3aff57d67444cd1113e646",
|
||||
"rev": "db8da26fb9e7a031f2882c14d86e705b853e6104",
|
||||
"type": "github"
|
||||
},
|
||||
"original": {
|
||||
|
||||
53
nix/home-manager/gpt4all-HEAD-embeddings-model.patch
Normal file
53
nix/home-manager/gpt4all-HEAD-embeddings-model.patch
Normal file
@ -0,0 +1,53 @@
|
||||
commit 425b33877c819dd88f3692aae37452c767371f6b
|
||||
Author: Simon Gardling <titaniumtown@proton.me>
|
||||
Date: Thu Sep 19 10:00:39 2024 -0400
|
||||
|
||||
use locally downloaded embeddings
|
||||
|
||||
diff --git a/gpt4all-chat/CMakeLists.txt b/gpt4all-chat/CMakeLists.txt
|
||||
index 900307ae..802fc31a 100644
|
||||
--- a//CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -120,6 +120,7 @@ elseif (APPLE)
|
||||
endif()
|
||||
|
||||
# Embedding model
|
||||
+#[[
|
||||
set(LOCAL_EMBEDDING_MODEL "nomic-embed-text-v1.5.f16.gguf")
|
||||
set(LOCAL_EMBEDDING_MODEL_MD5 "a5401e7f7e46ed9fcaed5b60a281d547")
|
||||
set(LOCAL_EMBEDDING_MODEL_PATH "${CMAKE_BINARY_DIR}/resources/${LOCAL_EMBEDDING_MODEL}")
|
||||
@@ -134,6 +135,7 @@ message(STATUS "Embedding model downloaded to ${LOCAL_EMBEDDING_MODEL_PATH}")
|
||||
if (APPLE)
|
||||
list(APPEND CHAT_EXE_RESOURCES "${LOCAL_EMBEDDING_MODEL_PATH}")
|
||||
endif()
|
||||
+]]
|
||||
|
||||
set(QAPPLICATION_CLASS QGuiApplication)
|
||||
add_subdirectory(deps/SingleApplication)
|
||||
@@ -348,11 +350,13 @@ if (LLMODEL_CUDA)
|
||||
endif()
|
||||
endif()
|
||||
|
||||
+#[[
|
||||
if (NOT APPLE)
|
||||
install(FILES "${LOCAL_EMBEDDING_MODEL_PATH}"
|
||||
DESTINATION resources
|
||||
COMPONENT ${COMPONENT_NAME_MAIN})
|
||||
endif()
|
||||
+]]
|
||||
|
||||
set(CPACK_GENERATOR "IFW")
|
||||
set(CPACK_VERBATIM_VARIABLES YES)
|
||||
diff --git a/gpt4all-chat/src/embllm.cpp b/gpt4all-chat/src/embllm.cpp
|
||||
index 81b1e9e1..e3266cc7 100644
|
||||
--- a/src/embllm.cpp
|
||||
+++ b/src/embllm.cpp
|
||||
@@ -84,7 +84,7 @@ bool EmbeddingLLMWorker::loadModel()
|
||||
|
||||
QString filePath = embPathFmt.arg(QCoreApplication::applicationDirPath(), LOCAL_EMBEDDING_MODEL);
|
||||
if (!QFileInfo::exists(filePath)) {
|
||||
- qWarning() << "embllm WARNING: Local embedding model not found";
|
||||
+ qWarning() << "embllm WARNING: Local embedding model not found: " << filePath;
|
||||
return false;
|
||||
}
|
||||
|
||||
@ -17,96 +17,128 @@
|
||||
"factorio-alpha"
|
||||
];
|
||||
|
||||
home.packages = with pkgs; [
|
||||
#calculator
|
||||
gnome-calculator
|
||||
home.packages =
|
||||
let
|
||||
#stolen from: https://stackoverflow.com/a/42398526
|
||||
optimizeWithFlags =
|
||||
pkg: flags:
|
||||
pkgs.lib.overrideDerivation pkg (
|
||||
old:
|
||||
let
|
||||
newflags = pkgs.lib.foldl' (acc: x: "${acc} ${x}") "" flags;
|
||||
oldflags = if (pkgs.lib.hasAttr "NIX_CFLAGS_COMPILE" old) then "${old.NIX_CFLAGS_COMPILE}" else "";
|
||||
in
|
||||
{
|
||||
NIX_CFLAGS_COMPILE = "${oldflags} ${newflags}";
|
||||
}
|
||||
);
|
||||
in
|
||||
with pkgs;
|
||||
[
|
||||
#calculator
|
||||
gnome-calculator
|
||||
|
||||
#productivity stuff
|
||||
libreoffice
|
||||
hunspell # spellcheck
|
||||
hunspellDicts.en_US # spellcheck dictionary
|
||||
#productivity stuff
|
||||
libreoffice
|
||||
hunspell # spellcheck
|
||||
hunspellDicts.en_US # spellcheck dictionary
|
||||
|
||||
#video and audio downloading
|
||||
parabolic
|
||||
#video and audio downloading
|
||||
parabolic
|
||||
|
||||
#soulseek client
|
||||
nicotine-plus
|
||||
#soulseek client
|
||||
nicotine-plus
|
||||
|
||||
#dark web browsing deep web browsing
|
||||
tor-browser
|
||||
#dark web browsing deep web browsing
|
||||
tor-browser
|
||||
|
||||
#audio editing
|
||||
audacity
|
||||
#audio editing
|
||||
audacity
|
||||
|
||||
#fonts
|
||||
noto-fonts
|
||||
noto-fonts-emoji
|
||||
liberation_ttf
|
||||
nerdfonts
|
||||
jetbrains-mono
|
||||
#fonts
|
||||
noto-fonts
|
||||
noto-fonts-emoji
|
||||
liberation_ttf
|
||||
nerdfonts
|
||||
jetbrains-mono
|
||||
|
||||
#for ebook reading
|
||||
foliate
|
||||
#for ebook reading
|
||||
foliate
|
||||
|
||||
#audio mixer (pavucontrol but for pipewire)
|
||||
pwvucontrol
|
||||
#audio mixer (pavucontrol but for pipewire)
|
||||
pwvucontrol
|
||||
|
||||
#minecraft launcher
|
||||
prismlauncher
|
||||
#minecraft launcher
|
||||
prismlauncher
|
||||
|
||||
mpv
|
||||
mumble
|
||||
system76-keyboard-configurator
|
||||
mission-center
|
||||
mpv
|
||||
mumble
|
||||
system76-keyboard-configurator
|
||||
mission-center
|
||||
|
||||
#jellyfin
|
||||
finamp # music player
|
||||
delfin # jellyfin client
|
||||
#jellyfin
|
||||
finamp # music player
|
||||
delfin # jellyfin client
|
||||
|
||||
signal-desktop
|
||||
signal-desktop
|
||||
|
||||
#accounting
|
||||
gnucash
|
||||
#accounting
|
||||
gnucash
|
||||
|
||||
imagemagick
|
||||
inkscape
|
||||
nomacs
|
||||
imagemagick
|
||||
inkscape
|
||||
nomacs
|
||||
|
||||
nautilus
|
||||
nautilus
|
||||
|
||||
darktable
|
||||
lrcget
|
||||
|
||||
lrcget
|
||||
#openstreetmap contributing
|
||||
josm
|
||||
|
||||
#openstreetmap contributing
|
||||
josm
|
||||
easyeffects
|
||||
gparted
|
||||
|
||||
easyeffects
|
||||
gparted
|
||||
#small nicities
|
||||
wl-clipboard # wl-copy & wl-paste
|
||||
libnotify # notifications library
|
||||
xdg-utils # xdg utils
|
||||
|
||||
gpt4all
|
||||
gnome-disk-utility
|
||||
|
||||
#small nicities
|
||||
wl-clipboard # wl-copy & wl-paste
|
||||
libnotify # notifications library
|
||||
xdg-utils # xdg utils
|
||||
puddletag
|
||||
|
||||
gnome-disk-utility
|
||||
inputs.zen-browser.packages."${pkgs.system}".specific
|
||||
|
||||
puddletag
|
||||
(factorio.override (
|
||||
let
|
||||
data = import ./secrets/factorio.nix;
|
||||
in
|
||||
{
|
||||
username = data.username;
|
||||
token = data.token;
|
||||
}
|
||||
))
|
||||
|
||||
inputs.zen-browser.packages."${pkgs.system}".specific
|
||||
|
||||
(factorio.override (
|
||||
let
|
||||
data = import ./secrets/factorio.nix;
|
||||
in
|
||||
{
|
||||
username = data.username;
|
||||
token = data.token;
|
||||
}
|
||||
))
|
||||
];
|
||||
(optimizeWithFlags
|
||||
(pkgs.gpt4all.overrideAttrs {
|
||||
src = pkgs.fetchFromGitHub {
|
||||
fetchSubmodules = true;
|
||||
owner = "nomic-ai";
|
||||
repo = "gpt4all";
|
||||
rev = "HEAD";
|
||||
sha256 = "S8yWNjylDaXbOviUd7Nhk7mfT0jjBsZq7XAGX38USpc=";
|
||||
};
|
||||
patches = [ ./gpt4all-HEAD-embeddings-model.patch ];
|
||||
})
|
||||
[
|
||||
"-Ofast"
|
||||
"-march=native"
|
||||
"-mtune=native"
|
||||
"-fno-finite-math-only" # https://github.com/ggerganov/llama.cpp/pull/7154#issuecomment-2143844461
|
||||
]
|
||||
)
|
||||
];
|
||||
|
||||
# make chromium-based stuff use wayland
|
||||
home.file.".config/chromium-flags.conf".text = "--ozone-platform-hint=auto";
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user