mirror of
https://github.com/ollama/ollama.git
synced 2026-05-21 05:01:48 -05:00
Closed
opened 2026-04-12 17:39:41 -05:00 by GiteaMirror
·
25 comments
No Branch/Tag Specified
main
parth-migrate-pi
parth-launch-enriched-model-inventory
dhiltgen/llama-runner
codex/make-integration-hidden-and-lunchable
hoyyeva/migrate-pi
hoyyeva/opencode-thinking
hoyyeva/anthropic-local-image-path
parth-launch-codex-app
hoyyeva/anthropic-reference-images-path
parth-anthropic-reference-images-path
brucemacd/download-before-remove
hoyyeva/editor-config-repair
parth-mlx-decode-checkpoints
hoyyeva/qwen
parth/hide-claude-desktop-till-release
parth-add-claude-code-autoinstall
release_v0.22.0
pdevine/manifest-list
codex/fix-codex-model-metadata-warning
pdevine/addressable-manifest
brucemacd/launch-fetch-reccomended
jmorganca/llama-compat
launch-copilot-cli
release_v0.20.7
parth-auto-save-backup
parth-test
jmorganca/gemma4-audio-replacements
fix-manifest-digest-on-pull
hoyyeva/vscode-improve
brucemacd/install-server-wait
parth/update-claude-docs
brucemac/start-ap-install
pdevine/mlx-update
pdevine/qwen35_vision
drifkin/api-show-fallback
mintlify/image-generation-1773352582
hoyyeva/server-context-length-local-config
jmorganca/faster-reptition-penalties
jmorganca/convert-nemotron
parth-pi-thinking
pdevine/sampling-penalties
jmorganca/fix-create-quantization-memory
dongchen/resumable_transfer_fix
pdevine/sampling-cache-error
jessegross/mlx-usage
hoyyeva/openclaw-config
hoyyeva/app-html
pdevine/qwen3next
brucemacd/sign-sh-install
brucemacd/tui-update
brucemacd/usage-api
jmorganca/launch-empty
fix-app-dist-embed
mxyng/mlx-compile
mxyng/mlx-quant
mxyng/mlx-glm4.7
mxyng/mlx
brucemacd/simplify-model-picker
jmorganca/qwen3-concurrent
fix-glm-4.7-flash-mla-config
drifkin/qwen3-coder-opening-tag
brucemacd/usage-cli
fix-cuda12-fattn-shmem
ollama-imagegen-docs
parth/fix-multiline-inputs
brucemacd/config-docs
mxyng/model-files
mxyng/simple-execute
fix-imagegen-ollama-models
mxyng/async-upload
jmorganca/lazy-no-dtype-changes
imagegen-auto-detect-create
parth/decrease-concurrent-download-hf
fix-mlx-quantize-init
jmorganca/x-cleanup
usage
imagegen-readme
jmorganca/glm-image
mlx-gpu-cd
jmorganca/imagegen-modelfile
parth/agent-skills
parth/agent-allowlist
parth/signed-in-offline
parth/agents
parth/fix-context-chopping
improve-cloud-flow
parth/add-models-websearch
parth/prompt-renderer-mcp
jmorganca/native-settings
jmorganca/download-stream-hash
jmorganca/client2-rebased
brucemacd/oai-chat-req-multipart
jessegross/multi_chunk_reserve
grace/additional-omit-empty
grace/mistral-3-large
mxyng/tokenizer2
mxyng/tokenizer
jessegross/flash
hoyyeva/windows-nacked-app
mxyng/cleanup-attention
grace/deepseek-parser
hoyyeva/remember-unsent-prompt
parth/add-lfs-pointer-error-conversion
parth/olmo2-test2
hoyyeva/ollama-launchagent-plist
nicole/olmo-model
parth/olmo-test
mxyng/remove-embedded
parth/render-template
jmorganca/intellect-3
parth/remove-prealloc-linter
jmorganca/cmd-eval
nicole/nomic-embed-text-fix
mxyng/lint-2
hoyyeva/add-gemini-3-pro-preview
hoyyeva/load-model-list
mxyng/expand-path
mxyng/environ-2
hoyyeva/deeplink-json-encoding
parth/improve-tool-calling-tests
hoyyeva/conversation
hoyyeva/assistant-edit-response
hoyyeva/thinking
origin/brucemacd/invalid-char-i-err
parth/improve-tool-calling
jmorganca/required-omitempty
grace/qwen3-vl-tests
mxyng/iter-client
parth/docs-readme
nicole/embed-test
pdevine/integration-benchstat
parth/remove-generate-cmd
parth/add-toolcall-id
mxyng/server-tests
jmorganca/glm-4.6
jmorganca/gin-h-compat
drifkin/stable-tool-args
pdevine/qwen3-more-thinking
parth/add-websearch-client
nicole/websearch_local
jmorganca/qwen3-coder-updates
grace/deepseek-v3-migration-tests
mxyng/fix-create
jmorganca/cloud-errors
pdevine/parser-tidy
revert-12233-parth/simplify-entrypoints-runner
parth/enable-so-gpt-oss
brucemacd/qwen3vl
jmorganca/readme-simplify
parth/gpt-oss-structured-outputs
revert-12039-jmorganca/tools-braces
mxyng/embeddings
mxyng/gguf
mxyng/benchmark
mxyng/types-null
parth/move-parsing
mxyng/gemma2
jmorganca/docs
mxyng/16-bit
mxyng/create-stdin
pdevine/authorizedkeys
mxyng/quant
parth/opt-in-error-context-window
brucemacd/cache-models
brucemacd/runner-completion
jmorganca/llama-update-6
brucemacd/benchmark-list
brucemacd/partial-read-caps
parth/deepseek-r1-tools
mxyng/omit-array
parth/tool-prefix-temp
brucemacd/runner-test
jmorganca/qwen25vl
brucemacd/model-forward-test-ext
parth/python-function-parsing
jmorganca/cuda-compression-none
drifkin/num-parallel
drifkin/chat-truncation-fix
jmorganca/sync
parth/python-tools-calling
drifkin/array-head-count
brucemacd/create-no-loop
parth/server-enable-content-stream-with-tools
qwen25omni
mxyng/v3
brucemacd/ropeconfig
jmorganca/silence-tokenizer
parth/sample-so-test
parth/sampling-structured-outputs
brucemacd/doc-go-engine
parth/constrained-sampling-json
jmorganca/mistral-wip
brucemacd/mistral-small-convert
parth/sample-unmarshal-json-for-params
brucemacd/jomorganca/mistral
pdevine/bfloat16
jmorganca/mistral
brucemacd/mistral
pdevine/logging
parth/sample-correctness-fix
parth/sample-fix-sorting
jmorgan/sample-fix-sorting-extras
jmorganca/temp-0-images
brucemacd/parallel-embed-models
brucemacd/shim-grammar
jmorganca/fix-gguf-error
bmizerany/nameswork
jmorganca/faster-releases
bmizerany/validatenames
brucemacd/err-no-vocab
brucemacd/rope-config
brucemacd/err-hint
brucemacd/qwen2_5
brucemacd/logprobs
brucemacd/new_runner_graph_bench
progress-flicker
brucemacd/forward-test
brucemacd/go_qwen2
pdevine/gemma2
jmorganca/add-missing-symlink-eval
mxyng/next-debug
parth/set-context-size-openai
brucemacd/next-bpe-bench
brucemacd/next-bpe-test
brucemacd/new_runner_e2e
brucemacd/new_runner_qwen2
pdevine/convert-cohere2
brucemacd/convert-cli
parth/log-probs
mxyng/next-mlx
mxyng/cmd-history
parth/templating
parth/tokenize-detokenize
brucemacd/check-key-register
bmizerany/grammar
jmorganca/vendor-081b29bd
mxyng/func-checks
jmorganca/fix-null-format
parth/fix-default-to-warn-json
jmorganca/qwen2vl
jmorganca/no-concat
parth/cmd-cleanup-SO
brucemacd/check-key-register-structured-err
parth/openai-stream-usage
parth/fix-referencing-so
stream-tools-stop
jmorganca/degin-1
brucemacd/install-path-clean
brucemacd/push-name-validation
brucemacd/browser-key-register
jmorganca/openai-fix-first-message
jmorganca/fix-proxy
jessegross/sample
parth/disallow-streaming-tools
dhiltgen/remove_submodule
jmorganca/ga
jmorganca/mllama
pdevine/newlines
pdevine/geems-2b
jmorganca/llama-bump
mxyng/modelname-7
mxyng/gin-slog
mxyng/modelname-6
jyan/convert-prog
jyan/quant5
paligemma-support
pdevine/import-docs
jmorganca/openai-context
jyan/paligemma
jyan/p2
jyan/palitest
bmizerany/embedspeedup
jmorganca/llama-vit
brucemacd/allow-ollama
royh/ep-methods
royh/whisper
mxyng/api-models
mxyng/fix-memory
jyan/q4_4/8
jyan/ollama-v
royh/stream-tools
roy-embed-parallel
bmizerany/hrm
revert-5963-revert-5924-mxyng/llama3.1-rope
royh/embed-viz
jyan/local2
jyan/auth
jyan/local
jyan/parse-temp
jmorganca/template-mistral
jyan/reord-g
royh-openai-suffixdocs
royh-imgembed
royh-embed-parallel
jyan/quant4
royh-precision
jyan/progress
pdevine/fix-template
jyan/quant3
pdevine/ggla
mxyng/update-registry-domain
jmorganca/ggml-static
mxyng/create-context
jyan/v0.146
mxyng/layers-from-files
build_dist
bmizerany/noseek
royh-ls
royh-name
timeout
mxyng/server-timestamp
bmizerany/nosillyggufslurps
royh-params
jmorganca/llama-cpp-7c26775
royh-openai-delete
royh-show-rigid
jmorganca/enable-fa
jmorganca/no-error-template
jyan/format
royh-testdelete
bmizerany/fastverify
language_support
pdevine/ps-glitches
brucemacd/tokenize
bruce/iq-quants
bmizerany/filepathwithcoloninhost
mxyng/split-bin
bmizerany/client-registry
jmorganca/if-none-match
native
jmorganca/native
jmorganca/batch-embeddings
jmorganca/initcmake
jmorganca/mm
pdevine/showggmlinfo
modenameenforcealphanum
bmizerany/modenameenforcealphanum
jmorganca/done-reason
jmorganca/llama-cpp-8960fe8
ollama.com
bmizerany/filepathnobuild
bmizerany/types/model/defaultfix
rmdisplaylong
nogogen
bmizerany/x
modelfile-readme
bmizerany/replacecolon
jmorganca/limit
jmorganca/execstack
jmorganca/replace-assets
mxyng/tune-concurrency
jmorganca/testing
whitespace-detection
jmorganca/options
upgrade-all
scratch
cuda-search
mattw/airenamer
mattw/allmodelsonhuggingface
mattw/quantcontext
mattw/whatneedstorun
brucemacd/llama-mem-calc
mattw/faq-context
mattw/communitylinks
mattw/noprune
mattw/python-functioncalling
rename
mxyng/install
pulse
remove-first
editor
mattw/selfqueryingretrieval
cgo
mattw/howtoquant
api
matt/streamingapi
format-config
mxyng/extra-args
shell
update-nous-hermes
cp-model
upload-progress
fix-unknown-model
fix-model-names
delete-fix
insecure-registry
ls
deletemodels
progressbar
readme-updates
license-layers
skip-list
list-models
modelpath
matt/examplemodelfiles
distribution
go-opts
v0.30.0-rc21
v0.30.0-rc20
v0.30.0-rc19
v0.30.0-rc18
v0.25.0-rc0
v0.30.0-rc17
v0.30.0-rc16
v0.24.0-rc1
v0.24.0
v0.24.0-rc0
v0.23.4
v0.23.4-rc0
v0.30.0-rc15
v0.23.3
v0.23.3-rc1
v0.30.0-rc14
v0.23.3-rc0
v0.30.0-rc13
v0.30.0-rc12
v0.30.0-rc11
v0.30.0-rc10
v0.30.0-rc9
v0.30.0-rc8
v0.30.0-rc7
v0.30.0-rc6
v0.30.0-rc5
v0.23.2
v0.23.2-rc0
v0.30.0-rc4
v0.30.0-rc3
v0.30.0-rc2
v0.30.0-rc1
v0.30.0-rc0
v0.23.1
v0.23.1-rc0
v0.23.0
v0.23.0-rc0
v0.22.1
v0.22.1-rc1
v0.22.1-rc0
v0.22.0
v0.22.0-rc1
v0.21.3-rc0
v0.21.2-rc1
v0.21.2
v0.21.2-rc0
v0.21.1
v0.21.1-rc1
v0.21.1-rc0
v0.21.0
v0.21.0-rc1
v0.21.0-rc0
v0.20.8-rc0
v0.20.7
v0.20.7-rc1
v0.20.7-rc0
v0.20.6
v0.20.6-rc1
v0.20.6-rc0
v0.20.5
v0.20.5-rc2
v0.20.5-rc1
v0.20.5-rc0
v0.20.4
v0.20.4-rc2
v0.20.4-rc1
v0.20.4-rc0
v0.20.3
v0.20.3-rc0
v0.20.2
v0.20.1
v0.20.1-rc2
v0.20.1-rc1
v0.20.1-rc0
v0.20.0
v0.20.0-rc1
v0.20.0-rc0
v0.19.0
v0.19.0-rc2
v0.19.0-rc1
v0.19.0-rc0
v0.18.4-rc1
v0.18.4-rc0
v0.18.3
v0.18.3-rc2
v0.18.3-rc1
v0.18.3-rc0
v0.18.2
v0.18.2-rc1
v0.18.2-rc0
v0.18.1
v0.18.1-rc1
v0.18.1-rc0
v0.18.0
v0.18.0-rc2
v0.18.0-rc1
v0.18.0-rc0
v0.17.8-rc4
v0.17.8-rc3
v0.17.8-rc2
v0.17.8-rc1
v0.17.8-rc0
v0.17.7
v0.17.7-rc2
v0.17.7-rc1
v0.17.7-rc0
v0.17.6
v0.17.5
v0.17.4
v0.17.3
v0.17.2
v0.17.1
v0.17.1-rc2
v0.17.1-rc1
v0.17.1-rc0
v0.17.0
v0.17.0-rc2
v0.17.0-rc1
v0.17.0-rc0
v0.16.3
v0.16.3-rc2
v0.16.3-rc1
v0.16.3-rc0
v0.16.2
v0.16.2-rc0
v0.16.1
v0.16.0
v0.16.0-rc2
v0.16.0-rc0
v0.16.0-rc1
v0.15.6
v0.15.5
v0.15.5-rc5
v0.15.5-rc4
v0.15.5-rc3
v0.15.5-rc2
v0.15.5-rc1
v0.15.5-rc0
v0.15.4
v0.15.3
v0.15.2
v0.15.1
v0.15.1-rc1
v0.15.1-rc0
v0.15.0-rc6
v0.15.0
v0.15.0-rc5
v0.15.0-rc4
v0.15.0-rc3
v0.15.0-rc2
v0.15.0-rc1
v0.15.0-rc0
v0.14.3
v0.14.3-rc3
v0.14.3-rc2
v0.14.3-rc1
v0.14.3-rc0
v0.14.2
v0.14.2-rc1
v0.14.2-rc0
v0.14.1
v0.14.0-rc11
v0.14.0
v0.14.0-rc10
v0.14.0-rc9
v0.14.0-rc8
v0.14.0-rc7
v0.14.0-rc6
v0.14.0-rc5
v0.14.0-rc4
v0.14.0-rc3
v0.14.0-rc2
v0.14.0-rc1
v0.14.0-rc0
v0.13.5
v0.13.5-rc1
v0.13.5-rc0
v0.13.4-rc2
v0.13.4
v0.13.4-rc1
v0.13.4-rc0
v0.13.3
v0.13.3-rc1
v0.13.3-rc0
v0.13.2
v0.13.2-rc2
v0.13.2-rc1
v0.13.2-rc0
v0.13.1
v0.13.1-rc2
v0.13.1-rc1
v0.13.1-rc0
v0.13.0
v0.13.0-rc0
v0.12.11
v0.12.11-rc1
v0.12.11-rc0
v0.12.10
v0.12.10-rc1
v0.12.10-rc0
v0.12.9-rc0
v0.12.9
v0.12.8
v0.12.8-rc0
v0.12.7
v0.12.7-rc1
v0.12.7-rc0
v0.12.7-citest0
v0.12.6
v0.12.6-rc1
v0.12.6-rc0
v0.12.5
v0.12.5-rc0
v0.12.4
v0.12.4-rc7
v0.12.4-rc6
v0.12.4-rc5
v0.12.4-rc4
v0.12.4-rc3
v0.12.4-rc2
v0.12.4-rc1
v0.12.4-rc0
v0.12.3
v0.12.2
v0.12.2-rc0
v0.12.1
v0.12.1-rc1
v0.12.1-rc2
v0.12.1-rc0
v0.12.0
v0.12.0-rc1
v0.12.0-rc0
v0.11.11
v0.11.11-rc3
v0.11.11-rc2
v0.11.11-rc1
v0.11.11-rc0
v0.11.10
v0.11.9
v0.11.9-rc0
v0.11.8
v0.11.8-rc0
v0.11.7-rc1
v0.11.7-rc0
v0.11.7
v0.11.6
v0.11.6-rc0
v0.11.5-rc4
v0.11.5-rc3
v0.11.5
v0.11.5-rc5
v0.11.5-rc2
v0.11.5-rc1
v0.11.5-rc0
v0.11.4
v0.11.4-rc0
v0.11.3
v0.11.3-rc0
v0.11.2
v0.11.1
v0.11.0-rc0
v0.11.0-rc1
v0.11.0-rc2
v0.11.0
v0.10.2-int1
v0.10.1
v0.10.0
v0.10.0-rc4
v0.10.0-rc3
v0.10.0-rc2
v0.10.0-rc1
v0.10.0-rc0
v0.9.7-rc1
v0.9.7-rc0
v0.9.6
v0.9.6-rc0
v0.9.6-ci0
v0.9.5
v0.9.4-rc5
v0.9.4-rc6
v0.9.4
v0.9.4-rc3
v0.9.4-rc4
v0.9.4-rc1
v0.9.4-rc2
v0.9.4-rc0
v0.9.3
v0.9.3-rc5
v0.9.4-citest0
v0.9.3-rc4
v0.9.3-rc3
v0.9.3-rc2
v0.9.3-rc1
v0.9.3-rc0
v0.9.2
v0.9.1
v0.9.1-rc1
v0.9.1-rc0
v0.9.1-ci1
v0.9.1-ci0
v0.9.0
v0.9.0-rc0
v0.8.0
v0.8.0-rc0
v0.7.1-rc2
v0.7.1
v0.7.1-rc1
v0.7.1-rc0
v0.7.0
v0.7.0-rc1
v0.7.0-rc0
v0.6.9-rc0
v0.6.8
v0.6.8-rc0
v0.6.7
v0.6.7-rc2
v0.6.7-rc1
v0.6.7-rc0
v0.6.6
v0.6.6-rc2
v0.6.6-rc1
v0.6.6-rc0
v0.6.5-rc1
v0.6.5
v0.6.5-rc0
v0.6.4-rc0
v0.6.4
v0.6.3-rc1
v0.6.3
v0.6.3-rc0
v0.6.2
v0.6.2-rc0
v0.6.1
v0.6.1-rc0
v0.6.0-rc0
v0.6.0
v0.5.14-rc0
v0.5.13
v0.5.13-rc6
v0.5.13-rc5
v0.5.13-rc4
v0.5.13-rc3
v0.5.13-rc2
v0.5.13-rc1
v0.5.13-rc0
v0.5.12
v0.5.12-rc1
v0.5.12-rc0
v0.5.11
v0.5.10
v0.5.9
v0.5.9-rc0
v0.5.8-rc13
v0.5.8
v0.5.8-rc12
v0.5.8-rc11
v0.5.8-rc10
v0.5.8-rc9
v0.5.8-rc8
v0.5.8-rc7
v0.5.8-rc6
v0.5.8-rc5
v0.5.8-rc4
v0.5.8-rc3
v0.5.8-rc2
v0.5.8-rc1
v0.5.8-rc0
v0.5.7
v0.5.6
v0.5.5
v0.5.5-rc0
v0.5.4
v0.5.3
v0.5.3-rc0
v0.5.2
v0.5.2-rc3
v0.5.2-rc2
v0.5.2-rc1
v0.5.2-rc0
v0.5.1
v0.5.0
v0.5.0-rc1
v0.4.8-rc0
v0.4.7
v0.4.6
v0.4.5
v0.4.4
v0.4.3
v0.4.3-rc0
v0.4.2
v0.4.2-rc1
v0.4.2-rc0
v0.4.1
v0.4.1-rc0
v0.4.0
v0.4.0-rc8
v0.4.0-rc7
v0.4.0-rc6
v0.4.0-rc5
v0.4.0-rc4
v0.4.0-rc3
v0.4.0-rc2
v0.4.0-rc1
v0.4.0-rc0
v0.4.0-ci3
v0.3.14
v0.3.14-rc0
v0.3.13
v0.3.12
v0.3.12-rc5
v0.3.12-rc4
v0.3.12-rc3
v0.3.12-rc2
v0.3.12-rc1
v0.3.11
v0.3.11-rc4
v0.3.11-rc3
v0.3.11-rc2
v0.3.11-rc1
v0.3.10
v0.3.10-rc1
v0.3.9
v0.3.8
v0.3.7
v0.3.7-rc6
v0.3.7-rc5
v0.3.7-rc4
v0.3.7-rc3
v0.3.7-rc2
v0.3.7-rc1
v0.3.6
v0.3.5
v0.3.4
v0.3.3
v0.3.2
v0.3.1
v0.3.0
v0.2.8
v0.2.8-rc2
v0.2.8-rc1
v0.2.7
v0.2.6
v0.2.5
v0.2.4
v0.2.3
v0.2.2
v0.2.2-rc2
v0.2.2-rc1
v0.2.1
v0.2.0
v0.1.49-rc14
v0.1.49-rc13
v0.1.49-rc12
v0.1.49-rc11
v0.1.49-rc10
v0.1.49-rc9
v0.1.49-rc8
v0.1.49-rc7
v0.1.49-rc6
v0.1.49-rc4
v0.1.49-rc5
v0.1.49-rc3
v0.1.49-rc2
v0.1.49-rc1
v0.1.48
v0.1.47
v0.1.46
v0.1.45-rc5
v0.1.45
v0.1.45-rc4
v0.1.45-rc3
v0.1.45-rc2
v0.1.45-rc1
v0.1.44
v0.1.43
v0.1.42
v0.1.41
v0.1.40
v0.1.40-rc1
v0.1.39
v0.1.39-rc2
v0.1.39-rc1
v0.1.38
v0.1.37
v0.1.36
v0.1.35
v0.1.35-rc1
v0.1.34
v0.1.34-rc1
v0.1.33
v0.1.33-rc7
v0.1.33-rc6
v0.1.33-rc5
v0.1.33-rc4
v0.1.33-rc3
v0.1.33-rc2
v0.1.33-rc1
v0.1.32
v0.1.32-rc2
v0.1.32-rc1
v0.1.31
v0.1.30
v0.1.29
v0.1.28
v0.1.27
v0.1.26
v0.1.25
v0.1.24
v0.1.23
v0.1.22
v0.1.21
v0.1.20
v0.1.19
v0.1.18
v0.1.17
v0.1.16
v0.1.15
v0.1.14
v0.1.13
v0.1.12
v0.1.11
v0.1.10
v0.1.9
v0.1.8
v0.1.7
v0.1.6
v0.1.5
v0.1.4
v0.1.3
v0.1.2
v0.1.1
v0.1.0
v0.0.21
v0.0.20
v0.0.19
v0.0.18
v0.0.17
v0.0.16
v0.0.15
v0.0.14
v0.0.13
v0.0.12
v0.0.11
v0.0.10
v0.0.9
v0.0.8
v0.0.7
v0.0.6
v0.0.5
v0.0.4
v0.0.3
v0.0.2
v0.0.1
Labels
Clear labels
amd
api
app
bug
build
cli
cloud
compatibility
context-length
create
docker
documentation
embeddings
feature request
feedback wanted
good first issue
gpt-oss
gpu
harmony
help wanted
image
install
intel
js
launch
linux
macos
memory
mlx
model
needs more info
networking
nvidia
ollama.com
performance
pull-request
python
question
registry
rendering
thinking
tools
top
vulkan
windows
wsl
Mirrored from GitHub Pull Request
No Label
bug
Milestone
No items
No Milestone
Projects
Clear projects
No project
No Assignees
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/ollama#6238
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @EdwinMeriaux on GitHub (Mar 7, 2025).
Original GitHub issue: https://github.com/ollama/ollama/issues/9564
What is the issue?
Hello! Sorry if the issue is my misunderstanding: from my understand OLLAMA_NUM_PARALLEL is originally set to 1 or 4 depending on available memory but can be increased if there is extra memory right?
I am operating a RTX 4090 with 24gb of VRAM and if I set OLLAMA_NUM_PARALLEL to 10 it does not run faster or use more of the available memory. Please see the enclosed logs from nvidia-smi. If i run the following code with parallel_num = one or four I see improvement. Above that nothing changes:
import asyncio
import time
import ollama
parallel_num = 4 # Max concurrent requests
total_requests = 20 # Total number of requests
async def describe_image(number):
"""Asynchronous function to send a request to Ollama."""
try:
client = ollama.AsyncClient() # No async with
res = await client.chat(
model="llava",
messages=[{'role': 'user', 'content': 'Describe Fermat's Last Theorem'}]
)
print(f"Completed request {number}")
except Exception as e:
print(f"Error on request {number}: {e}")
async def main():
start_time = time.time() # Start timing
if name == "main":
asyncio.run(main()) # Run the async function
I launch the script with:
OLLAMA_GPU_MEMORY=20000 OLLAMA_NUM_PARALLEL=2 python3 function_test1.py (where I change the number 2 as needed)
Relevant log output
OS
Linux
GPU
Nvidia
CPU
AMD
Ollama version
0.5.13
@rick-github commented on GitHub (Mar 7, 2025):
Set
OLLAMA_NUM_PARALLELin the server environment, not the client environment.@EdwinMeriaux commented on GitHub (Mar 7, 2025):
Hi! @rick-github,
Thank you for your comment. I tried it now:
Editing /etc/systemd/system/ollama.service.d/override.conf
Anything between here and the comment below will become the new contents of the file
Environment="OLLAMA_NUM_PARALLEL=10"
Environment="OLLAMA_GPU_MEMORY=20GiB"
Lines below this comment will be discarded
/etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/home/thalassa/emeriaux/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/thalassa/emeriaux/.vscode/extensions/ms-python.debugpy-2025.0.0-linux-x64/bun>
[Install]
WantedBy=default.target
And there really isn't any change in the compute time. LLAVA is still only using 6gb of video memory and it is not running more concurrent instances. What should I do?
@rick-github commented on GitHub (Mar 7, 2025):
Did you restart the service? What does the server log show?
@EdwinMeriaux commented on GitHub (Mar 7, 2025):
Hi!
So I did:
sudo systemctl restart ollama
and there was no change. Is that what you meant by restart the service?
and there is nothing in the server log:
ran -> journalctl -u ollama -f
Hint: You are currently not seeing messages from other users and the system.
Users in groups 'adm', 'systemd-journal' can see all messages.
Pass -q to turn off this notice.
@rick-github commented on GitHub (Mar 7, 2025):
@EdwinMeriaux commented on GitHub (Mar 7, 2025):
Thanks! Ok! Here is the log for the last attempt!
Mar 07 12:06:51 Hermes ollama[312857]: time=2025-03-07T12:06:51.221-05:00 level=INFO source=images.go:432 msg="total blobs: 12"
Mar 07 12:06:51 Hermes ollama[312857]: time=2025-03-07T12:06:51.221-05:00 level=INFO source=images.go:439 msg="total unused blobs removed: 0"
Mar 07 12:06:51 Hermes ollama[312857]: time=2025-03-07T12:06:51.221-05:00 level=INFO source=routes.go:1277 msg="Listening on 127.0.0.1:11434 (version 0.5.13)"
Mar 07 12:06:51 Hermes ollama[312857]: time=2025-03-07T12:06:51.221-05:00 level=INFO source=gpu.go:217 msg="looking for compatible GPUs"
Mar 07 12:06:51 Hermes ollama[312857]: time=2025-03-07T12:06:51.305-05:00 level=INFO source=types.go:130 msg="inference compute" id=GPU-4e0dac96-1fe0-81b7-2d85-138e9604e2bd library=cuda variant=v12 compute=8.9 driver=12.4 name="NVIDIA GeForce RTX 4090" total="23.6 GiB" available="22.5 GiB"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.842-05:00 level=WARN source=ggml.go:136 msg="key not found" key=llama.attention.key_length default=128
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.842-05:00 level=WARN source=ggml.go:136 msg="key not found" key=llama.attention.value_length default=128
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.842-05:00 level=INFO source=sched.go:715 msg="new model will fit in available VRAM in single GPU, loading" model=/usr/share/ollama/.ollama/models/blobs/sha256-170370233dd5c5415250a2ecd5c71586352850729062ccef1496385647293868 gpu=GPU-4e0dac96-1fe0-81b7-2d85-138e9604e2bd parallel=4 available=24170463232 required="6.5 GiB"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.891-05:00 level=INFO source=server.go:97 msg="system memory" total="60.5 GiB" free="54.9 GiB" free_swap="2.0 GiB"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.892-05:00 level=WARN source=ggml.go:136 msg="key not found" key=llama.attention.key_length default=128
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.892-05:00 level=WARN source=ggml.go:136 msg="key not found" key=llama.attention.value_length default=128
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.892-05:00 level=INFO source=server.go:130 msg=offload library=cuda layers.requested=-1 layers.model=33 layers.offload=33 layers.split="" memory.available="[22.5 GiB]" memory.gpu_overhead="0 B" memory.required.full="6.5 GiB" memory.required.partial="6.5 GiB" memory.required.kv="1.0 GiB" memory.required.allocations="[6.5 GiB]" memory.weights.total="4.7 GiB" memory.weights.repeating="4.6 GiB" memory.weights.nonrepeating="102.6 MiB" memory.graph.full="560.0 MiB" memory.graph.partial="585.0 MiB" projector.weights="595.5 MiB" projector.graph="0 B"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.892-05:00 level=INFO source=server.go:380 msg="starting llama server" cmd="/usr/local/bin/ollama runner --model /usr/share/ollama/.ollama/models/blobs/sha256-170370233dd5c5415250a2ecd5c71586352850729062ccef1496385647293868 --ctx-size 8192 --batch-size 512 --n-gpu-layers 33 --mmproj /usr/share/ollama/.ollama/models/blobs/sha256-72d6f08a42f656d36b356dbe0920675899a99ce21192fd66266fb7d82ed07539 --threads 16 --parallel 4 --port 35805"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.893-05:00 level=INFO source=sched.go:450 msg="loaded runners" count=1
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.893-05:00 level=INFO source=server.go:557 msg="waiting for llama runner to start responding"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.893-05:00 level=INFO source=server.go:591 msg="waiting for server to become available" status="llm server error"
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.920-05:00 level=INFO source=runner.go:931 msg="starting go runner"
Mar 07 12:07:17 Hermes ollama[312857]: ggml_cuda_init: GGML_CUDA_FORCE_MMQ: no
Mar 07 12:07:17 Hermes ollama[312857]: ggml_cuda_init: GGML_CUDA_FORCE_CUBLAS: no
Mar 07 12:07:17 Hermes ollama[312857]: ggml_cuda_init: found 1 CUDA devices:
Mar 07 12:07:17 Hermes ollama[312857]: Device 0: NVIDIA GeForce RTX 4090, compute capability 8.9, VMM: yes
Mar 07 12:07:17 Hermes ollama[312857]: load_backend: loaded CUDA backend from /usr/local/lib/ollama/cuda_v12/libggml-cuda.so
Mar 07 12:07:17 Hermes ollama[312857]: load_backend: loaded CPU backend from /usr/local/lib/ollama/libggml-cpu-icelake.so
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.960-05:00 level=INFO source=runner.go:934 msg=system info="CPU : LLAMAFILE = 1 | CUDA : ARCHS = 500,600,610,700,750,800,860,870,890,900,1200 | USE_GRAPHS = 1 | PEER_MAX_BATCH_SIZE = 128 | CPU : SSE3 = 1 | SSSE3 = 1 | AVX = 1 | AVX2 = 1 | F16C = 1 | FMA = 1 | AVX512 = 1 | AVX512_VBMI = 1 | AVX512_VNNI = 1 | LLAMAFILE = 1 | cgo(gcc)" threads=16
Mar 07 12:07:17 Hermes ollama[312857]: time=2025-03-07T12:07:17.960-05:00 level=INFO source=runner.go:992 msg="Server listening on 127.0.0.1:35805"
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_load_from_file_impl: using device CUDA0 (NVIDIA GeForce RTX 4090) - 23050 MiB free
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: loaded meta data with 24 key-value pairs and 291 tensors from /usr/share/ollama/.ollama/models/blobs/sha256-170370233dd5c5415250a2ecd5c71586352850729062ccef1496385647293868 (version GGUF V3 (latest))
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: Dumping metadata keys/values. Note: KV overrides do not apply in this output.
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 0: general.architecture str = llama
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 1: general.name str = liuhaotian
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 2: llama.context_length u32 = 32768
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 3: llama.embedding_length u32 = 4096
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 4: llama.block_count u32 = 32
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 5: llama.feed_forward_length u32 = 14336
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 6: llama.rope.dimension_count u32 = 128
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 7: llama.attention.head_count u32 = 32
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 8: llama.attention.head_count_kv u32 = 8
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 9: llama.attention.layer_norm_rms_epsilon f32 = 0.000010
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 10: llama.rope.freq_base f32 = 1000000.000000
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 11: general.file_type u32 = 2
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 12: tokenizer.ggml.model str = llama
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 13: tokenizer.ggml.tokens arr[str,32000] = ["", "
", "", "<0x00>", "<...Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 14: tokenizer.ggml.scores arr[f32,32000] = [0.000000, 0.000000, 0.000000, 0.0000...
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 15: tokenizer.ggml.token_type arr[i32,32000] = [2, 3, 3, 6, 6, 6, 6, 6, 6, 6, 6, 6, ...
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 16: tokenizer.ggml.bos_token_id u32 = 1
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 17: tokenizer.ggml.eos_token_id u32 = 2
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 18: tokenizer.ggml.unknown_token_id u32 = 0
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 19: tokenizer.ggml.padding_token_id u32 = 0
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 20: tokenizer.ggml.add_bos_token bool = true
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 21: tokenizer.ggml.add_eos_token bool = false
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 22: tokenizer.chat_template str = {{ bos_token }}{% for message in mess...
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - kv 23: general.quantization_version u32 = 2
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - type f32: 65 tensors
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - type q4_0: 225 tensors
Mar 07 12:07:17 Hermes ollama[312857]: llama_model_loader: - type q6_K: 1 tensors
Mar 07 12:07:17 Hermes ollama[312857]: print_info: file format = GGUF V3 (latest)
Mar 07 12:07:17 Hermes ollama[312857]: print_info: file type = Q4_0
Mar 07 12:07:17 Hermes ollama[312857]: print_info: file size = 3.83 GiB (4.54 BPW)
Mar 07 12:07:18 Hermes ollama[312857]: load: special_eos_id is not in special_eog_ids - the tokenizer config may be incorrect
Mar 07 12:07:18 Hermes ollama[312857]: load: special tokens cache size = 3
Mar 07 12:07:18 Hermes ollama[312857]: load: token to piece cache size = 0.1637 MB
Mar 07 12:07:18 Hermes ollama[312857]: print_info: arch = llama
Mar 07 12:07:18 Hermes ollama[312857]: print_info: vocab_only = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_ctx_train = 32768
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_embd = 4096
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_layer = 32
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_head = 32
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_head_kv = 8
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_rot = 128
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_swa = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_embd_head_k = 128
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_embd_head_v = 128
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_gqa = 4
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_embd_k_gqa = 1024
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_embd_v_gqa = 1024
Mar 07 12:07:18 Hermes ollama[312857]: print_info: f_norm_eps = 0.0e+00
Mar 07 12:07:18 Hermes ollama[312857]: print_info: f_norm_rms_eps = 1.0e-05
Mar 07 12:07:18 Hermes ollama[312857]: print_info: f_clamp_kqv = 0.0e+00
Mar 07 12:07:18 Hermes ollama[312857]: print_info: f_max_alibi_bias = 0.0e+00
Mar 07 12:07:18 Hermes ollama[312857]: print_info: f_logit_scale = 0.0e+00
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_ff = 14336
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_expert = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_expert_used = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: causal attn = 1
Mar 07 12:07:18 Hermes ollama[312857]: print_info: pooling type = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: rope type = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: rope scaling = linear
Mar 07 12:07:18 Hermes ollama[312857]: print_info: freq_base_train = 1000000.0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: freq_scale_train = 1
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_ctx_orig_yarn = 32768
Mar 07 12:07:18 Hermes ollama[312857]: print_info: rope_finetuned = unknown
Mar 07 12:07:18 Hermes ollama[312857]: print_info: ssm_d_conv = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: ssm_d_inner = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: ssm_d_state = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: ssm_dt_rank = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: ssm_dt_b_c_rms = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: model type = 7B
Mar 07 12:07:18 Hermes ollama[312857]: print_info: model params = 7.24 B
Mar 07 12:07:18 Hermes ollama[312857]: print_info: general.name = liuhaotian
Mar 07 12:07:18 Hermes ollama[312857]: print_info: vocab type = SPM
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_vocab = 32000
Mar 07 12:07:18 Hermes ollama[312857]: print_info: n_merges = 0
Mar 07 12:07:18 Hermes ollama[312857]: print_info: BOS token = 1 '
''Mar 07 12:07:18 Hermes ollama[312857]: print_info: EOS token = 2 '
Mar 07 12:07:18 Hermes ollama[312857]: print_info: UNK token = 0 ''
Mar 07 12:07:18 Hermes ollama[312857]: print_info: PAD token = 0 ''
Mar 07 12:07:18 Hermes ollama[312857]: print_info: LF token = 13 '<0x0A>'
Mar 07 12:07:18 Hermes ollama[312857]: print_info: EOG token = 2 ''
Mar 07 12:07:18 Hermes ollama[312857]: print_info: max token length = 48
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: loading model tensors, this can take a while... (mmap = true)
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: offloading 32 repeating layers to GPU
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: offloading output layer to GPU
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: offloaded 33/33 layers to GPU
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: CUDA0 model buffer size = 3847.55 MiB
Mar 07 12:07:18 Hermes ollama[312857]: load_tensors: CPU_Mapped model buffer size = 70.31 MiB
Mar 07 12:07:18 Hermes ollama[312857]: time=2025-03-07T12:07:18.144-05:00 level=INFO source=server.go:591 msg="waiting for server to become available" status="llm server loading model"
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_seq_max = 4
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_ctx = 8192
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_ctx_per_seq = 2048
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_batch = 2048
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_ubatch = 512
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: flash_attn = 0
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: freq_base = 1000000.0
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: freq_scale = 1
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: n_ctx_per_seq (2048) < n_ctx_train (32768) -- the full capacity of the model will not be utilized
Mar 07 12:07:18 Hermes ollama[312857]: llama_kv_cache_init: kv_size = 8192, offload = 1, type_k = 'f16', type_v = 'f16', n_layer = 32, can_shift = 1
Mar 07 12:07:18 Hermes ollama[312857]: llama_kv_cache_init: CUDA0 KV buffer size = 1024.00 MiB
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: KV self size = 1024.00 MiB, K (f16): 512.00 MiB, V (f16): 512.00 MiB
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: CUDA_Host output buffer size = 0.55 MiB
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: CUDA0 compute buffer size = 560.00 MiB
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: CUDA_Host compute buffer size = 24.01 MiB
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: graph nodes = 1030
Mar 07 12:07:18 Hermes ollama[312857]: llama_init_from_model: graph splits = 2
Mar 07 12:07:18 Hermes ollama[312857]: key clip.use_silu not found in file
Mar 07 12:07:18 Hermes ollama[312857]: key clip.vision.image_grid_pinpoints not found in file
Mar 07 12:07:18 Hermes ollama[312857]: key clip.vision.feature_layer not found in file
Mar 07 12:07:18 Hermes ollama[312857]: key clip.vision.mm_patch_merge_type not found in file
Mar 07 12:07:18 Hermes ollama[312857]: key clip.vision.image_crop_resolution not found in file
Mar 07 12:07:18 Hermes ollama[312857]: time=2025-03-07T12:07:18.395-05:00 level=INFO source=server.go:596 msg="llama runner started in 0.50 seconds"
Mar 07 12:07:19 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:19 | 200 | 2.050519922s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:19 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:19 | 200 | 2.137203874s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:20 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:20 | 200 | 2.825573417s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:21 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:21 | 200 | 3.853311436s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:21 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:21 | 200 | 4.180678599s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:22 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:22 | 200 | 4.469883597s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:23 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:23 | 200 | 5.515971935s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:23 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:23 | 200 | 5.524816156s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:23 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:23 | 200 | 5.623232734s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:24 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:24 | 200 | 6.660335345s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:24 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:24 | 200 | 4.795856041s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:25 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:25 | 200 | 5.490165566s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:25 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:25 | 200 | 4.278931481s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:26 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:26 | 200 | 5.386905738s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:26 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:26 | 200 | 4.3196965s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:27 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:27 | 200 | 4.826283861s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:27 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:27 | 200 | 4.389918954s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:28 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:28 | 200 | 5.264628449s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:29 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:29 | 200 | 4.613452959s | 127.0.0.1 | POST "/api/chat"
Mar 07 12:07:29 Hermes ollama[312857]: [GIN] 2025/03/07 - 12:07:29 | 200 | 5.804187676s | 127.0.0.1 | POST "/api/chat"
@rick-github commented on GitHub (Mar 7, 2025):
OLLAMA_NUM_PARALLELis not 10, it's unset and ollama is using a default of 4 (--parallel 4in the above line).What's the output of
Perhaps turning it off and on again will help.
@EdwinMeriaux commented on GitHub (Mar 7, 2025):
I tried turning it off and on and no change the output of
systemtl cat ollama is:
emeriaux@Hermes:~
sudo systemctl start ollama emeriaux@Hermes:~systemctl cat ollama/etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/home/thalassa/emeriaux/.cargo/bin:/usr/local/sbin:/usr/local>
[Install]
WantedBy=default.target
/etc/systemd/system/ollama.service.d/override.conf
Environment="OLLAMA_NUM_PARALLEL=10"
Environment="OLLAMA_GPU_MEMORY=20GiB"
lines 1-19/19 (END)...skipping...
/etc/systemd/system/ollama.service
[Unit]
Description=Ollama Service
After=network-online.target
[Service]
ExecStart=/usr/local/bin/ollama serve
User=ollama
Group=ollama
Restart=always
RestartSec=3
Environment="PATH=/home/thalassa/emeriaux/.cargo/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/thalassa/emeriaux/.vscode/extensions/ms-python.debugpy-2025.0.0-linux-x64/bundl>
[Install]
WantedBy=default.target
/etc/systemd/system/ollama.service.d/override.conf
Environment="OLLAMA_NUM_PARALLEL=10"
Environment="OLLAMA_GPU_MEMORY=20GiB"
@rick-github commented on GitHub (Mar 7, 2025):
Put
above the
Environmentlines. Also,OLLAMA_GPU_MEMORYis not an ollama configuration variable.@EdwinMeriaux commented on GitHub (Mar 7, 2025):
Hello! Amazing that resolved the issue when I use llava!
unfortunately it doesn't change anything when I use llama3.2-vision. it only ever runs sequentially. my code is the same and I know given the 4090 I cannot run 10 parallel llama3.2 but if I run 2 the memory is not doubled even if there is still more than half of the gpu vram free:
import asyncio
import time
import ollama
parallel_num = 10 # Max concurrent requests
total_requests = 20 # Total number of requests
async def describe_image(number):
"""Asynchronous function to send a request to Ollama."""
try:
client = ollama.AsyncClient() # No async with
res = await client.chat(
model="llama3.2-vision",
#model="llava",
messages=[{'role': 'user', 'content': 'Describe Fermat's Last Theorem'}]
)
print(f"Completed request {number}")
except Exception as e:
print(f"Error on request {number}: {e}")
async def main():
start_time = time.time() # Start timing
if name == "main":
asyncio.run(main()) # Run the async function
Would you know why?
@rick-github commented on GitHub (Mar 7, 2025):
Some vision models don't support parallelism.
@EdwinMeriaux commented on GitHub (Mar 7, 2025):
okkkk! Thanks! where is that table which lists this for all models?
@rick-github commented on GitHub (Mar 7, 2025):
I created the table from a script I ran over local vision models I have. Note that llama3.2-vision will probably get parallelism eventually, but other new vision models that are added to the ollama library may not support it out of the gate.
@EdwinMeriaux commented on GitHub (Mar 7, 2025):
ok! Thanks!
On more question on this. So far I was running everything locally. Now I have ollama on a server (compute canada) I don't have access to edit the ollama.service file we edited locally with the OLLAMA_NUM_PARALLEL. Is there another way to make this change?
@rick-github commented on GitHub (Mar 7, 2025):
Not currently. Coincidentally, I just created a PR that allows setting
num_parallelvia the API or Modelfile. It's uncertain if it will be merged as the ollama team is making changes to the API. If it doesn't and the new API doesn't provide a mechanism, you would need to run another service to allow external configuration requests. It might be as simple as an ssh command, depending on the features of your cloud server.@EdwinMeriaux commented on GitHub (Mar 8, 2025):
Ok thanks!
sorry could you explain in anymore detail how I run this other service to do this?
@rick-github commented on GitHub (Mar 10, 2025):
I wrote a quick proof-of-concept below. I used docker containers because I find management easier with docker but it's not required, you can split this in to individual standalone serrvices. It also allows me to use
dockerfile_inlinestatements so that the entire thing is one file.There are three services: an ollama server, an nginx server that does API key verification and request routing, and a server that manipulates the ollama environment. The nginx server offers an extra endpoint,
/admin, that a client can call with a list of environment variables to change. For example, if the parallelism needed to be changed:You can get the current set of environment varaibles via GET:
Making a change to the ollama environment requires restarting the server so only PUT /admin if the server is not doing a completion.
There are two keys allowed, one for access to the normal ollama endpoints (
/api,/v1) and one that allows access to the/adminendpoint.If docker is not to your taste, then you could create a script in the cloud server that takes as parameters a list of variables to change. The script would modify /etc/systemd/system/ollama.service.d/override.conf and then reload the ollama server to make the changes take effect. You would run this script from a remote server using ssh. This is a bit more fincky and error prone as you have to parse the conf file and add/remove elements, and the script has to run as root so perhaps some security issues.
@EdwinMeriaux commented on GitHub (Mar 11, 2025):
Hi!
Thank you so much!
I need to check if the docker would be doable.
The script you are referring to would be a bash type script right?
@rick-github commented on GitHub (Mar 11, 2025):
Not necessarily, any programming language would do - perl, python, go, etc - it just needs follow the steps I outlined above.
@EdwinMeriaux commented on GitHub (Mar 12, 2025):
Hello!
Perfect I will try this! I need to contact the serve admin to get access to do this. I will get access then try ASAP!
Thanks!
@rick-github commented on GitHub (Mar 12, 2025):
Note that there is an intermediate form as well. You can run ollama as a service as you do now, but also run a HTTP server that supports CGI scripts. Then you can hit the webserver with a request, authenticated as required, and have it use the CGI module to modify the ollama service configuration as requested by the caller. There's lots of ways to do it, it just depends on what your comfort zone is.
@suckseed5 commented on GitHub (Mar 13, 2025):
Hello, I deployed different models on several GPUs using Docker,
modified /etc/systemd/system/ollama.service on the host,
and saw the changes in the log, but there was no concurrency. Why is this?
@rick-github commented on GitHub (Mar 13, 2025):
https://github.com/ollama/ollama/blob/main/docs/faq.md#how-does-ollama-handle-concurrent-requests
@EdwinMeriaux commented on GitHub (Mar 17, 2025):
@rick-github Thank you so much! I have ran everything properly on the server I was using. I am not entirely sure how to settup that http server just for future knowledge. would you have an example?
@rick-github commented on GitHub (Mar 17, 2025):
https://httpd.apache.org/docs/2.4/howto/cgi.html