modules.services.ollama: update

This commit is contained in:
2025-02-16 19:33:52 +08:00
parent e92a536da2
commit b00bd1f47e
5 changed files with 59 additions and 4 deletions

17
flake.lock generated
View File

@@ -979,6 +979,22 @@
"type": "github"
}
},
"nixpkgs-unstable": {
"locked": {
"lastModified": 1739698908,
"narHash": "sha256-7LBhwsoOLw6WPsjIQ86n9BXuQTnXlW7PjoIM5n9JwbU=",
"owner": "CHN-beta",
"repo": "nixpkgs",
"rev": "12fbbac87857a29aac1f5f0a97f86d5bca1b43ef",
"type": "github"
},
"original": {
"owner": "CHN-beta",
"ref": "nixos-unstable",
"repo": "nixpkgs",
"type": "github"
}
},
"nu-scripts": {
"flake": false,
"locked": {
@@ -1268,6 +1284,7 @@
"nixpkgs": "nixpkgs",
"nixpkgs-23.05": "nixpkgs-23.05",
"nixpkgs-23.11": "nixpkgs-23.11",
"nixpkgs-unstable": "nixpkgs-unstable",
"nu-scripts": "nu-scripts",
"nur-linyinfeng": "nur-linyinfeng",
"nur-xddxdd": "nur-xddxdd",

View File

@@ -6,6 +6,7 @@
nixpkgs.url = "github:CHN-beta/nixpkgs/nixos-24.11";
"nixpkgs-23.11".url = "github:CHN-beta/nixpkgs/nixos-23.11";
"nixpkgs-23.05".url = "github:CHN-beta/nixpkgs/nixos-23.05";
nixpkgs-unstable.url = "github:CHN-beta/nixpkgs/nixos-unstable";
home-manager = { url = "github:nix-community/home-manager/release-24.11"; inputs.nixpkgs.follows = "nixpkgs"; };
sops-nix = { url = "github:Mic92/sops-nix"; inputs.nixpkgs.follows = "nixpkgs"; };
nix-index-database = { url = "github:Mic92/nix-index-database"; inputs.nixpkgs.follows = "nixpkgs"; };

View File

@@ -6,8 +6,8 @@ inputs:
{
services =
{
ollama.enable = true;
open-webui = { enable = true; environment.WEBUI_AUTH = "False"; };
ollama = { enable = true; package = inputs.pkgs.pkgs-unstable.ollama; };
open-webui = { enable = true; environment.WEBUI_AUTH = "False"; package = inputs.pkgs.pkgs-unstable.open-webui; };
};
nixos.packages.packages._packages = [ inputs.pkgs.oterm ];
};

View File

@@ -59,8 +59,32 @@ inputs:
{ inherit genericPackages; }
// (
let
source = { "pkgs-23.11" = "nixpkgs-23.11"; "pkgs-23.05" = "nixpkgs-23.05"; };
packages = name: import inputs.topInputs.${source.${name}}
source =
{
"pkgs-23.11" = "nixpkgs-23.11";
"pkgs-23.05" = "nixpkgs-23.05";
pkgs-unstable =
{
source = "nixpkgs-unstable";
overlay = final: prev:
{}
// inputs.lib.optionalAttrs (nixpkgs.march != null)
{
pythonPackagesExtensions = prev.pythonPackagesExtensions or [] ++ [(final: prev:
{
scipy = prev.scipy.overridePythonAttrs (prev:
{ disabledTests = prev.disabledTests or [] ++ [ "test_hyp2f1" ]; });
})];
rapidjson = prev.rapidjson.overrideAttrs { doCheck = false; };
}
// inputs.lib.optionalAttrs (nixpkgs.cuda != null)
{
ollama = prev.ollama.overrideAttrs (prev:
{ patches = prev.patches or [] ++ [ ./ollama.patch ]; });
};
};
};
packages = name: import inputs.topInputs.${source.${name}.source or source.${name}}
{
localSystem = hostPlatform;
config = cudaConfig //
@@ -69,6 +93,7 @@ inputs:
# contentAddressedByDefault = true;
inherit allowInsecurePredicate;
};
overlays = [(source.${name}.overlay or (_: _: {}))];
};
in builtins.listToAttrs (builtins.map
(name: { inherit name; value = packages name; }) (builtins.attrNames source))

View File

@@ -0,0 +1,12 @@
diff --color -ur src/llama/ggml-impl.h src.patched/llama/ggml-impl.h
--- src/llama/ggml-impl.h 2025-02-16 17:06:37.983174514 +0800
+++ src.patched/llama/ggml-impl.h 2025-02-16 17:07:53.002206262 +0800
@@ -48,7 +48,7 @@
#include <arm_neon.h>
#endif
-#if defined(__F16C__)
+#if defined(__F16C__) && !defined(__CUDACC__)
#include <immintrin.h>
#endif