Tabby
services.tabby.acceleration
Specifies the device to use for hardware acceleration.
cpu
: no acceleration just use the CPUrocm
: supported by modern AMD GPUscuda
: supported by modern NVIDIA GPUsmetal
: supported on darwin aarch64 machines
Tabby will try and determine what type of acceleration that is
already enabled in your configuration when acceleration = null
.
- nixpkgs.config.cudaSupport
- nixpkgs.config.rocmSupport
- if stdenv.isDarwin && stdenv.isAarch64
IFF multiple acceleration methods are found to be enabled or if you
haven't set either cudaSupport or rocmSupport
you will have to
specify the device type manually here otherwise it will default to
the first from the list above or to cpu.
Type: null or one of "cpu", "rocm", "cuda", "metal"
Default
null
Example
"rocm"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.enable
Whether to enable Self-hosted AI coding assistant using large language models.
Type: boolean
Default
false
Example
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.indexInterval
Run tabby scheduler to generate the index database at this interval.
Updates by default every 5 hours. This value applies to
OnUnitInactiveSec
The format is described in
{manpage}systemd.time(7)
.
To disable running tabby scheduler --now
updates, set to "never"
Type: string
Default
"5hours"
Example
"5hours"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.model
Specify the model that tabby will use to generate completions.
This model will be downloaded automatically if it is not already present.
If you want to utilize an existing model that you've already
downloaded you'll need to move it into tabby's state directory which
lives in /var/lib/tabby
. Because the tabby.service is configured to
use a DyanmicUser the service will need to have been started at least
once before you can move the locally existing model into
/var/lib/tabby
. You can set the model to 'none' and tabby will
startup and fail to download a model, but will have created the
/var/lib/tabby
directory. You can then copy over the model manually
into /var/lib/tabby
, update the model option to the name you just
downloaded and copied over then nixos-rebuild switch
to start using
it.
$ tabby download --model TabbyML/DeepseekCoder-6.7B $ find ~/.tabby/ | tail -n1 /home/ghthor/.tabby/models/TabbyML/DeepseekCoder-6.7B/ggml/q8_0.v2.gguf $ sudo rsync -r ~/.tabby/models/ /var/lib/tabby/models/ $ sudo chown -R tabby:tabby /var/lib/tabby/models/
See for Model Options:
https://github.com/TabbyML/registry-tabby
Type: string
Default
"TabbyML/StarCoder-1B"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.package
The tabby package to use.
Type: package
Default
pkgs.tabby
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.port
Specifies the bind port on which the tabby server HTTP interface listens.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default
11029
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.settings
Tabby scheduler configuration
See for more details:
https://tabby.tabbyml.com/docs/configuration/#repository-context-for-code-completion
Type: TOML value
Default
{ }
Example
`#!nix settings = { repositories = [ { name = "tabby"; git_url = "https://github.com/TabbyML/tabby.git"; }
# local directory is also supported, but limited by systemd DynamicUser=1
# adding local repositories will need to be done manually
{ name = "repository_a"; git_url = "file:///var/lib/tabby/repository_a"; }
]; }; `
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix
services.tabby.usageCollection
Enable sending anonymous usage data.
See for more details:
https://tabby.tabbyml.com/docs/configuration#usage-collection
Type: boolean
Default
false
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/misc/tabby.nix