The “pkgmatch” package works through a locally installed and running
instance of ollama (for reasons
described in the vignette("why-local-lms")
).
In order to use “pkgmatch”, ollama
needs to be installed, and be running. This vignette describes how to do
that. There are two distinct ways, each described in a separate
sub-section. You will generally need to follow one and only one of these
sections.
Local ollama API endpoint
Regardless of which method you use to install and run ollama, the “pkgmatch” package presumes by
default that the local ollama instance has an API endpoint at
“127.0.0.1:11434”. If this is not the case, alternative endpoints can be
set using the
ollama_set_url()
function or by setting the environment
variable OLLAMA_HOST
before pkgmatch is loaded.
Local installation
This sub-section describes how to install and run ollama on your local computer. This may not be possible for everybody, in which case the following sub-section describes how to run ollama within a docker container.
General download instructions are given at https://ollama.com/download. Once downloaded, ollama can
be started by calling ollama serve &
, where the final
&
starts the process in the background. Alternatively,
omit the &
to run as a foreground process. You can then
interact with that process elsewhere (for example in a different
terminal shell), and you’ll see full logs in the original shell.
Once ollama is running with ollama serve
, the particular
models used here will be automatically downloaded by this package when
needed. Alternatively, you can do this manually before using the package
for the first time by running the following two commands (in a system
console; not in R):
You’ll likely need to wait a few tens of minutes for the models to
download before proceeding. Once downloaded, you should be able to run
ollama list
, and see both models appear in the output.
Docker
If you do not or can not install ollama
on your local machine,
you can build a Docker container to download and run ollama
. For this, you will
need to have Docker
installed. (Docker is not required for the local installation
procedure described above; only for this alternative procedure.)
This package comes with a “Dockerfile” containing all code needed to build and run the necessary ollama models within a Docker container. This can be either built locally, or downloaded from the GitHub container registry.
Building the Docker container locally
To build the container locally, download the Dockerfile from this link. Then from the same directory as that file, run these lines:
Downloading the pre-build Docker container
Alternatively, the Docker container including the ollama models used to run this package is stored in the GitHub container registry, and can be downloaded by running this line:
Running the Docker container
Whether you’ve locally built the Docker container, or downloaded the pre-built version, the container needs to be started with the following command:
The running container can be stopped by calling
docker stop
followed the the “CONTAINER ID” listed on the
output of docker ps
.