Notable EOLs with this change: - MacOS v12 and v13 are no longer supported (v14+ required) - AMD gfx900 and gfx906 are no longer supported
Integration Tests
This directory contains integration tests to exercise Ollama end-to-end to verify behavior
By default, these tests are disabled so go test ./...
will exercise only unit tests. To run integration tests you must pass the integration tag. go test -tags=integration ./...
Some tests require additional tags to enable to allow scoped testing to keep the duration reasonable. For example, testing a broad set of models requires -tags=integration,models
and a longer timeout (~60m or more depending on the speed of your GPU.). To view the current set of tag combinations use find integration -type f | xargs grep "go:build"
The integration tests have 2 modes of operating.
- By default, they will start the server on a random port, run the tests, and then shutdown the server.
- If
OLLAMA_TEST_EXISTING
is set to a non-empty string, the tests will run against an existing running server, which can be remote based on yourOLLAMA_HOST
environment variable
Important
Before running the tests locally without the "test existing" setting, compile ollama from the top of the source tree
go build .
in addition to GPU support with cmake if applicable on your platform. The integration tests expect to find an ollama binary at the top of the tree.
Many tests use a default small model suitable to run on many systems. You can override this default model by setting OLLAMA_TEST_DEFAULT_MODEL